mirror of
https://github.com/apricote/releaser-pleaser.git
synced 2026-01-13 21:21:03 +00:00
52 lines
1.6 KiB
YAML
52 lines
1.6 KiB
YAML
spec:
|
|
inputs:
|
|
# Remember to update docs/reference/gitlab-ci-component.md
|
|
branch:
|
|
default: main
|
|
description: "This branch is used as the target for releases."
|
|
|
|
token:
|
|
description: "GitLab token for creating and updating release MRs."
|
|
|
|
extra-files:
|
|
description: 'List of files that are scanned for version references.'
|
|
default: ""
|
|
|
|
stage:
|
|
default: build
|
|
description: 'Defines the build stage'
|
|
|
|
needs:
|
|
default: [ ]
|
|
type: array
|
|
description: 'Dependencies of the created Job'
|
|
# Remember to update docs/reference/gitlab-ci-component.md
|
|
---
|
|
|
|
releaser-pleaser:
|
|
stage: $[[ inputs.stage ]]
|
|
needs: $[[ inputs.needs ]]
|
|
|
|
rules:
|
|
# There is no way to run a pipeline when the MR description is updated :(
|
|
- if: $CI_COMMIT_BRANCH == "$[[ inputs.branch ]]"
|
|
|
|
# If a newer releaser-pleaser job runs, this one may be cancelled without problem, releaser-pleaser is idempotent.
|
|
# This only works if the user enables "auto-cancel redundant pipelines", which we do tell them to, because this is
|
|
# intrusive and up to the user.
|
|
interruptible: true
|
|
|
|
# No need to have multiple releaser-pleaser jobs running at the same time. They all act on the same global state.
|
|
resource_group: releaser-pleaser
|
|
|
|
image:
|
|
name: ghcr.io/apricote/releaser-pleaser:v0.6.1 # x-releaser-pleaser-version
|
|
entrypoint: [ "" ]
|
|
variables:
|
|
GITLAB_TOKEN: $[[ inputs.token ]]
|
|
script:
|
|
- |
|
|
rp run \
|
|
--forge=gitlab \
|
|
--branch=$[[ inputs.branch ]] \
|
|
--extra-files="$[[ inputs.extra-files ]]"
|