bmx

Release Process

This describes the steps for making a release.

Create a Release PR

export BMX_VERSION=<major version>.<minor version>
git tag -a v${BMX_VERSION} -m "Version ${BMX_VERSION}"
git push origin v${BMX_VERSION}
git push --delete origin v${BMX_VERSION}
git tag -d v${BMX_VERSION}

Create a Release Tag

export BMX_VERSION=<major version>.<minor version>
git checkout main
git pull --rebase
git tag -a v${BMX_VERSION} -m "Version ${BMX_VERSION}"
git push origin v${BMX_VERSION}

Create the Release Packages

Create a GitHub Release

Create a Docker Image for the GitHub Container Registry

DOCKER_BUILDKIT=1 docker build -t bmxtools .
docker tag bmxtools ghcr.io/bbc/bmxtools:${BMX_VERSION}.0
docker tag bmxtools ghcr.io/bbc/bmxtools:latest
docker login ghcr.io --username <username>
docker push ghcr.io/bbc/bmxtools:${BMX_VERSION}.0
docker push ghcr.io/bbc/bmxtools:latest
docker logout ghcr.io