Untitled

 avatar
unknown
plain_text
a year ago
1.1 kB
7
Indexable
name: Deploy to Cloudflare R2

on:
  push:
    branches:
      - main

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
    - name: Checkout code
      uses: actions/checkout@v2

    - name: Setup Hugo
      uses: peaceiris/actions-hugo@v2
      with:
        hugo-version: 'latest'

    - name: Build Hugo site
      run: hugo --minify

    - name: Install Wrangler
      run: npm install -g @cloudflare/wrangler

    - name: Configure Wrangler
      run: |
        wrangler config --api-key ${{ secrets.CF_API_TOKEN }}

    - name: Upload to Cloudflare R2
      env:
        CF_ACCOUNT_ID: ${{ secrets.CF_ACCOUNT_ID }}
        CF_R2_ACCESS_KEY_ID: ${{ secrets.CF_R2_ACCESS_KEY_ID }}
        CF_R2_SECRET_ACCESS_KEY: ${{ secrets.CF_R2_SECRET_ACCESS_KEY }}
        CF_R2_BUCKET_NAME: ${{ secrets.CF_R2_BUCKET_NAME }}
        CF_R2_REGION: ${{ secrets.CF_R2_REGION }}
      run: |
        for file in $(find public -type f); do
          filename=$(basename $file)
          wrangler r2 object put --bucket $CF_R2_BUCKET_NAME $filename --file $file
        done
Editor is loading...
Leave a Comment