Release major or minor version (create tag and documentation) #16
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
# 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 |