r4ds/.github/workflows/build_book.yaml

63 lines
1.7 KiB
YAML

on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
workflow_dispatch:
schedule:
# run every day at 11 PM
- cron: '0 23 * * *'
name: Build book
env:
isExtPR: ${{ github.event.pull_request.head.repo.fork == true }}
jobs:
build:
runs-on: ubuntu-latest
env:
GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }}
steps:
- uses: actions/checkout@v2
- uses: r-lib/actions/setup-pandoc@v2
- uses: r-lib/actions/setup-r@v2
with:
use-public-rspm: true
- uses: r-lib/actions/setup-r-dependencies@v2
- name: Cache bookdown results
uses: actions/cache@v2
with:
path: _bookdown_files
key: bookdown-3-${{ hashFiles('**/*Rmd') }}
restore-keys: bookdown-3-
- name: Build site
run: |
# Allows [implcit heading links] to work; will need to convert
# to explicit before switching to visual editor
options(bookdown.render.file_scope = FALSE)
bookdown::render_book("index.Rmd")
shell: Rscript {0}
- name: Deploy to Netlify
if: contains(env.isExtPR, 'false')
id: netlify-deploy
uses: nwtgck/actions-netlify@v1.1
with:
publish-dir: './_book'
production-branch: main
github-token: ${{ secrets.GITHUB_TOKEN }}
deploy-message:
'Deploy from GHA: ${{ github.event.pull_request.title || github.event.head_commit.message }} (${{ github.sha }})'
enable-pull-request-comment: false
enable-commit-comment: false
env:
NETLIFY_AUTH_TOKEN: ${{ secrets.NETLIFY_AUTH_TOKEN }}
NETLIFY_SITE_ID: ${{ secrets.NETLIFY_SITE_ID_2E }}
timeout-minutes: 1