mirror of
https://github.com/juanfont/headscale.git
synced 2024-12-19 14:37:37 +00:00
44456497b0
Setup mike to provide versioned builds of the documentation. The goal is to have versioned docs for stable releases (0.23.0, 0.24.0) and development docs that can progress along with the code. This allows us to tailor docs to the next upcoming version as we no longer need to care about diversion between rendered docs and the latest release. Versions: * development (alias: unstable) on each push to the main branch * MAJOR.MINOR.PATCH (alias: stable, latest for the newest version) * for each "final" release tag * for each push to doc maintenance branches: doc/MAJOR.MINOR.PATCH The default version should the current stable version. The doc maintenance branches may be used to update the version specific documentation when issues arise after a release.
49 lines
1.4 KiB
YAML
49 lines
1.4 KiB
YAML
name: Deploy docs
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
# Main branch for development docs
|
|
- main
|
|
|
|
# Doc maintenance branches
|
|
- doc/[0-9]+.[0-9]+.[0-9]+
|
|
tags:
|
|
# Stable release tags
|
|
- v[0-9]+.[0-9]+.[0-9]+
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Install python
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: 3.x
|
|
- name: Setup cache
|
|
uses: actions/cache@v4
|
|
with:
|
|
key: ${{ github.ref }}
|
|
path: .cache
|
|
- name: Setup dependencies
|
|
run: pip install -r docs/requirements.txt
|
|
- name: Configure git
|
|
run: |
|
|
git config user.name github-actions
|
|
git config user.email github-actions@github.com
|
|
- name: Deploy development docs
|
|
if: github.ref == 'refs/heads/main'
|
|
run: mike deploy --push development unstable
|
|
- name: Deploy stable docs from doc branches
|
|
if: startsWith(github.ref, 'refs/heads/doc/')
|
|
run: mike deploy --push ${GITHUB_REF_NAME##*/}
|
|
- name: Deploy stable docs from tag
|
|
if: startsWith(github.ref, 'refs/tags/v')
|
|
# This assumes that only newer tags are pushed
|
|
run: mike deploy --push --update-aliases ${GITHUB_REF_NAME#v} stable latest
|