From af47cc2e31616e0e09b866f14cd222a7128042c8 Mon Sep 17 00:00:00 2001 From: Indrajeet Patil Date: Sun, 24 Sep 2023 12:15:54 +0200 Subject: [PATCH] Add GHA for rendering the book --- .Rbuildignore | 1 + .github/.gitignore | 1 + .github/dependabot.yaml | 8 +++++ .github/workflows/bookdown.yaml | 53 +++++++++++++++++++++++++++++++++ 4 files changed, 63 insertions(+) create mode 100644 .Rbuildignore create mode 100644 .github/.gitignore create mode 100644 .github/dependabot.yaml create mode 100644 .github/workflows/bookdown.yaml diff --git a/.Rbuildignore b/.Rbuildignore new file mode 100644 index 00000000..c503c4f6 --- /dev/null +++ b/.Rbuildignore @@ -0,0 +1 @@ +^\.github$ diff --git a/.github/.gitignore b/.github/.gitignore new file mode 100644 index 00000000..2d19fc76 --- /dev/null +++ b/.github/.gitignore @@ -0,0 +1 @@ +*.html diff --git a/.github/dependabot.yaml b/.github/dependabot.yaml new file mode 100644 index 00000000..70b670ed --- /dev/null +++ b/.github/dependabot.yaml @@ -0,0 +1,8 @@ +version: 2 + +updates: + # Keep dependencies for GitHub Actions up-to-date + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" diff --git a/.github/workflows/bookdown.yaml b/.github/workflows/bookdown.yaml new file mode 100644 index 00000000..d21de97e --- /dev/null +++ b/.github/workflows/bookdown.yaml @@ -0,0 +1,53 @@ +# Workflow derived from https://github.com/r-lib/actions/tree/v2/examples +# Need help debugging build failures? Start at https://github.com/r-lib/actions#where-to-find-help +on: + push: + branches: [main, master] + pull_request: + branches: [main, master] + schedule: + # * is a special character in YAML so you have to quote this string + # Trigger once a week, on a Sunday (0) + - cron: "0 0 * * 0" + workflow_dispatch: + +name: bookdown + +jobs: + bookdown: + runs-on: ubuntu-latest + # Only restrict concurrency for non-PR jobs + concurrency: + group: pkgdown-${{ github.event_name != 'pull_request' || github.run_id }} + env: + GITHUB_PAT: ${{ secrets.GITHUB_TOKEN }} + steps: + - uses: actions/checkout@v4 + + - uses: r-lib/actions/setup-pandoc@v2 + with: + pandoc-version: "3.1.8" + + - uses: r-lib/actions/setup-r@v2 + with: + use-public-rspm: true + + - uses: r-lib/actions/setup-renv@v2 + + - name: Cache bookdown results + uses: actions/cache@v3 + with: + path: _bookdown_files + key: bookdown-${{ hashFiles('**/*Rmd') }} + restore-keys: bookdown- + + - name: Build site + run: bookdown::render_book("index.Rmd", quiet = TRUE) + shell: Rscript {0} + + - name: Deploy to GitHub pages 🚀 + if: github.event_name != 'pull_request' + uses: JamesIves/github-pages-deploy-action@v4.4.1 + with: + branch: gh-pages + folder: _book