|  |  | 
 |  |  | on: | 
 |  |  |   pull_request: | 
 |  |  |   workflow_call: | 
 |  |  |     outputs: | 
 |  |  |       artifact_id: | 
 |  |  |         value: ${{ jobs.build.outputs.artifact_id }} | 
 |  |  |       keycloak_version: | 
 |  |  |         value: ${{ jobs.build.outputs.keycloak_version }} | 
 |  |  |       project_name: | 
 |  |  |         value: ${{ jobs.build.outputs.project_name }} | 
 |  |  |       project_version: | 
 |  |  |         value: ${{ jobs.build.outputs.project_version }} | 
 |  |  |  | 
 |  |  | name: Test | 
 |  |  |  | 
 |  |  | permissions: {} | 
 |  |  |  | 
 |  |  | jobs: | 
 |  |  |   build: | 
 |  |  | 
 |  |  |     steps: | 
 |  |  |       - id: checkout | 
 |  |  |         name: Checkout code | 
 |  |  |         uses: actions/checkout@v3 | 
 |  |  |         uses: actions/checkout@v4 | 
 |  |  |  | 
 |  |  |       - id: java | 
 |  |  |         name: Install Java and Maven | 
 |  |  |         uses: actions/setup-java@v3 | 
 |  |  |         uses: actions/setup-java@v4 | 
 |  |  |         with: | 
 |  |  |           distribution: zulu | 
 |  |  |           java-version: 11 | 
 |  |  |           java-version: 17 | 
 |  |  |  | 
 |  |  |       - id: vars | 
 |  |  |         name: Get project variables | 
 |  |  |         run: | | 
 |  |  |           echo -n "::set-output name=keycloakVersion::" | 
 |  |  |           mvn -q help:evaluate -Dexpression=keycloak.version -DforceStdout 2> /dev/null | grep -E '^[0-9a-zA-Z.-]+$' | 
 |  |  |           echo -n "::set-output name=artifactId::" | 
 |  |  |           mvn -q help:evaluate -Dexpression=project.artifactId -DforceStdout 2> /dev/null | grep -E '^[0-9a-zA-Z.-]+$' | 
 |  |  |           echo -n "::set-output name=projectName::" | 
 |  |  |           mvn -q help:evaluate -Dexpression=project.name -DforceStdout 2> /dev/null | grep -E '^[0-9a-zA-Z :,.-]+$' | 
 |  |  |           echo -n "::set-output name=projectVersion::" | 
 |  |  |           mvn -q help:evaluate -Dexpression=project.version -DforceStdout 2> /dev/null | grep -E '^[0-9a-zA-Z.-]+$' | 
 |  |  |           echo -n "keycloakVersion=" >> $GITHUB_OUTPUT | 
 |  |  |           mvn -q help:evaluate -Dexpression=keycloak.version -DforceStdout 2> /dev/null | grep -E '^[0-9a-zA-Z.-]+$' >> $GITHUB_OUTPUT | 
 |  |  |           echo -n "artifactId=" >> $GITHUB_OUTPUT | 
 |  |  |           mvn -q help:evaluate -Dexpression=project.artifactId -DforceStdout 2> /dev/null | grep -E '^[0-9a-zA-Z.-]+$' >> $GITHUB_OUTPUT | 
 |  |  |           echo -n "projectName=" >> $GITHUB_OUTPUT | 
 |  |  |           mvn -q help:evaluate -Dexpression=project.name -DforceStdout 2> /dev/null | grep -E '^[0-9a-zA-Z :,.-]+$' >> $GITHUB_OUTPUT | 
 |  |  |           echo -n "projectVersion=" >> $GITHUB_OUTPUT | 
 |  |  |           mvn -q help:evaluate -Dexpression=project.version -DforceStdout 2> /dev/null | grep -E '^[0-9a-zA-Z.-]+$' >> $GITHUB_OUTPUT | 
 |  |  |  | 
 |  |  |       - name: Build project | 
 |  |  |         run: | | 
 |  |  |           mvn -B test package | 
 |  |  |  | 
 |  |  |       - name: Upload artifact | 
 |  |  |         uses: actions/upload-artifact@v3 | 
 |  |  |         uses: actions/upload-artifact@v4 | 
 |  |  |         with: | 
 |  |  |           name: jar | 
 |  |  |           path: target/${{ steps.vars.outputs.artifactId }}-${{ steps.vars.outputs.projectVersion }}.jar | 
 |  |  | 
 |  |  |     steps: | 
 |  |  |       - id: checkout | 
 |  |  |         name: Checkout code | 
 |  |  |         uses: actions/checkout@v2 | 
 |  |  |         uses: actions/checkout@v4 | 
 |  |  |  | 
 |  |  |       - id: download_artifact | 
 |  |  |         name: Download artifact | 
 |  |  |         uses: actions/download-artifact@v3 | 
 |  |  |         uses: actions/download-artifact@v4 | 
 |  |  |         with: | 
 |  |  |           name: jar | 
 |  |  |  |