58 lines
1.9 KiB
YAML
58 lines
1.9 KiB
YAML
|
name: Create Release Branch
|
||
|
|
||
|
on:
|
||
|
workflow_dispatch:
|
||
|
inputs:
|
||
|
newVersion:
|
||
|
description: A version number for this release (e.g., "0.1.0")
|
||
|
required: true
|
||
|
|
||
|
jobs:
|
||
|
prepare-release:
|
||
|
runs-on: ubuntu-latest
|
||
|
permissions:
|
||
|
contents: write
|
||
|
pull-requests: write
|
||
|
|
||
|
steps:
|
||
|
- name: Check out harlequin-postgres main branch
|
||
|
uses: actions/checkout@v4
|
||
|
with:
|
||
|
ref: main
|
||
|
- name: Set up Python 3.10
|
||
|
uses: actions/setup-python@v4
|
||
|
with:
|
||
|
python-version: "3.10"
|
||
|
- name: Install Poetry
|
||
|
uses: snok/install-poetry@v1
|
||
|
with:
|
||
|
version: 1.6.1
|
||
|
- name: Create release branch
|
||
|
run: |
|
||
|
git checkout -b release/v${{ github.event.inputs.newVersion }}
|
||
|
git push --set-upstream origin release/v${{ github.event.inputs.newVersion }}
|
||
|
- name: Bump version
|
||
|
run: poetry version ${{ github.event.inputs.newVersion }} --no-interaction
|
||
|
- name: Ensure package can be built
|
||
|
run: poetry build --no-interaction
|
||
|
- name: Update CHANGELOG
|
||
|
uses: thomaseizinger/keep-a-changelog-new-release@v1
|
||
|
with:
|
||
|
version: ${{ github.event.inputs.newVersion }}
|
||
|
- name: Commit Changes
|
||
|
uses: stefanzweifel/git-auto-commit-action@v5
|
||
|
with:
|
||
|
commit_message: Bumps version to ${{ github.event.inputs.newVersion }}
|
||
|
- name: Create pull request into main
|
||
|
uses: thomaseizinger/create-pull-request@1.3.1
|
||
|
env:
|
||
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||
|
with:
|
||
|
head: release/v${{ github.event.inputs.newVersion }}
|
||
|
base: main
|
||
|
title: v${{ github.event.inputs.newVersion }}
|
||
|
body: >
|
||
|
This PR was automatically generated. It bumps the version number
|
||
|
in pyproject.toml and updates CHANGELOG.md. You may have to close
|
||
|
this PR and reopen it to get the required checks to run.
|