Newer
Older
- local: 'images/.utils/gitlab-ci.yaml'
# Automated month-based releases
release-changelog-full:
stage: changelog
image: quay.io/git-chglog/git-chglog:0.15.4
variables:
GIT_STRATEGY: clone
GIT_DEPTH: 0
script:
- git-chglog --template .chglog/unreleased.tpl.md --next-tag "v$(date +%y.%m)" --output RELEASENOTES.md
artifacts:
paths:
- RELEASENOTES.md
rules:
- if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $INFRA_RELEASE_NOW == "true" && $CI_COMMIT_TAG == null'
release-branch:
stage: release
image: registry.gitlab.com/gitlab-org/release-cli
variables:
GIT_STRATEGY: clone
GIT_DEPTH: 0
before_script:
- apk add --no-cache git
- export INFRA_RELEASE_VERSION="$(date +%y.%m)"
- export INFRA_RELEASE_NAME="GitOps Infrastructure $INFRA_RELEASE_VERSION"
- export INFRA_RELEASE_DESCRIPTION="$(cat RELEASENOTES.md && printf "\n\n---\n*This is an automated release. See [#${CI_JOB_ID}]($CI_JOB_URL) for details.*")"
script:
- >
release-cli create --name "$INFRA_RELEASE_NAME" --description "$INFRA_RELEASE_DESCRIPTION"
--tag-name "v${INFRA_RELEASE_VERSION}" --ref $CI_COMMIT_SHA
rules:
- if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $INFRA_RELEASE_NOW == "true" && $CI_COMMIT_TAG == null'