diff options
Diffstat (limited to '.woodpecker/release.yaml')
| -rw-r--r-- | .woodpecker/release.yaml | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/.woodpecker/release.yaml b/.woodpecker/release.yaml new file mode 100644 index 000000000..8a2e2c3d7 --- /dev/null +++ b/.woodpecker/release.yaml @@ -0,0 +1,41 @@ +# https://woodpecker-ci.org/docs/usage/workflow-syntax#when---global-workflow-conditions +when: + - event: push + branch: main + +steps: + release: + # https://github.com/superseriousbusiness/gotosocial-drone-build + image: superseriousbusiness/gotosocial-drone-build:0.8.0 + pull: true + + # https://woodpecker-ci.org/docs/usage/volumes + volumes: + - /woodpecker/gotosocial/go-build-cache-root:/root/.cache/go-build + - /woodpecker/gotosocial/go-pkg-cache-root:/go/pkg + - /var/run/docker.sock:/var/run/docker.sock + + # https://woodpecker-ci.org/docs/usage/environment + # https://woodpecker-ci.org/docs/usage/secrets#usage + environment: + DOCKER_USERNAME: gotosocial + DOCKER_PASSWORD: + from_secret: gts_docker_password + GITHUB_TOKEN: + from_secret: github_token + + # https://woodpecker-ci.org/docs/usage/workflow-syntax#commands + commands: + - git fetch --tags + - /go/dockerlogin.sh + + # When releasing, compare commits to the most recent tag that is not the + # current one AND is not a release candidate tag (ie., no "rc" in the name). + # + # The DRONE_TAG env var should point to the tag that triggered this build. + # See: https://docs.drone.io/pipeline/environment/reference/drone-tag/ + # + # Note, this may cause annoyances when doing backport releases, for example, + # releasing v0.10.1 when we've already released v0.15.0 or whatever, but + # they should only be superficial annoyances related to the release notes. + - GORELEASER_PREVIOUS_TAG=$(git tag -l | grep -v "rc\|${DRONE_TAG}" | sort -V -r | head -n 1) goreleaser release --clean |
