(especially if you host it on a public repo... there are no time limits)
never used Github Actions before and I'm generally pretty new to CI/CD pipelines.
used a Github Action to deploy this site to Cloudflare Pages. pretty cool stuff.
name: Build and Publish
on: push
run-name: build and publish - triggered by @${{ github.actor }}
jobs:
build-and-publish-main:
runs-on: ubuntu-latest
env:
cloudflare_account: ${{ secrets.CLOUDFLARE_ACCOUNT }}
cloudflare_token: ${{ secrets.CLOUDFLARE_TOKEN }}
cloudflare_project: ${{ secrets.CLOUDFLARE_PROJECT }}
if: ${{ github.ref == 'refs/heads/main' }}
steps:
- name: install zola
uses: taiki-e/install-action@v2
with:
tool: [email protected]
- name: checkout code
uses: actions/checkout@v4
with:
submodules: true
- name: publish to cloudflare pages
uses: cloudflare/wrangler-action@v3
if: ${{ env.cloudflare_account != '' && env.cloudflare_token != '' && env.cloudflare_project != '' }}
with:
accountId: ${{ env.cloudflare_account }}
apiToken: ${{ env.cloudflare_token }}
preCommands: |
echo "building site..."
zola --root ${{ github.workspace }} build
command: pages deploy ${{ github.workspace }}/public --project-name=${{ env.cloudflare_project }}
now whenever I push updates to main, this action runs, builds with Zola, and deploys to Cloudflare Pages for me.