Skip to content

Release major or minor version (create tag and documentation) #16

Release major or minor version (create tag and documentation)

Release major or minor version (create tag and documentation) #16

Workflow file for this run

# This workflow should be triggered when a release of the main is needed.
# It creates a tag and regenerates the documentation to generate a release.
# It does not bump the version number, that happens for the merged pull request.
name: Release major or minor version (create tag and documentation)
on:
workflow_dispatch:
inputs:
release_type:
type: choice
description: Choose type of release
default: major
options:
- minor
- major
jobs:
create-release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: actions/setup-python@v4
with:
python-version: 3.11
- name: Install poetry
uses: abatilo/actions-poetry@v2
with:
poetry-version: 1.4.2
- name: obtain version number
run:
git config user.name github-actions
git config user.email [email protected]
poetry version ${{ github.event.inputs.release_type }}
PROJECT_VERSION=$(poetry version --short)
echo "PROJECT_VERSION=$PROJECT_VERSION" >> $GITHUB_ENV
- name: Create Release
uses: actions/create-release@latest
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # This token is provided by Actions, you do not need to create your own token
with:
tag_name: ${{ env.PROJECT_VERSION }}
release_name: Release ${{ env.PROJECT_VERSION }}
draft: false
prerelease: false
- name: Install Dependencies
run: poetry install
- name: Create new version of mkdocs and publish
run: |
poetry run mike deploy --push --update-aliases ${PROJECT_VERSION} latest
poetry run mike set-default --push latest