From a600a95bb97c248a7211df5497e113337b478fa0 Mon Sep 17 00:00:00 2001 From: Jack Koenig Date: Thu, 17 Dec 2020 14:22:39 -0800 Subject: Automate publishing of SNAPSHOTS with sbt-ci-release (#1706) --- .github/workflows/test.yml | 38 ++++++++++++++++++++++++++++++++++++-- build.sbt | 6 ------ project/plugins.sbt | 2 ++ 3 files changed, 38 insertions(+), 8 deletions(-) diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index b338dff0..52c60702 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -1,6 +1,13 @@ name: Continuous Integration -on: [pull_request] +on: + pull_request: + push: + branches: + - master + - 3.4.x + - 3.3.x + - 3.2.x jobs: ci: @@ -32,7 +39,6 @@ jobs: - name: Binary compatibility run: sbt ++${{ matrix.scala }} mimaReportBinaryIssues - # Sentinel job to simplify how we specify which checks need to pass in branch # protection and in Mergify # @@ -43,3 +49,31 @@ jobs: runs-on: ubuntu-latest steps: - run: echo Success! + + # sbt ci-release publishes all cross versions so this job needs to be + # separate from a Scala versions build matrix to avoid duplicate publishing + publish: + needs: [all_tests_passed] + runs-on: ubuntu-latest + if: github.event_name == 'push' + + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Setup Scala + uses: olafurpg/setup-scala@v10 + with: + java-version: adopt@1.8 + - name: Cache Scala + uses: coursier/cache-action@v5 + - name: Setup GPG (for Publish) + uses: olafurpg/setup-gpg@v3 + - name: Publish + run: sbt ci-release + env: + PGP_PASSPHRASE: ${{ secrets.PGP_PASSPHRASE }} + PGP_SECRET: ${{ secrets.PGP_SECRET }} + SONATYPE_PASSWORD: ${{ secrets.SONATYPE_PASSWORD }} + SONATYPE_USERNAME: ${{ secrets.SONATYPE_USERNAME }} + + diff --git a/build.sbt b/build.sbt index 634fe1c9..05755f7c 100644 --- a/build.sbt +++ b/build.sbt @@ -52,8 +52,6 @@ lazy val publishSettings = Seq ( publishMavenStyle := true, publishArtifact in Test := false, pomIncludeRepository := { x => false }, - // Don't add 'scm' elements if we have a git.remoteRepo definition, - // but since we don't (with the removal of ghpages), add them in below. pomExtra := http://chisel.eecs.berkeley.edu/ @@ -62,10 +60,6 @@ lazy val publishSettings = Seq ( repo - - https://github.com/freechipsproject/chisel3.git - scm:git:github.com/freechipsproject/chisel3.git - jackbackrack diff --git a/project/plugins.sbt b/project/plugins.sbt index e57c53b2..5c73d56e 100644 --- a/project/plugins.sbt +++ b/project/plugins.sbt @@ -22,5 +22,7 @@ addSbtPlugin("com.eed3si9n" % "sbt-sriracha" % "0.1.0") addSbtPlugin("com.typesafe" % "sbt-mima-plugin" % "0.8.1") +addSbtPlugin("com.geirsson" % "sbt-ci-release" % "1.5.5") + // From FIRRTL for building from source addSbtPlugin("ch.epfl.scala" % "sbt-scalafix" % "0.9.19") -- cgit v1.2.3