Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
144 commits
Select commit Hold shift + click to select a range
9f4b5c6
Enable 22 migration docs (#21635)
stianst Jul 12, 2023
a397190
Fix links to quickstarts (#21639) (#21641)
stianst Jul 12, 2023
c7920ee
Switches the merging logic to using the override as the basis (#21711)
shawkins Jul 17, 2023
1c56f9e
`keycloakCRName` and `realm` are no longer marked as required in Keyc…
vmuzikar Jul 17, 2023
87a50d3
Revert emailVerified to false if email modified on force-sync non-tru…
rmartinc Jun 23, 2023
32dfad4
Various fixes for localization of the Account Console (#21735)
jonkoops Jul 17, 2023
a85d6b2
Fixed a11y violations for clients (#21736)
jonkoops Jul 17, 2023
de8887e
Re-augmentation failing on windows (#21662)
pedroigor Jul 17, 2023
5489ab8
Fix JSON syntax of translation files (#21734) (#21742)
ahus1 Jul 17, 2023
6d28c31
Check whether realm has store enabled for immediately sent events
mhajas Jul 14, 2023
558405d
Fall back to `IdentityProvider` component type if present (#21738)
jonkoops Jul 17, 2023
9057e34
Introduce delay in SessionTimeoutsTest to allow xsite replication to …
martin-kanis Jul 14, 2023
d7603f6
Do not cache a session that is already expired in listener (#21684)
wburns Jul 18, 2023
f291c48
Cleanup files that shouldn't have been committed (#21793)
ahus1 Jul 18, 2023
be4eb60
switches the workaround to JsonNode, which produces a cleaner crd (#2…
shawkins Jul 20, 2023
d655876
Adds a pod list rbac (#21850)
shawkins Jul 20, 2023
bacc114
Introduce re-try mechanism when deserializing during import for map s…
vramik Jul 20, 2023
7419dc4
Warnings about TLS properties on startup
mabartos Jul 21, 2023
7dea94b
Ensure that the flow tested to be deleted is a built in flow
rmartinc Jul 18, 2023
51a68c9
Check RDN attribute for DN membership
rmartinc Jul 18, 2023
4ddf782
Upgrade Infinispan to 14.0.13.Final (#21861)
ahus1 Jul 24, 2023
6076108
[20455] Arquillian reflection bug -> using different setter to avoid …
lhanusov Jul 19, 2023
e90047f
Increase timeout for legacy tests (#21811)
stianst Jul 19, 2023
f95091e
Removing workaround for state transfer never completes
martin-kanis Jul 21, 2023
13893cb
Update bcpkix and bcprov dependencies (#21543) (#21845)
vmuzikar Jul 26, 2023
6b83b38
Keycloak forgets ui_locales parameter when using reset password
mposolda Jul 17, 2023
0349caf
Downgrade Jansi library to prevent kcadm exception on Windows (#21986)
Pepo48 Jul 26, 2023
6161109
Upgrade to Quarkus 3.2.2.Final (#21912)
vmuzikar Jul 26, 2023
3bdf16b
Fix script tests on windows (#21942) (#21988)
mposolda Jul 27, 2023
34c941d
Profile activation for WF app server doesn't properly work for Windows
mabartos Jul 25, 2023
7530526
Add logout other sessions checkbox to TOTP, webauthn and recovery aut…
rmartinc Jul 26, 2023
aed55cd
Fixed updated links for freeipa (#22040) (#22054)
ahus1 Jul 28, 2023
23238b5
Hostname guide improvements (#22117)
Pepo48 Jul 31, 2023
29d5fc6
Fix authenticatorConfig for javascript providers
mposolda Jul 27, 2023
aa8dec5
Remove option Nerver Expires for tokens in Advanced OIDC client confi…
rmartinc Jul 28, 2023
5f533e8
Fix Operator tests on OpenShift
vmuzikar Jul 27, 2023
842b70c
Upgrade to Quarkus 3.2.3 (#22256)
vmuzikar Aug 7, 2023
ec119eb
Ignore new NodeJS redirect (#22218)
ahus1 Aug 7, 2023
6bb0ca3
Update OCP4 Social IdP example setup in the latest docs (#22293)
Pepo48 Aug 7, 2023
4cd44d7
Prevent concurrent session cleanup on different instances in the clus…
ahus1 Aug 7, 2023
d395e19
Changes to the time offset should be visible in all threads instantly…
ahus1 Aug 10, 2023
adec6c5
Fixing how e-mail attribute permissions are set for both USER_API and…
pedroigor Aug 8, 2023
159b750
Remove JUnit dependencies from the distribution (#22458)
mabartos Aug 15, 2023
132cf63
removes logging full resources to omit secret data (#22440)
shawkins Aug 15, 2023
7057042
Remove Vert.x Dev UI dependency (#22466)
mabartos Aug 15, 2023
0b18054
Upgrade to Infinispan 14.0.14 (#22485)
ahus1 Aug 16, 2023
85c99e9
Upgrade to Quarkus 3.2.4.Final (#22420)
vmuzikar Aug 17, 2023
902214f
removing vertx-uri-template as a dependency (#22502)
shawkins Aug 17, 2023
0466261
Remove Brotli dependencies from the distribution and operator (#22510)
Pepo48 Aug 17, 2023
4570718
RedirectUtils needs to use KeycloakUriBuilder with no parameter parsing
rmartinc Aug 16, 2023
531b8f1
Fix IDELauncher after removing Vert.x Dev UI dependency (#22522)
mabartos Aug 17, 2023
14c7d96
removing build time dependencies from the runtime (#22574)
shawkins Aug 21, 2023
abf27e7
removing the quarkus-minikube dependency (#22575)
shawkins Aug 21, 2023
5f43ed4
Don't render fed link w/o view-realm access. (#22397)
ssilvert Aug 21, 2023
93b0c25
Allow assign realm roles with query-users access. (#22396)
ssilvert Aug 21, 2023
52e4ae0
Allow view creds tab if view fine-grained permission (#22394)
ssilvert Aug 21, 2023
46bb5cf
Upgrade Prettier to the latest version (#22618)
jonkoops Aug 22, 2023
76ae6c9
Use Freemarker links between different guide pages (#22490)
ahus1 Aug 23, 2023
dea457f
Address Getting Started review (#22637)
stianst Aug 23, 2023
eb84fc3
LGPL license header in files incompatible with Apache v2.0 (#21612) (…
stianst Aug 23, 2023
c97aa69
now uses save from edit user (#21809) (#22648)
jonkoops Aug 23, 2023
26c6ad3
keep config if it exists (#22247) (#22650)
jonkoops Aug 23, 2023
c353f58
added alias to view (#22219) (#22649)
jonkoops Aug 23, 2023
b0099bf
fixes the details page (#21776) (#22651)
jonkoops Aug 23, 2023
3686b17
no longer use subgroup cache (#21783) (#22655)
jonkoops Aug 23, 2023
21e2592
fix for validators that don't have config (#21579) (#22653)
jonkoops Aug 23, 2023
94106ba
render components based on the annotations (#21180) (#22652)
jonkoops Aug 23, 2023
7c9525d
made added groups browsable (#21588) (#22658)
jonkoops Aug 23, 2023
ef0f8ea
lazy populate the treeview for groups (#21520) (#22656)
jonkoops Aug 23, 2023
aae4569
Remove Oracle Database JDBC driver from the Keycloak distribution (#2…
mabartos Aug 25, 2023
e94e2cd
Make base theme hidden for admin and account UIs. (#22672) (#22728)
ssilvert Aug 28, 2023
a503e95
Fix cache option defaults in help (#22708) (#22749)
vmuzikar Aug 28, 2023
61ca260
Backports #22570 (#22753)
agagancarczyk Aug 28, 2023
64ed80f
Add missing translation for theme select placeholder text (#22782)
jonkoops Aug 29, 2023
daad1aa
Provide support for determining community/product guides (#22787)
mabartos Aug 29, 2023
83e8547
Parsing response from user info rather than the access token
pedroigor Aug 22, 2023
e39b9c3
Backports #22670 (#22766)
agagancarczyk Aug 29, 2023
83000cb
Fallback to next LDAP/Kerberos provider when not able to find authent…
mposolda Aug 29, 2023
76e8b92
Add a Maven profile to remove GELF support (#22797)
mabartos Aug 29, 2023
345f93e
Upgrade to Quarkus 3.2.5.Final (#22747)
vmuzikar Aug 30, 2023
aec6e26
Use an original domain name of Kerberos Principal in UserModel attrib…
mposolda Aug 15, 2023
b9aa5ff
removes direct operator installation for the product (#22832)
shawkins Aug 30, 2023
648d122
Blank Java section in Securing Apps
andymunro Aug 30, 2023
7c96e1e
fixed eventTypes mapping issue (#22817) (#22850)
agagancarczyk Aug 31, 2023
f470b32
GH Actions -> archive surefire reports (#21913). (#21915) (#22858)
lhanusov Aug 31, 2023
643cae4
Removes the bundle generator from the runtime (#22860)
shawkins Aug 31, 2023
d190cd6
Use screenshot showing fast (#22883)
andymunro Sep 1, 2023
1e8c2be
Remove log-level property for ClassTransformingBuildStep in Quarkus (…
mabartos Sep 1, 2023
7fb9e79
Fix conditional upload of surefire output for SSSD (#22899)
ahus1 Sep 1, 2023
abf2519
Upgrade to Infinispan 14.0.15.Final (#22887) (#22896)
mhajas Sep 4, 2023
d3a07e5
Centralize user form to user representation conversion (#22925)
jonkoops Sep 4, 2023
dd5c1e9
Remove scheduled from individual workflows (#21847)
stianst Jul 21, 2023
12814a6
Update schedule-nightly.yml (#21894)
stianst Jul 24, 2023
03f606c
Update schedule-nightly.yml (#21895)
stianst Jul 24, 2023
ae0e182
Add correct translation key for temporary password reset help text (#…
jonkoops Sep 4, 2023
578af7d
Add Java Distribution IT for Windows (#21675)
pedroigor Jul 18, 2023
cb04845
Fix conditional checking for PR testing (#21947)
stianst Jul 25, 2023
ea853d7
Place Java setup in re-usable workflow file (#17541)
jonkoops Jul 26, 2023
0530968
Change concurrency for GH workflows to prevent conflicts between PRs …
stianst Jul 27, 2023
4b276d7
Refactor conditional in GH workflows (#22020)
stianst Jul 28, 2023
0052e2c
Refactor conditional for sssd testing (#22053)
stianst Jul 28, 2023
ebe0d8d
Fix conditional for sssd (#22069)
stianst Jul 28, 2023
e186d39
Add wagon http retries to all maven options (#22060)
stianst Jul 28, 2023
20327f9
Execute CI when some changes were made in scripts dir (#22065)
mabartos Jul 28, 2023
a0f3436
Run store testing conditionally for PRs (#22070)
stianst Jul 31, 2023
e6b8ae7
Execute only FIPS Unit tests, not UT of dependent modules (#22038)
mabartos Aug 2, 2023
7e0ebdd
Closes #22216. Fix conditional for ci-store and ci-sssd.
miquelsi Aug 3, 2023
6a7cd22
Fix not-reported flaky tests (#22639)
mhajas Aug 23, 2023
d6a0b90
Error message when JDBC driver is missing is not helpful (#22934)
mabartos Sep 4, 2023
bc22411
Temporarily disable WebAuthn Firefox testing (#22071)
stianst Jul 28, 2023
e9a9a28
Closes #22028. Use new "Chrome for Testing" browser and driver.
miquelsi Jun 16, 2023
cdd2dda
Partially fix #22251. Disable Chrome for testing.
miquelsi Aug 4, 2023
53b3c8b
Allow archive surefire reports for release branches also when test su…
lhanusov Sep 5, 2023
c494c60
Upgrade to Infinispan 14.0.16 (#22975)
ahus1 Sep 5, 2023
915e5f8
Bump github/codeql-action from 2.20.2 to 2.20.4 (#21722)
dependabot[bot] Jul 17, 2023
4727fcf
Bump github/codeql-action from 2.20.4 to 2.21.0 (#21833)
dependabot[bot] Jul 20, 2023
d4cca80
Bump github/codeql-action from 2.21.0 to 2.21.1 (#22015)
dependabot[bot] Jul 27, 2023
037bee3
Bump github/codeql-action from 2.21.1 to 2.21.2
dependabot[bot] Jul 31, 2023
f4e5a4e
Bump cypress-io/github-action from 5 to 6 (#22595)
dependabot[bot] Aug 22, 2023
b873456
Bump github/codeql-action from 2.21.2 to 2.21.4 (#22444)
dependabot[bot] Aug 22, 2023
2cf2b65
Bump github/codeql-action from 2.21.4 to 2.21.5 (#22773)
dependabot[bot] Aug 29, 2023
92754ce
Status check should fail if "conditional" step fails (#22972)
stianst Sep 6, 2023
7165c6b
Execute store tests if relevant tests have been updated
stianst Sep 6, 2023
61fd375
Update .github/actions/conditional/conditional.sh
stianst Sep 6, 2023
2466e62
Disable ZeroDowntimeTest
vramik Jul 19, 2023
1825ddb
Clean LDAP between test method executions
mhajas Aug 22, 2023
baab346
Remove org.jetbrains:annotations:jar from server distribution. (#23015)
pskopek Sep 6, 2023
e88c0aa
Decoupling legacy and dynamic user profiles and exposing metadata fro…
pedroigor Aug 29, 2023
ef9726a
SAML Adapter fix for EAP8 and WF29
pskopek Aug 29, 2023
4ff16ea
Ensure the SAML Galleon feature pack generates an appropriate license…
fjuma Aug 22, 2023
caafd65
Some more fixes for issue22623
jfdenise Aug 24, 2023
4481b1b
Update the Keycloak SAML adapter subsystem to no longer use the Attri…
fjuma Aug 21, 2023
2113d62
Tidy up SAML Adapter Galleon Feature Pack build
pskopek Aug 30, 2023
e879367
Set distinct wildfly-common versions for Quarkus and WildFly based mo…
pskopek Sep 5, 2023
4f2115c
Add a new identity provider for LinkedIn based on OIDC
rmartinc Sep 4, 2023
2f2706a
Remove MS SQL JDBC driver from the Keycloak product (#23060)
ahus1 Sep 8, 2023
47b97b9
Registration flow fixed (#23064)
mposolda Sep 8, 2023
f52af8d
Add old LinkedIn provider to the deprecated profile
rmartinc Sep 8, 2023
1d15f1e
Quarkus IT that use Oracle DB don't work with -Dproduct (#23088)
mabartos Sep 8, 2023
1743251
Upgrade to Infinispan 14.0.17 (#23099)
mhajas Sep 8, 2023
38522e4
Attributes without a value set are not rendered in the account consol…
pedroigor Sep 8, 2023
ed339de
Broker claim mapper not recognizing claims from user info endpoint
pedroigor Sep 6, 2023
ba58b51
Fix failure in identity_providers_test.spec.ts after old LinkedId pro…
stianst Sep 11, 2023
d15f9c7
Fix lint errorin identity_providers_test.spec.ts
stianst Sep 11, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
46 changes: 46 additions & 0 deletions .github/actions/archive-surefire-reports/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Archive Surefire reports
description: It will upload and archive surefire reports per particular test run.
inputs:
job-id:
description: 'Id of the particular job run.'
required: true
release-branches:
description: 'List of all related release branches (in JSON format)'
required: false
default: '["refs/heads/release/22.0"]'
keep-days:
description: 'For how many days to store the particular artifact.'
required: false
default: 1

runs:
using: composite
steps:
- id: find-surefire-reports-linux
name: Find Surefire reports directories
if: runner.os == 'Linux'
shell: bash
run: |
echo "dirs<<EOF" >> $GITHUB_OUTPUT
echo "$(find ~+ -type d -not -empty -name surefire-reports*)" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT

- id: find-surefire-reports-win
name: Find Surefire reports directories
if: runner.os == 'Windows'
shell: bash
run: |
echo "dirs<<EOF" >> $GITHUB_OUTPUT
echo "$(find ~+ -type d -not -empty -name surefire-reports* | sed 's@/d@D:@')" >> $GITHUB_OUTPUT
echo "EOF" >> $GITHUB_OUTPUT

- id: upload-surefire-linux
name: Upload Surefire reports
if: (!cancelled() && contains(fromJSON(inputs.release-branches), github.ref) && contains(fromJSON('["push", "workflow_dispatch"]'), github.event_name))
uses: actions/upload-artifact@v3
with:
name: surefire-${{ inputs.job-id }}
path: |
${{ steps.find-surefire-reports-linux.outputs.dirs }}
${{ steps.find-surefire-reports-win.outputs.dirs }}
retention-days: ${{ inputs.keep-days }}
17 changes: 3 additions & 14 deletions .github/actions/build-keycloak/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,29 +5,18 @@ inputs:
upload-m2-repo:
description: Upload Maven repository for org.keycloak artifacts
required: false
default: true
default: "true"
upload-dist:
description: Upload distribution
required: false
default: false
jdk-dist:
description: JDK distribution
required: false
default: temurin
jdk-version:
description: JDK version
required: false
default: 17
default: "false"

runs:
using: composite
steps:
- id: setup-java
name: Setup Java
uses: actions/setup-java@v3
with:
distribution: ${{ inputs.jdk-dist }}
java-version: ${{ inputs.jdk-version }}
uses: ./.github/actions/java-setup

- id: maven-cache
name: Maven cache
Expand Down
34 changes: 0 additions & 34 deletions .github/actions/checks-job-pass/action.yml

This file was deleted.

16 changes: 0 additions & 16 deletions .github/actions/checks-success/action.yml

This file was deleted.

15 changes: 14 additions & 1 deletion .github/actions/conditional/action.yml
Original file line number Diff line number Diff line change
@@ -1,10 +1,21 @@
name: Changed Files
description: Checks changes against target branch

inputs:
token:
description: GitHub Token
required: true

outputs:
ci:
description: Should "ci.yml" execute
value: ${{ steps.changes.outputs.ci }}
ci-store:
description: Should "ci.yml" execute
value: ${{ steps.changes.outputs.ci-store }}
ci-sssd:
description: Should "ci.yml" execute
value: ${{ steps.changes.outputs.ci-sssd }}
operator:
description: Should "operator-ci.yml" execute
value: ${{ steps.changes.outputs.operator }}
Expand Down Expand Up @@ -33,4 +44,6 @@ runs:
- id: changes
name: Find changes
shell: bash
run: .github/actions/conditional/conditional.sh origin ${{ github.base_ref }}
run: .github/actions/conditional/conditional.sh ${{ github.repository }} ${{ github.ref }}
env:
GITHUB_TOKEN: ${{ inputs.token }}
43 changes: 19 additions & 24 deletions .github/actions/conditional/conditional.sh
Original file line number Diff line number Diff line change
@@ -1,27 +1,22 @@
#!/bin/bash -e

REMOTE="$1"
BASE_REF="$2"

REPOSITORY="$1"
REF="$2"
CONDITIONS_FILE=".github/actions/conditional/conditions"

[ "$BASE_REF" != "" ] && IS_PR=true || IS_PR=false
[ "$GITHUB_OUTPUT" != "" ] && IS_GITHUB_ACTIONS=true || IS_GITHUB_ACTIONS=false
if [[ "$REF" =~ refs/pull/([0-9]+)/merge ]]; then
PR=$(echo $REF | cut -f 3 -d '/')
IS_PR=true
else
IS_PR=false
fi

if [ "$IS_PR" == true ]; then
# Fetch remote if running on GitHub Actions
if [ "$IS_GITHUB_ACTIONS" == true ]; then
echo "========================================================================================"
echo "Fetching '$BASE_REF' in '$(git remote get-url "$REMOTE")'"
echo "--------------------------------------------------------------------------------"
git fetch --depth 1 "$REMOTE" "$BASE_REF"
fi

# Get list of changes files
echo "========================================================================================"
echo "Changes compared to '$BASE_REF' in '$(git remote get-url "$REMOTE")'"
echo "Changes in PR: $PR"
echo "----------------------------------------------------------------------------------------"
CHANGED_FILES=$(git diff "$REMOTE/$BASE_REF" --name-only)

CHANGED_FILES=$(gh api -X GET --paginate repos/$REPOSITORY/pulls/$PR/files --jq .[].filename)
echo "$CHANGED_FILES"
fi

Expand All @@ -43,12 +38,12 @@ for C in "${CONDITIONS[@]}"; do
if [ "$IS_PR" == true ]; then
PATTERN="${CONDITION[0]}"

if [[ "$PATTERN" =~ testsuite::* ]]; then
PATTERN=$(cat testsuite/integration-arquillian/tests/base/testsuites/database-suite | grep -v -e '^[[:space:]]*$' | sed -z 's/\n$//g' | sed -z 's/\n/|/g' | sed 's/\./\//g' | sed 's/\*\*/*/g')
fi

# Convert pattern to regex
REGEX="$PATTERN"
#REGEX=$(echo "$PATTERN" | sed 's|\.|\\.|g' | sed 's|/$|/.*|g' | sed 's|^*|.*|g')

# Escape '/' characters
REGEX=$(echo "$REGEX" | sed 's|\/|\\/|g')

# Escape '.' to make it match the '.' character only
REGEX=$(echo "$REGEX" | sed 's|\.|\\.|g')
Expand All @@ -60,8 +55,8 @@ for C in "${CONDITIONS[@]}"; do
REGEX=$(echo "$REGEX" | sed 's|/$|/.*|g')

# If no directory separators allow any directory structure before
if ( echo "$REGEX" | grep -v -E '\/' &>/dev/null ); then
REGEX="(.*\/)?$REGEX"
if ( echo "$REGEX" | grep -v -E '/' &>/dev/null ); then
REGEX="(.*/)?$REGEX"
fi

# Check if changed files matches regex
Expand Down Expand Up @@ -98,7 +93,7 @@ do
echo "$JOB=${JOB_CONDITIONS[$JOB]}"

# Set output for GitHub job
if [ "$IS_GITHUB_ACTIONS" == true ]; then
echo "$JOB=${JOB_CONDITIONS[$JOB]}" >> $GITHUB_OUTPUT
if [ "$GITHUB_OUTPUT" != "" ]; then
echo "$JOB=${JOB_CONDITIONS[$JOB]}" >> $GITHUB_OUTPUT
fi
done
13 changes: 9 additions & 4 deletions .github/actions/conditional/conditions
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,10 @@
#
# To test a pattern run '.github/actions/conditional/conditional.sh <remote name> <branch>'

.github/actions/ ci operator js codeql-java codeql-themes guides documentation sssd
.github/actions/ ci ci-store ci-sssd operator js codeql-java codeql-themes guides documentation
.github/scripts/ ci ci-sssd

.github/workflows/ci.yml ci sssd
.github/workflows/ci.yml ci ci-store ci-sssd
.github/workflows/operator-ci.yml operator
.github/workflows/js-ci.yml js
.github/workflows/codeql-analysis.yml codeql-java codeql-themes
Expand All @@ -13,8 +14,10 @@

*/src/main/ ci operator
*/src/test/ ci operator
pom.xml ci operator
federation/sssd/ ci sssd
pom.xml ci ci-store operator
federation/sssd/ ci ci-sssd

model/ ci-store

docs/guides/ guides
docs/documentation/ documentation
Expand All @@ -23,3 +26,5 @@ js/ js

*.java codeql-java
themes/ codeql-themes

testsuite::database-suite ci-store
38 changes: 38 additions & 0 deletions .github/actions/install-chrome/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Install Chrome browser and driver for Testing
description: Download and install the latest available Chrome for Testing and Chromedriver

runs:
using: composite
steps:
- id: cache-chrome-browser
name: Chrome browser cache
uses: actions/cache@v3
with:
path: ./chrome
key: chrome

- id: cache-chromedriver
name: Chrome driver cache
uses: actions/cache@v3
with:
path: ./chromedriver
key: chromedriver

- id: install-chrome
name: Install Chrome
shell: bash
run: |
sudo apt-get remove google-chrome-stable
npx @puppeteer/browsers install chrome
npx @puppeteer/browsers install chromedriver
# In case there's more than one version of each package, let's use only the latest
LATEST_CHROME=$(ls -td $PWD/chrome/*/ | head -1)
LATEST_CHROMEDRIVER=$(ls -td $PWD/chromedriver/*/ | head -1)
sudo ln -s -f "${LATEST_CHROME}chrome-linux64/chrome" /usr/bin/google-chrome-stable
sudo cp -u "${LATEST_CHROMEDRIVER}chromedriver-linux64/chromedriver" $CHROMEWEBDRIVER/
# Remove any older version of browser or driver so we don't keep it in the cache
cd chrome
rm -R $(ls -lt | grep '^d' | tail -1 | tr " " "\n" | tail -1)
cd ../chromedriver
rm -R $(ls -lt | grep '^d' | tail -1 | tr " " "\n" | tail -1)
cd ..
10 changes: 7 additions & 3 deletions .github/actions/integration-test-setup/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,14 @@ inputs:
jdk-version:
description: JDK version
required: false
default: 17
default: "17"

runs:
using: composite
steps:
- id: setup-java
name: Setup Java
uses: actions/setup-java@v3
uses: ./.github/actions/java-setup
with:
distribution: ${{ inputs.jdk-dist }}
java-version: ${{ inputs.jdk-version }}
Expand All @@ -38,4 +38,8 @@ runs:
- id: extract-maven-artifacts
name: Extract Keycloak Maven artifacts
shell: bash
run: tar -C ~/ --use-compress-program unzstd -xf m2-keycloak.tzts
run: |
if [ "$RUNNER_OS" == "Windows" ]; then
choco install zstandard
fi
tar -C ~/ --use-compress-program="zstd -d" -xf m2-keycloak.tzts
22 changes: 22 additions & 0 deletions .github/actions/java-setup/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
name: Setup Java
description: Sets up Java.

inputs:
distribution:
description: Java distribution.
required: false
default: temurin
java-version:
description: The Java version that is going to be set up.
required: false
default: "17"

runs:
using: composite
steps:
- id: setup-java
name: Setup Java
uses: actions/setup-java@v3
with:
distribution: ${{ inputs.distribution }}
java-version: ${{ inputs.java-version }}
27 changes: 27 additions & 0 deletions .github/actions/status-check/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Check required jobs
description: Check if all required jobs where successful or skipped

inputs:
jobs:
description: Jobs (value must be toJSON(needs))
required: true

runs:
using: "composite"
steps:
- id: check-jobs
name: Check jobs
shell: bash
run: |
JOBS='${{ inputs.jobs }}'

echo "Job status:"
echo $JOBS | jq -r 'to_entries[] | " - \(.key): \(.value.result)"'

for i in $(echo $JOBS | jq -r 'to_entries[] | .value.result'); do
if [ "$i" != "success" ] && [ "$i" != "skipped" ]; then
echo ""
echo "Status check not okay!"
exit 1
fi
done
Loading