From 5e6bac405cd883236d6ce0b9e970b5a62599bd4a Mon Sep 17 00:00:00 2001 From: Kelly Sovacool Date: Wed, 7 Aug 2024 16:17:13 -0400 Subject: [PATCH] ci: use CCBR/actions mkdocs workflow --- .github/workflows/docs-mkdocs.yml | 25 +++++++++ .github/workflows/docs.yml | 89 ------------------------------- 2 files changed, 25 insertions(+), 89 deletions(-) create mode 100644 .github/workflows/docs-mkdocs.yml delete mode 100644 .github/workflows/docs.yml diff --git a/.github/workflows/docs-mkdocs.yml b/.github/workflows/docs-mkdocs.yml new file mode 100644 index 0000000..4a926ef --- /dev/null +++ b/.github/workflows/docs-mkdocs.yml @@ -0,0 +1,25 @@ +name: docs +on: + workflow_dispatch: + release: + types: + - published + push: + branches: + - main + paths: + - "docs/**" + - "**.md" + - .github/workflows/docs-mkdocs.yml + - mkdocs.yml + +jobs: + mkdocs: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - uses: CCBR/actions/mkdocs-mike@main + with: + github-token: ${{ github.token }} diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml deleted file mode 100644 index e2403bf..0000000 --- a/.github/workflows/docs.yml +++ /dev/null @@ -1,89 +0,0 @@ -name: docs -on: - workflow_dispatch: - release: - types: - - published - push: - branches: - - main - paths: - - "docs/**" - - "**.md" - - .github/workflows/docs.yml - - mkdocs.yml - pull_request: - branches: - - main - paths: - - "docs/**" - - "**.md" - - .github/workflows/docs.yml - - mkdocs.yml - -env: - actor: "41898282+github-actions[bot]" - GH_TOKEN: ${{ github.token }} - -jobs: - deploy: - runs-on: ubuntu-latest - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - uses: actions/setup-python@v5 - with: - python-version: 3.11 - cache: pip - - run: pip install --upgrade pip -r docs/requirements.txt - - name: git config - run: | - git config --local user.email "${actor}@users.noreply.github.com" - git config --local user.name "$actor" - gh release list > releases.tsv - - name: get version tag & alias - shell: python {0} - run: | - import os - import re - import warnings - - release_tag = '' - with open('releases.tsv', 'r') as infile: - for line in infile: - release_name, latest, tag, timestamp = line.strip().split('\t') - if latest == "Latest": - release_tag = tag.strip('v') - break - if not release_tag: - warnings.warn("No latest release found") - - with open('VERSION', 'r') as infile: - current_version = infile.read().strip() - - if current_version == release_tag: - docs_alias = 'latest' - docs_version = release_tag - else: - semver_pattern = '(?P0|[1-9]\d*)\.(?P0|[1-9]\d*)\.(?P0|[1-9]\d*)(?:-(?P(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+(?P[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?' - release_semver = re.match(semver_pattern, release_tag) - current_semver = re.match(semver_pattern, current_version) - - groups = ['major', 'minor', 'patch'] - if current_semver.group('prerelease') and any([current_semver.group(grp) >= release_semver.group(grp) for grp in groups]): - docs_alias = '' - docs_version = 'dev' - else: - raise ValueError(f"current version {current_version} is not greater than latest release {release_tag}") - - with open(os.getenv("GITHUB_ENV"), 'a') as out_env: - out_env.write(f"VERSION={docs_version}\n") - out_env.write(f"ALIAS={docs_alias}\n") - - - name: deploy docs - run: | - mike deploy ${{ env.VERSION }} ${{ env.ALIAS }} \ - --push \ - --update-aliases \ - --branch gh-pages