Bump version and changelog #4
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Bump version and changelog | |
on: | |
workflow_dispatch | |
jobs: | |
bumpversion: | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
outputs: | |
version: ${{ steps.tag_version.outputs.new_version }} | |
previous_tag: ${{ steps.tag_version.outputs.previous_tag }} | |
bump_commit_sha: ${{ steps.bumpversion.outputs.commit_hash }} | |
pr_number: ${{ steps.cpr.outputs.pull-request-number }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Get next version | |
id: tag_version | |
uses: mathieudutour/[email protected] | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
default_bump: false | |
default_prerelease_bump: false | |
dry_run: true | |
- name: Set up Python 3.12 | |
uses: actions/setup-python@v5 | |
with: | |
python-version: "3.12" | |
- name: Create bumpversion | |
if: steps.tag_version.outputs.new_version | |
id: bumpversion | |
run: | | |
pip install bump2version | |
bump2version --new-version ${{ steps.tag_version.outputs.new_version }} setup.cfg tutorprint_course_certificates/__about__.py .ci/config.yml | |
- name: Update Changelog | |
if: steps.tag_version.outputs.new_version | |
uses: stefanzweifel/[email protected] | |
with: | |
latest-version: v${{ steps.tag_version.outputs.new_version }} | |
release-notes: ${{ steps.tag_version.outputs.changelog }} | |
- name: Push branch | |
if: steps.tag_version.outputs.new_version | |
run: | | |
branch_name="bot/v${{ steps.tag_version.outputs.new_version }}" | |
git fetch --prune origin | |
if git show-ref --quiet refs/remotes/origin/$branch_name; then | |
git push --delete origin $branch_name | |
fi | |
git checkout -b $branch_name || git checkout $branch_name | |
git push origin $branch_name | |
- name: Create Pull Request | |
id: cpr | |
uses: peter-evans/create-pull-request@v7 | |
with: | |
token: ${{ secrets.SEMANTIC_RELEASE_GITHUB_TOKEN }} | |
title: "chore: preparing release ${{ steps.tag_version.outputs.new_version }}" | |
commit-message: "chore: preparing release ${{ steps.tag_version.outputs.new_version }}" | |
branch: "bot/v${{ steps.tag_version.outputs.new_version }}" | |
base: main | |
body: | | |
Automated version bump for release ${{ steps.tag_version.outputs.new_version }}. | |
This pull request was automatically generated. It includes the following changes: | |
- Version: v${{ steps.tag_version.outputs.new_version }} | |
- Previous version: ${{ steps.tag_version.outputs.previous_tag }} | |
${{ steps.tag_version.outputs.changelog }} | |
No code changes are included in this pull request. The purpose of this PR is to trigger a version bump for the project. | |
Once the pull request is merged, a new GitHub release will be created with the updated version. |