Skip to content

Pre release

Pre release #32

Workflow file for this run

name: Pre release
on:
workflow_dispatch:
inputs:
release_tag:
description: 'Image tag in the format x.x.x'
required: true
type: string
env:
RELEASE_TAG: ${{ inputs.release_tag }}
PRERELEASE_DOCS_BRANCH: 'dg8d45z'
jobs:
## TODO we can add a condition like github.actor.role == 'Maintainer' to limit trigger to maintainers only
create_pr:
runs-on: ubuntu-latest
permissions:
pull-requests: write
contents: write
steps:
- name: checkout_repo
uses: actions/checkout@v4
with:
fetch-tags: true
fetch-depth: 0 # necessary for CURRENT_TAG tracing
- name: fetch_tags
run: git fetch --tags origin
- name: bump_version
run: |
export CURRENT_TAG=$(git describe --abbrev=0 --tags)
echo ./build/bump_version.sh "${CURRENT_TAG}" "${RELEASE_TAG}"
./build/bump_version.sh "${CURRENT_TAG}" "${RELEASE_TAG}"
make reno-report VERSION="${RELEASE_TAG}"
- name: commit_changes
run: |
git config --global user.name 'Kasten Production'
git config --global user.email 'infra@kasten.io'
git checkout -B "kan-docs-${PRERELEASE_DOCS_BRANCH}-${RELEASE_TAG}"
git add -A
git commit -s -m "pre-release: Update version to ${RELEASE_TAG}"
- name: push_changes
run: git push origin "kan-docs-${PRERELEASE_DOCS_BRANCH}-${RELEASE_TAG}"
- name: create_pr_body
run: |
echo "Update version to ${RELEASE_TAG}" > PR_BODY_FILE
echo "Merges to check changelog for:" >> PR_BODY_FILE
export CURRENT_TAG=$(git describe --abbrev=0 --tags)
echo git log ${CURRENT_TAG}..kan-docs-${PRERELEASE_DOCS_BRANCH}-${RELEASE_TAG} --pretty="- %h: %s" | grep "#" | grep -v ': test' | grep -v ': doc' | grep -v ': build' | grep -v ': deps'
git log ${CURRENT_TAG}..kan-docs-${PRERELEASE_DOCS_BRANCH}-${RELEASE_TAG} --pretty="- %h: %s" >> PR_BODY_FILE
- name: create_pr
run: |
gh pr create --title "pre-release: Update version to ${RELEASE_TAG}" -F PR_BODY_FILE --head "kan-docs-${PRERELEASE_DOCS_BRANCH}-${RELEASE_TAG}" --base master --reviewer tdmanv,pavannd1,viveksinghggits,hairyhum --label kueue
env:
GH_TOKEN: ${{ secrets.GH_TOKEN }}