58 lines
1.8 KiB
YAML
58 lines
1.8 KiB
YAML
name: Publish docs
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
workflow_call:
|
|
secrets:
|
|
DOCS_DEPLOY_AWS_ACCESS_KEY: {}
|
|
DOCS_DEPLOY_AWS_API_SECRET: {}
|
|
|
|
jobs:
|
|
docs:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7
|
|
with:
|
|
submodules: true
|
|
lfs: true
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6
|
|
with:
|
|
python-version: "3.12"
|
|
|
|
- name: Install uv
|
|
uses: astral-sh/setup-uv@cec208311dfd045dd5311c1add060b2062131d57 # v8.0.0
|
|
with:
|
|
enable-cache: true
|
|
cache-dependency-glob: "uv.lock"
|
|
|
|
- name: Install package, plugins, and docs dependencies
|
|
run: |
|
|
uv sync --all-extras --group docs
|
|
|
|
- name: Build HTML Docs
|
|
run: |
|
|
uv run --active pdoc --skip-errors --html --output-dir=docs livekit
|
|
|
|
- name: Build Markdown Docs
|
|
run: |
|
|
uv run --active python .github/convert_html_docs.py docs/ docs-md -v --check-links
|
|
|
|
- name: S3 Upload
|
|
run: |
|
|
aws s3 sync --delete docs/ s3://livekit-docs/python
|
|
aws s3 sync --delete docs-md/ s3://livekit-docs/python-md
|
|
env:
|
|
AWS_ACCESS_KEY_ID: ${{ secrets.DOCS_DEPLOY_AWS_ACCESS_KEY }}
|
|
AWS_SECRET_ACCESS_KEY: ${{ secrets.DOCS_DEPLOY_AWS_API_SECRET }}
|
|
AWS_DEFAULT_REGION: "us-east-1"
|
|
|
|
- name: Expire cloudfront cache
|
|
run: |
|
|
aws cloudfront create-invalidation --distribution-id EJJ40KLJ3TRY9 --paths "/python/*" "/python-md/*"
|
|
env:
|
|
AWS_ACCESS_KEY_ID: ${{ secrets.DOCS_DEPLOY_AWS_ACCESS_KEY }}
|
|
AWS_SECRET_ACCESS_KEY: ${{ secrets.DOCS_DEPLOY_AWS_API_SECRET }}
|
|
AWS_DEFAULT_REGION: "us-east-1"
|