Publish Release Docs #8
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: Publish Release Docs | |
# Workflow Trigger | |
on: | |
# Triggers the workflow in the event there is a release created | |
release: | |
types: [published] | |
# Allow manual triggering of the workflow. | |
# This will deploy current development branch as latest version. | |
workflow_dispatch: | |
permissions: | |
contents: write | |
jobs: | |
deploy: | |
name: Build & Publish Docs | |
runs-on: ubuntu-latest | |
steps: | |
- name: Get the sources | |
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4 | |
with: | |
lfs: true | |
fetch-depth: 0 | |
- name: Install Python | |
uses: actions/setup-python@0b93645e9fea7318ecaed2b359559ac225c90a2b # v5 | |
with: | |
python-version: 3.13.1 | |
- name: Install Python Dependencies | |
run: pip install -r requirements.txt | |
working-directory: ./docs | |
- name: Install Required Libraries | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y pngquant | |
- name: Configure Git | |
run: | | |
git config --global user.name "Build Server" | |
git config --global user.email "[email protected]" | |
# Determine the version (either from the release or manually inputted) | |
- name: Set version to deploy | |
id: set-version | |
run: | | |
if [[ "${{ github.event_name }}" == "release" ]]; then | |
echo "VERSION=${{ github.event.release.tag_name }}" >> $GITHUB_ENV | |
elif [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then | |
LATEST_TAG=$(curl -s https://api.github.com/repos/${{ github.repository }}/releases/latest | jq -r .tag_name) | |
if [ "$LATEST_TAG" != "null" ]; then | |
echo "VERSION=$LATEST_TAG" >> $GITHUB_ENV | |
else | |
echo "No latest release found" && exit 1 | |
fi | |
else | |
echo "No version specified, cannot deploy." && exit 1 | |
fi | |
- name: Build & Publish | |
run: mike deploy --push --update-aliases $VERSION latest | |
working-directory: ./docs |