diff --git a/.github/workflows/release-client.yml b/.github/workflows/release-client.yml index ff28ac51..cb645bee 100644 --- a/.github/workflows/release-client.yml +++ b/.github/workflows/release-client.yml @@ -36,6 +36,19 @@ jobs: with: version: '0.8.2' + - name: Validate version number + env: + VERSION: ${{ github.event.inputs.version }} + run: | + MAJOR=$(echo "$VERSION" | cut -d. -f1) + if [ "$MAJOR" -ge 26 ]; then + echo "Error: Version $VERSION is not allowed. Major version must be below 26." + echo "" + echo "This is likely not the version you want to release, it looks like calver." + echo "See README.md for more information about versioning." + exit 1 + fi + - name: Prepare release uses: getsentry/craft@c6e2f04939b6ee67030588afbb5af76b127d8203 # v2 env: diff --git a/README.md b/README.md index 7a4f79bc..a47076fb 100644 --- a/README.md +++ b/README.md @@ -101,6 +101,12 @@ See the [python client README](./clients/python/README.md) for more information. ### Releasing clients +**Note:** Clients are separately released from the broker. The broker follows +self-hosted style calver releases (`26.4.0`), and clients are released using +regular semver (`0.1.8`). They share tags and release branches though, so the +latest release you see on GitHub may not be the one you have to base your +version number on. + 1. Use the [release client libraries workflow](https://github.com/getsentry/taskbroker/actions/workflows/release-client.yml) 2. Choose 'Run workflow' and enter a version number in. 3. This will use craft + getsentry/publish to add packages to both internal and public pypi.