Bump rollup from 4.54.0 to 4.59.0 in /ui #1848
Workflow file for this run
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
| name: Adopt Tapir CI | |
| on: | |
| pull_request: | |
| push: | |
| branches: | |
| - main | |
| paths-ignore: | |
| - "helm/**" | |
| release: | |
| types: | |
| - released | |
| permissions: | |
| contents: write # release-drafter, auto-merge requirement | |
| pull-requests: write # labeler, auto-merge requirement | |
| jobs: | |
| verify_unit_tests_lint: | |
| runs-on: ubuntu-22.04 | |
| strategy: | |
| fail-fast: false | |
| steps: | |
| - name: Check-out repository | |
| id: repo-checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 17 with sbt cache | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'temurin' | |
| java-version: 17 | |
| cache: 'sbt' | |
| - name: Check formatting | |
| id: check-formatting | |
| run: sbt scalafmtCheckAll | |
| - name: Run unit tests & lint | |
| id: run-unit-tests | |
| run: sbt test | |
| verify_integration: | |
| runs-on: ubuntu-22.04 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| scala: [ "Scala2", "Scala3" ] | |
| json: [ "No", "Circe", "UPickle", "Jsoniter", "ZIOJson" ] | |
| stack: [ "OxStack", "FutureStack", "IOStack", "ZIOStack" ] | |
| exclude: | |
| - scala: "Scala2" | |
| stack: "OxStack" | |
| steps: | |
| - name: Check-out repository | |
| id: repo-checkout | |
| uses: actions/checkout@v4 | |
| - name: Cache scala-cli | |
| uses: coursier/cache-action@bebeeb0e6f48ebad66d3783946588ecf43114433 # v7, specifically v7.0.0 | |
| - name: Set up scala-cli | |
| uses: VirtusLab/scala-cli-setup@77834b5926f3eb70869d8009530c65585f7a039b # v1, specifically v1.9.1 | |
| with: | |
| jvm: ${{ matrix.stack == 'OxStack' && 'temurin:21' || 'temurin:17' }} | |
| - name: Run integration tests for ${{ matrix.stack }}, ${{ matrix.scala }} with ${{ matrix.json }} JSON support | |
| run: SCALA=${{ matrix.scala }} JSON=${{ matrix.json }} STACK=${{ matrix.stack }} IT_TESTS_THREADS_NO=1 sbt 'ItTest / test' | |
| verify_docker_image_build: | |
| if: github.event_name == 'pull_request' && github.ref != 'refs/heads/main' | |
| needs: [ verify_unit_tests_lint, verify_integration ] | |
| runs-on: ubuntu-22.04 | |
| strategy: | |
| fail-fast: false | |
| steps: | |
| - name: Check-out repository | |
| id: repo-checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 21 with sbt cache | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'temurin' | |
| java-version: 21 | |
| cache: 'sbt' | |
| - name: Build docker image locally | |
| id: build-docker-image-locally | |
| run: sbt -Dsbt.task.timings=true docker:publishLocal | |
| deploy: | |
| if: github.ref == 'refs/heads/main' && github.repository == 'softwaremill/adopt-tapir' | |
| needs: [ verify_unit_tests_lint, verify_integration ] | |
| runs-on: ubuntu-22.04 | |
| steps: | |
| - name: Check-out repository | |
| id: repo-checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 21 | |
| id: jdk-setup | |
| uses: actions/setup-java@v4 | |
| with: | |
| distribution: 'temurin' | |
| java-version: 21 | |
| cache: 'sbt' | |
| - name: Login to DockerHub | |
| uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3, specifically v3.6.0 | |
| with: | |
| username: ${{ secrets.DOCKERHUB_USERNAME }} | |
| password: ${{ secrets.DOCKERHUB_TOKEN }} | |
| - name: Publish docker image | |
| run: sbt -Dsbt.task.timings=true backend/docker:publish | |
| label: | |
| # only for PRs by softwaremill-ci | |
| if: github.event.pull_request.user.login == 'softwaremill-ci' | |
| uses: softwaremill/github-actions-workflows/.github/workflows/label.yml@main | |
| auto-merge: | |
| # only for PRs by softwaremill-ci (Scala Steward) | |
| if: github.event.pull_request.user.login == 'softwaremill-ci' | |
| needs: [ verify_unit_tests_lint, verify_integration, verify_docker_image_build, label ] | |
| uses: softwaremill/github-actions-workflows/.github/workflows/auto-merge.yml@main | |
| # `secrets: inherit` (as used in e.g. tapir) won't work here. The reusable workflow | |
| # expects an optional `github-token` secret and falls back to GITHUB_TOKEN when not | |
| # provided. With `secrets: inherit`, `secrets.github-token` resolves to empty (no repo | |
| # secret has that name), falling back to GITHUB_TOKEN — which doesn't trigger downstream | |
| # workflows like deploy (GitHub's anti-recursion policy). The explicit mapping bridges | |
| # the repo secret name (SOFTWAREMILL_CI_PR_TOKEN) to the workflow's expected input. | |
| secrets: | |
| github-token: ${{ secrets.SOFTWAREMILL_CI_PR_TOKEN }} | |
| auto-merge-dependabot: | |
| # Dependabot applies the 'automerge' label at PR creation (via dependabot.yml), | |
| # so unlike softwaremill-ci PRs, there is no need to wait for the label job. | |
| if: github.event.pull_request.user.login == 'dependabot[bot]' | |
| needs: [ verify_unit_tests_lint, verify_integration, verify_docker_image_build ] | |
| uses: softwaremill/github-actions-workflows/.github/workflows/auto-merge.yml@main | |
| # See auto-merge job above for why explicit secret mapping is needed. | |
| secrets: | |
| github-token: ${{ secrets.SOFTWAREMILL_CI_PR_TOKEN }} |