概要

Cloudflare WorkersとHugoでblogを作ってみる

手順

  1. Hugoでデプロイしたいサイトを作成

Quick Start | Hugo

  1. wranglerでWorkersに対応

Start from existing · Cloudflare Workers docs

  1. 以下のGitHub Actionsで自動化
on:
  push:
    branches:
      - master

jobs:
  deploy:
    name: deploy
    runs-on: ubuntu-latest
    steps:
      - name: checkout
        uses: actions/checkout@v2
        with:
          submodules: true
          fetch-depth: 0

      - name: setup
        uses: peaceiris/actions-hugo@v2
        with:
          hugo-version: '0.85.0'

      - name: build
        run: hugo

      - name: publish
        uses: cloudflare/wrangler-action@1.3.0
        env:
          USER: root
        with:
          apiToken: ${{ secrets.CF_API_TOKEN }}

注意点

  • Cloudflare Registrarの独自ドメインでホストする場合はDNS managementでも適切にレコードを設定する必要がある
  • cloudflare/wrangler-action@1.3.0 はaction側のbugでUSERを指定しないと動かない
  • TLSは自動でflexibleになるので config.tomlbaseURL をhttps://にするだけ