Upgrade Spring 6.2.12 -> 7.0.0 #1474
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # Runs integration tests against the project. | |
| # | |
| # The tests run in the following scenrios: | |
| # - Any time code is pushed to the default branch. | |
| # - When a user leaves a pull request comment containing the string | |
| # `/integration-test`. | |
| # | |
| # XXX: Review whether the build matrix should also vary JDK or OS versions. | |
| # XXX: Have the integration test scripts select the JDK version to use, rather | |
| # than having this workflow set the same `JAVA_HOME` override for all. | |
| # XXX: Support `/integration-test [name...]` comment syntax to specify the | |
| # subset of integration tests to run. | |
| # See this example of a dynamic build matrix: | |
| # https://docs.github.com/en/actions/learn-github-actions/expressions#example-returning-a-json-object | |
| name: Integration tests | |
| on: | |
| issue_comment: | |
| types: [ created ] | |
| push: | |
| branches: [ master ] | |
| permissions: | |
| contents: read | |
| env: | |
| MAVEN_ARGS: --batch-mode -Dstyle.color=always -T1C | |
| jobs: | |
| run-integration-tests: | |
| name: Integration test | |
| if: | | |
| !github.event.issue.pull_request || contains(github.event.comment.body, '/integration-test') | |
| runs-on: ubuntu-24.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| integration-test: | |
| - checkstyle | |
| - metrics | |
| - prometheus-java-client | |
| steps: | |
| - name: Install Harden-Runner | |
| uses: step-security/harden-runner@95d9a5deda9de15063e7595e9719c11c38c90ae2 # v2.13.2 | |
| with: | |
| # We can't use `disable-sudo-and-containers` here, as some | |
| # integration test projects have unit tests that start Docker | |
| # containers. | |
| disable-sudo: true | |
| egress-policy: block | |
| # XXX: After updating the validation build flags in | |
| # `integration-tests/prometheus-java-client.sh`, review whether the | |
| # Docker domains specified here can be dropped. | |
| allowed-endpoints: > | |
| api.adoptium.net:443 | |
| auth.docker.io:443 | |
| checkstyle.org:443 | |
| github.com:443 | |
| hosted-compute-watchdog-prod-*.githubapp.com:443 | |
| objects.githubusercontent.com:443 | |
| oss.sonatype.org:443 | |
| production.cloudflare.docker.com:443 | |
| raw.githubusercontent.com:443 | |
| registry-1.docker.io:443 | |
| release-assets.githubusercontent.com:443 | |
| repo.maven.apache.org:443 | |
| repository.sonatype.org:443 | |
| - name: Check out code and set up JDK and Maven | |
| uses: s4u/setup-maven-action@6c4e9964d4ecb8f1026310cd8618791fd51a8016 # v1.19.0 | |
| with: | |
| checkout-ref: ${{ github.event.issue.pull_request && format('refs/pull/{0}/head', github.event.issue.number) || github.ref }} | |
| java-version: | | |
| 21.0.8 | |
| 25 | |
| java-distribution: temurin | |
| maven-version: 3.9.11 | |
| - name: Install project to local Maven repository | |
| run: mvn install -DskipTests -Dverification.skip | |
| - name: Run integration test | |
| run: xvfb-run "./integration-tests/${{ matrix.integration-test }}.sh" "${{ runner.temp }}/artifacts" | |
| env: | |
| JAVA_HOME: "${{ env.JAVA_HOME_21_X64 }}" | |
| - name: Upload artifacts on failure | |
| if: ${{ failure() }} | |
| uses: actions/upload-artifact@330a01c490aca151604b8cf639adc76d48f6c5d4 # v5.0.0 | |
| with: | |
| name: "integration-test-${{ matrix.integration-test }}" | |
| path: "${{ runner.temp }}/artifacts" | |
| - name: Remove installed project artifacts | |
| run: mvn dependency:purge-local-repository -DmanualInclude='${project.groupId}' -DresolutionFuzziness=groupId |