Skip to content

Commit

Permalink
Avoid accidentally triggering CI release
Browse files Browse the repository at this point in the history
when releasing for new Scala versions without introducing
a new genjavadoc version
  • Loading branch information
raboof committed Jan 13, 2025
1 parent b0dccbc commit da5bf3f
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 4 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ name: Release
on:
push:
branches: [main]
tags: ["*"]
tags: ["v*"]
jobs:
publish:
runs-on: ubuntu-latest
Expand Down
4 changes: 1 addition & 3 deletions RELEASING.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,9 @@ Creating a release on GitHub triggers a Github Action build that should test, bu
It is often the case when this compiler plugin needs to be released for a newly released Scala version. For this the process is the following:

1. Checkout the version that is to be back-released, which would be
* `main`, if no features or bug fixes were merged to the main branch since the latest release. In this case create a tag recording you released from this commit, e.g. `git tag -a -m 'Release 0.19 for Scala 2.12.20' v0.19_2.12.20; git push --tags`.
* `main`, if no features or bug fixes were merged to the main branch since the latest release. In this case create a tag recording you released from this commit, e.g. `git tag -a -m 'Release 0.19 for Scala 2.12.20' 0.19_2.12.20; git push --tags`. This tag does not start with 'v' to make sure the CI publication does not get triggered.
* tag, if the main branch has unreleased features or bug fixes. In this case you will need to cherry pick the commit that adds support for the new Scala version.
1. Create a file `version.sbt` containing `ThisBuild / version := "0.19"` which sets the version to be back-released. This will override the automatic version derivation from the git history. Alternatively you can `set ThisBuild / version := ...` in the command line.
1. Publish the release by running `SONATYPE_USERNAME=xxx SONATYPE_PASSWORD=xxx sbt clean ++2.12.20 publishSigned sonatypeBundleRelease` (with the appropriate credentials and scala version). You will need Sonatype OSS repository rights to publish under `com.typesafe` organisation.

It would be nice to have a way to backpublish through GitHub Actions instead of using our laptops. If interested in pursuing this possibility, see https://github.com/lightbend/genjavadoc/issues/333 and https://github.com/sbt/sbt-ci-release/issues/102

Note that the instructions above suggest pushing a tag. Pushing the tag may cause sbt-ci-release to attempt to publish incorrect artifacts. It might be better not to push the tag at all? :shrug:

0 comments on commit da5bf3f

Please sign in to comment.