diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 00000000..76656760 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,35 @@ +name: Build and Deploy to Github Pages +on: + push: + branches: + - master +jobs: + build_and_deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + # The checkout action doesn't provide a way to get all commit history for a single branch + # So we use the magic number 2147483647 here which means infinite depth for git fetch + # See https://github.com/actions/checkout/issues/520, https://stackoverflow.com/a/6802238 + # this is so that last-modified-at plugin can use the git history to determine the last modified date + fetch-depth: 2147483647 + + # Use GitHub Actions' cache to cache dependencies on servers + - uses: actions/cache@v4 + with: + path: | + .asdf/** + vendor/bundle + key: ${{ runner.os }}-cache-${{ hashFiles('**/cache.key') }} + restore-keys: | + ${{ runner.os }}-cache- + + # Use GitHub Deploy Action to build and deploy to Github + - uses: jeffreytse/jekyll-deploy-action@v0.6.0 + with: + provider: 'github' + token: ${{ secrets.GITHUB_TOKEN }} + branch: 'gh-pages' + jekyll_src: './' + jekyll_cfg: '_config.yml'