From 1931eaeed4b4b41204287f97e1950f590f741095 Mon Sep 17 00:00:00 2001 From: PJ Fanning Date: Wed, 4 Dec 2024 10:53:41 +0100 Subject: [PATCH] try to use sbt-github-actions again --- .github/workflows/ci.yml | 82 +++++++++++++++++++++++++++++++++++++--- build.sbt | 13 +++---- 2 files changed, 81 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 58a8f679..29201c07 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,10 +1,17 @@ -name: Continuous Integration (v3 - master) +# This file was automatically generated by sbt-github-actions using the +# githubWorkflowGenerate task. You should add and commit this file to +# your git repository. It goes without saying that you shouldn't edit +# this file by hand! Instead, if you wish to make changes, you should +# change your sbt build configuration to revise the workflow description +# to meet your needs, then regenerate this file. + +name: Continuous Integration on: pull_request: - branches: ['master'] + branches: [master] push: - branches: ['master'] + branches: [master] env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -40,16 +47,30 @@ jobs: java-version: 21 cache: sbt - - run: sbt -J-Xmx2G '++ ${{ matrix.scala }}' test + - name: Check that workflows are up to date + run: sbt -J-Xmx2G '++ ${{ matrix.scala }}' githubWorkflowCheck + + - name: Build project + run: sbt -J-Xmx2G '++ ${{ matrix.scala }}' test + + - name: Compress target directories + run: tar cf targets.tar target project/target + + - name: Upload target directories + uses: actions/upload-artifact@v4 + with: + name: target-${{ matrix.os }}-${{ matrix.scala }}-${{ matrix.java }} + path: targets.tar publish: name: Publish Artifacts needs: [build] - if: github.event_name != 'pull_request' && github.ref == 'refs/heads/master' + if: github.event_name != 'pull_request' && (github.ref == 'refs/heads/master') strategy: matrix: os: [ubuntu-latest] scala: [2.13.15] + java: [zulu@17] runs-on: ${{ matrix.os }} steps: - name: Checkout current branch (full) @@ -58,16 +79,65 @@ jobs: fetch-depth: 0 - name: Setup Java (zulu@17) + if: matrix.java == 'zulu@17' uses: actions/setup-java@v4 with: distribution: zulu java-version: 17 cache: sbt + - name: Setup Java (zulu@21) + if: matrix.java == 'zulu@21' + uses: actions/setup-java@v4 + with: + distribution: zulu + java-version: 21 + cache: sbt + + - name: Download target directories (2.11.12) + uses: actions/download-artifact@v4 + with: + name: target-${{ matrix.os }}-2.11.12-${{ matrix.java }} + + - name: Inflate target directories (2.11.12) + run: | + tar xf targets.tar + rm targets.tar + + - name: Download target directories (2.12.20) + uses: actions/download-artifact@v4 + with: + name: target-${{ matrix.os }}-2.12.20-${{ matrix.java }} + + - name: Inflate target directories (2.12.20) + run: | + tar xf targets.tar + rm targets.tar + + - name: Download target directories (2.13.15) + uses: actions/download-artifact@v4 + with: + name: target-${{ matrix.os }}-2.13.15-${{ matrix.java }} + + - name: Inflate target directories (2.13.15) + run: | + tar xf targets.tar + rm targets.tar + + - name: Download target directories (3.3.4) + uses: actions/download-artifact@v4 + with: + name: target-${{ matrix.os }}-3.3.4-${{ matrix.java }} + + - name: Inflate target directories (3.3.4) + run: | + tar xf targets.tar + rm targets.tar + - env: CI_SNAPSHOT_RELEASE: +publishSigned PGP_PASSPHRASE: ${{ secrets.PGP_PASSPHRASE }} SONATYPE_PASSWORD: ${{ secrets.CI_DEPLOY_PASSWORD3 }} SONATYPE_USERNAME: ${{ secrets.CI_DEPLOY_USERNAME3 }} PGP_SECRET: ${{ secrets.PGP_SECRET }} - run: sbt -J-Xmx2G ci-release \ No newline at end of file + run: sbt -J-Xmx2G ci-release diff --git a/build.sbt b/build.sbt index 6ecef1e7..55972edd 100644 --- a/build.sbt +++ b/build.sbt @@ -141,13 +141,10 @@ Compile / resourceGenerators += Def.task { Test / parallelExecution := false ThisBuild / githubWorkflowSbtCommand := "sbt -J-Xmx2G" -ThisBuild / githubWorkflowJavaVersions := Seq(JavaSpec(Zulu, "8"), JavaSpec(Zulu, "11"), - JavaSpec(Zulu, "17"), JavaSpec(Zulu, "21")) -ThisBuild / githubWorkflowTargetTags ++= Seq("v*") +ThisBuild / githubWorkflowJavaVersions := Seq(JavaSpec(Zulu, "17"), JavaSpec(Zulu, "21")) +ThisBuild / githubWorkflowTargetBranches := Seq("master") ThisBuild / githubWorkflowPublishTargetBranches := Seq( - RefPredicate.Equals(Ref.Branch("master")), - RefPredicate.StartsWith(Ref.Branch("2.")), - RefPredicate.StartsWith(Ref.Tag("v")) + RefPredicate.Equals(Ref.Branch("master")) ) ThisBuild / githubWorkflowPublish := Seq( @@ -156,8 +153,8 @@ ThisBuild / githubWorkflowPublish := Seq( env = Map( "PGP_PASSPHRASE" -> "${{ secrets.PGP_PASSPHRASE }}", "PGP_SECRET" -> "${{ secrets.PGP_SECRET }}", - "SONATYPE_PASSWORD" -> "${{ secrets.CI_S01_DEPLOY_PASSWORD }}", - "SONATYPE_USERNAME" -> "${{ secrets.CI_S01_DEPLOY_USERNAME }}", + "SONATYPE_PASSWORD" -> "${{ secrets.CI_DEPLOY_PASSWORD3 }}", + "SONATYPE_USERNAME" -> "${{ secrets.CI_DEPLOY_USERNAME3 }}", "CI_SNAPSHOT_RELEASE" -> "+publishSigned" ) )