restructure workflows
Some checks failed
Release - Build and publish docs / release (push) Failing after 26s
Some checks failed
Release - Build and publish docs / release (push) Failing after 26s
This commit is contained in:
82
.github/workflows/prerelease-docs.yml
vendored
Normal file
82
.github/workflows/prerelease-docs.yml
vendored
Normal file
@@ -0,0 +1,82 @@
|
||||
name: Pre-release - Build and publish docs
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- "v*-rc.*"
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
prerelease:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout (tag)
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Ensure tag commit is on release-candidate
|
||||
run: |
|
||||
set -euo pipefail
|
||||
git fetch origin release-candidate:refs/remotes/origin/release-candidate
|
||||
if ! git merge-base --is-ancestor "${GITHUB_SHA}" "origin/release-candidate"; then
|
||||
echo "ERROR: Tagged commit ${GITHUB_SHA} is not on release-candidate. Refusing prerelease."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: Setup Python
|
||||
uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: "3.13"
|
||||
cache: "pip"
|
||||
cache-dependency-path: mkdocs/requirements.txt
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
set -euo pipefail
|
||||
pip install -r mkdocs/requirements.txt
|
||||
|
||||
- name: CI gate (MKDOCS_STRICT)
|
||||
run: |
|
||||
set -euo pipefail
|
||||
|
||||
MKDOCS_STRICT="${MKDOCS_STRICT:-true}"
|
||||
STRICT_FLAG=""
|
||||
if [ "${MKDOCS_STRICT}" = "true" ]; then
|
||||
STRICT_FLAG="--strict"
|
||||
fi
|
||||
|
||||
OFFLINE=true mkdocs build ${STRICT_FLAG} -f mkdocs/mkdocs.yml
|
||||
|
||||
- name: Build artifact (non-strict)
|
||||
env:
|
||||
MKDOCS_STRICT: "false"
|
||||
run: |
|
||||
set -euo pipefail
|
||||
|
||||
MKDOCS_STRICT="${MKDOCS_STRICT:-true}"
|
||||
STRICT_FLAG=""
|
||||
if [ "${MKDOCS_STRICT}" = "true" ]; then
|
||||
STRICT_FLAG="--strict"
|
||||
fi
|
||||
|
||||
mkdir -p "${RUNNER_TEMP}/dist"
|
||||
OFFLINE=true mkdocs build ${STRICT_FLAG} -f mkdocs/mkdocs.yml -d "${RUNNER_TEMP}/dist/${{ github.ref_name }}"
|
||||
|
||||
- name: Zip artifact
|
||||
run: |
|
||||
set -euo pipefail
|
||||
cd "${RUNNER_TEMP}/dist"
|
||||
zip -r "${{ github.ref_name }}.zip" "./${{ github.ref_name }}"
|
||||
|
||||
- name: Publish prerelease (skip on act)
|
||||
if: ${{ env.ENABLE_RELEASE == 'true' && env.ACT != 'true' }}
|
||||
uses: softprops/action-gh-release@v2
|
||||
with:
|
||||
prerelease: true
|
||||
files: |
|
||||
${{ runner.temp }}/dist/${{ github.ref_name }}.zip
|
||||
Reference in New Issue
Block a user