Plugin: updater-go
Updates a Go source file that exposes the project version. It is typically used to keep a version.go constant in sync with the SemRel release version.
Installation
Section titled “Installation”Binary
Section titled “Binary”semrel plugin install @semrel/updater-gosemrel plugin install downloads the binary to .semrel/plugins/ and updates .semrel.lock. Commit .semrel.lock to pin the version for your team.
Docker
Section titled “Docker”Pre-built, signed multi-platform images (linux/amd64, linux/arm64) are published on every release:
docker pull ghcr.io/semrels/updater-go:latestVerify the image signature with cosign:
cosign verify ghcr.io/semrels/updater-go:latest \ --certificate-identity-regexp 'https://github.com/SemRels/updater-go/.github/workflows/release.yml.*' \ --certificate-oidc-issuer https://token.actions.githubusercontent.comConfiguration
Section titled “Configuration”version: 1plugins: - uses: @semrel/updater-go args: file: version.go variable: VersionEnvironment Variables
Section titled “Environment Variables”| Name | Required | Default | Description |
|---|---|---|---|
SEMREL_PLUGIN_FILE | no | version.go | Go source file to update. |
SEMREL_PLUGIN_VARIABLE | no | Version | Variable or constant name that holds the version string. |
Release Context Variables
Section titled “Release Context Variables”SEMREL_NEXT_VERSIONSEMREL_CURRENT_VERSIONSEMREL_TAG_NAMESEMREL_DRY_RUN
Behavior
Section titled “Behavior”For a 1.4.0 release, the updater can change const Version = "1.3.2" to const Version = "1.4.0".