feat: implement --skip-existing
flag (#743)
#22
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: Deploy Docs | |
on: | |
push: | |
branches: | |
- main | |
paths: | |
- "docs/**" | |
- "mkdocs.yml" | |
tags: | |
- v** | |
pull_request: | |
branches: | |
- main | |
paths: | |
- "docs/**" | |
- ".github/workflows/docs.yml" | |
- "mkdocs.yml" | |
- "pixi.*" | |
workflow_dispatch: | |
inputs: | |
tag: | |
description: "Tag to deploy" | |
required: true | |
default: "v0.0.0" | |
# Allow one concurrent deployment | |
concurrency: | |
group: "pages" | |
cancel-in-progress: true | |
jobs: | |
build-docs: | |
if: github.ref != 'refs/heads/main' && !startsWith(github.ref, 'refs/tags/v') | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- uses: prefix-dev/[email protected] | |
with: | |
pixi-version: v0.13.0 | |
cache: true | |
- name: Build docs for test | |
run: | | |
pixi run build-docs | |
docs-release: | |
# Don't run on forks | |
if: startsWith(github.event.ref, 'refs/tags/v') || github.event_name == 'workflow_dispatch' && startsWith(github.event.inputs.tag, 'v') | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
# fetch everything so we can checkout the tag | |
fetch-depth: 0 | |
submodules: recursive | |
# check out tag if workflow_dispatch | |
- name: Checkout tag | |
if: github.event_name == 'workflow_dispatch' | |
run: | | |
git checkout tags/${{ github.event.inputs.tag }} | |
- uses: prefix-dev/[email protected] | |
with: | |
pixi-version: v0.13.0 | |
cache: true | |
- name: Configure Git user | |
run: | | |
git config --local user.email "github-actions[bot]@users.noreply.github.com" | |
git config --local user.name "github-actions[bot]" | |
- name: Extract tag name | |
if: github.event_name != 'workflow_dispatch' | |
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV | |
- name: Tag from workflow_dispatch | |
if: github.event_name == 'workflow_dispatch' | |
run: echo "RELEASE_VERSION=${{ github.event.inputs.tag }}" >> $GITHUB_ENV | |
- name: Deploy with mike 🚀 | |
run: | | |
pixi run mike deploy --push --update-aliases $RELEASE_VERSION latest | |
docs-dev: | |
# Don't run on forks | |
if: github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' && !startsWith(github.event.inputs.tag, 'v') | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
# fetch everything so we can checkout the tag | |
fetch-depth: 0 | |
submodules: recursive | |
- uses: prefix-dev/[email protected] | |
with: | |
pixi-version: v0.13.0 | |
cache: true | |
- name: Configure Git user | |
run: | | |
git config --local user.email "github-actions[bot]@users.noreply.github.com" | |
git config --local user.name "github-actions[bot]" | |
- name: Deploy with mike 🚀 | |
run: | | |
pixi run deploy-dev |