Skip to content

fix(daemon): present a captured engine's stdout as a pseudo-terminal #17

fix(daemon): present a captured engine's stdout as a pseudo-terminal

fix(daemon): present a captured engine's stdout as a pseudo-terminal #17

Workflow file for this run

name: Docs
on:
push:
branches: [main]
pull_request:
permissions:
contents: read
# The deploy job publishes to GitHub Pages; the build job only needs
# contents:read, but the Pages actions insist on declaring these up front.
pages: write
id-token: write
jobs:
# --strict turns every warning (a broken link, an unlisted file) into a
# build failure, so a PR cannot ship a dead page. The same build feeds the
# deploy job on main.
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v7
- uses: actions/setup-python@v7
with:
python-version: "3.12"
# The version is pinned deliberately: Material adds behaviour between
# releases, and an unpinned install would let an unrelated push change
# what the site renders. Bump it on purpose, with whatever the new
# release asks of the docs.
- name: Install MkDocs Material
run: python -m pip install "mkdocs-material==9.7.7"
- name: Build
run: mkdocs build --strict
- name: Upload site
uses: actions/upload-artifact@v7
with:
name: site
path: site
deploy:
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
needs: build
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Download site
uses: actions/download-artifact@v8
with:
name: site
path: site
# The custom domain is not part of the artifact: for a site published
# by a workflow, GitHub ignores any CNAME file and the domain lives in
# the repository's Pages setting. Both of these are one-time admin
# steps, because the workflow token cannot make them:
# 1. enable Pages (build type: workflow)
# curl -X POST -H "Authorization: Bearer <token>" \
# https://api.github.com/repos/<owner>/<repo>/pages \
# -d '{"build_type":"workflow"}'
# 2. once the DNS CNAME points at the site's base domain
# (docs.spinloop.ai -> spinloop-ai.github.io), register it
# curl -X PUT -H "Authorization: Bearer <token>" \
# https://api.github.com/repos/<owner>/<repo>/pages \
# -d '{"cname":"docs.spinloop.ai","source":{"branch":"main","path":"/"}}'
- uses: actions/configure-pages@v6
- uses: actions/upload-pages-artifact@v5
with:
path: site
- id: deployment
uses: actions/deploy-pages@v5