CI デプロイ — GitHub Pages 自動公開
quarto-dsh ci で GitHub Actions のデプロイ設定を生成し、Pages に自動公開する
概要
quarto-dsh ci は、Quarto サイトを GitHub Pages に自動デプロイする GitHub Actions ワークフローを生成します。プッシュのたびに quarto render → Pages へ公開、という流れを自動化します。
使い方
quarto-dsh ciプロジェクトのルートに .github/workflows/deploy.yml を生成します。サイトを site/ などサブディレクトリに置いている場合は --dir を指定します。
quarto-dsh ci --dir site生成されるワークフロー
name: Deploy Quarto site to GitHub Pages
on:
push:
branches: [main]
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: pages
cancel-in-progress: true
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: quarto-dev/quarto-actions/setup@v2
- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true
- uses: quarto-dev/quarto-actions/render@v2
with:
to: html
- uses: actions/configure-pages@v5
- uses: actions/upload-pages-artifact@v3
with:
path: _site
- id: deployment
uses: actions/deploy-pages@v4--dir site を指定した場合は to: html の代わりに path: site で render を実行し、アップロード先は site/_site になります。
公開手順
1. ワークフローを生成してコミット
quarto-dsh ci --dir site
git add .github site
git commit -m "Add GitHub Pages deployment"
git push origin main2. Pages を有効化
リポジトリ設定 → Settings → Pages で Source を GitHub Actions に設定します(ワークフローが Pages デプロイを担当)。
3. デプロイを確認
Actions タブでワークフローの実行を確認します。成功すると https://<ユーザー名>.github.io/<リポジトリ名>/ で公開されます。
TipGitHub CLI で Pages を有効化
ブラウザなしで設定する場合:
gh api repos/{owner}/{repo}/pages \
-f 'build_type=workflow' -X POST