Skip to content

chore: cleanup release process #9

chore: cleanup release process

chore: cleanup release process #9

Workflow file for this run

# Release Tag workflow
name: release_tag
# TODO(Actions):
# - [ ] check that last commit is the CHANGES edit
# - [ ] infer the last RC version
# - [ ] run bumpver.py with the new version
# - [ ] push the commit and new tag
on:
workflow_dispatch: # on manual trigger
pull_request: # FIXME(before-merge): remove this trigger
jobs:
new-tag:
# FIXME(before-merge): uncomment
# if: ${{ github.ref_name == 'master' }}
runs-on: ubuntu-latest
env:
CHANGES_FILE: CHANGES.rst
EXPECTED_DIFF_COUNT: 1
steps:
- uses: actions/checkout@v3
- id: get-diff
uses: technote-space/get-diff-action@v6
with:
PATTERNS: |
${{ env.CHANGES_FILE }}
SET_ENV_NAME_COUNT: true
- id: check-changes
run: |
echo "${{ steps.get-diff.outputs.count }}/${{ env.EXPECTED_DIFF_COUNT }} changes in ${{ env.CHANGES_FILE }}."
# FIXME(before-merge): uncomment
# exit ${{ steps.get-diff.outputs.count == env.EXPECTED_DIFF_COUNT && 0 || 1 }}
- id: get-version
run: |
LAST_VERSION=1.5.3
# FIXME(before-merge): uncomment
# LAST_VERSION=$(grep -m1 -E ' \([0-9]+-[0-9]+-[0-9]+\)$' ${CHANGE_FILE} | awk '{ print $1 }')
echo "LAST_VERSION=${LAST_VERSION}" >> "$GITHUB_OUTPUT"
- uses: actions/setup-python@v4
with:
python-version: "3.x"
- id: install-requirements
run: pip install -r "requirements/dev.pip"
- name: run `bumpver`
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
CHANGE_FILE=${{ env.CHANGES_FILE }}
LAST_VERSION=${{ steps.get-version.outputs.LAST_VERSION }}
git config user.name github-actions
git config user.email github-actions@github.com
# FIXME(before-merge): uncomment
# python3 bin/bumpver.py -t "Automated release ${LAST_VERSION}" ${LAST_VERSION}
python3 bin/bumpver.py -c ${LAST_VERSION}
git push --follow-tags