--- version: '3' vars: GORELEASER_CONFIG: sh: if [ -f .goreleaser.yml ]; then echo ".goreleaser.yml"; else echo ".config/goreleaser-{{OS}}.yml"; fi tasks: build: deps: - :install:go:goreleaser - :install:go:nfpm - :install:software:jq vars: CURRENT_TAG: sh: jq -r '.blueprint.currentBuildTag' package.json log: error: GoReleaser encountered an error (config file -> `{{.GORELEASER_CONFIG}}`) start: Building with project with GoReleaser success: Completed building the project with GoReleaser cmds: - | unset GITHUB_TOKEN unset GITLAB_TOKEN export GOVERSION="$(go version)" if [ '{{.CURRENT_TAG}}' != 'null' ]; then export GORELEASER_CURRENT_TAG={{.CURRENT_TAG}} fi goreleaser build --config {{.GORELEASER_CONFIG}} --rm-dist --skip-validate check: deps: - :install:go:goreleaser log: error: GoReleaser configuration appears to be invalid (config file -> `{{.GORELEASER_CONFIG}}) start: Validating the configuration file success: GoReleaser configuration is valid! cmds: - goreleaser check --config {{.GORELEASER_CONFIG}} release: deps: - :install:go:goreleaser - :install:go:nfpm - :install:software:jq vars: CURRENT_TAG: sh: jq -r '.version' package.json cmds: - .config/log start 'Publishing compiled assets with GoReleaser' - task: :publish:snap:register - | unset GITLAB_TOKEN export GOVERSION="$(go version)" export GORELEASER_CURRENT_TAG=v{{.CURRENT_TAG}} goreleaser release --config {{.GORELEASER_CONFIG}} --rm-dist --skip-validate - rm -f build/task.rb build/config.yaml - .config/log success 'Successfully published assets with GoReleaser!'