Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 

Repository files navigation

GitHub Action triển khai Cloudflare Workers

GitHub Action này tự động xây dựng và triển khai dự án Node.js lên Cloudflare Workers.

Tính năng

  • Tự động thiết lập môi trường Node.js (dựa trên tệp .nvmrc)
  • Rút ngắn thời gian xây dựng bằng cách lưu bộ nhớ đệm dependencies
  • Tự động triển khai Cloudflare Workers
  • Hỗ trợ triển khai theo môi trường

Cách sử dụng

name: Deploy to Cloudflare Workers

on:
  push:
    branches: [ main ]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout
        uses: actions/checkout@v4

      - name: Deploy to Cloudflare Workers
        uses: your-username/deploy-cloudflare-workers@main
        with:
          working-directory: './my-worker'
          account-id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
          api-token: ${{ secrets.CLOUDFLARE_API_TOKEN }}
          environment: 'production'

Tham số đầu vào

Tham số Bắt buộc Kiểu Mô tả
working-directory string Đường dẫn thư mục làm việc của dự án
account-id string ID tài khoản Cloudflare
api-token string API token của Cloudflare
environment string Môi trường cần triển khai (ví dụ: production, staging). Nếu không chỉ định, ứng dụng sẽ được triển khai vào môi trường mặc định.

Điều kiện cần thiết

  1. Dự án Node.js: cần có các tệp package.jsonpackage-lock.json.
  2. Tệp phiên bản Node: cần có tệp .nvmrc trong thư mục làm việc.
  3. Cấu hình Wrangler: dự án cần có tệp wrangler.toml.
  4. Cấu hình Cloudflare:
    • ID tài khoản Cloudflare
    • API token có quyền phù hợp

Thiết lập Secrets

Trong GitHub repository, vào Settings > Secrets and variables > Actions và cấu hình các secrets sau:

  • CLOUDFLARE_ACCOUNT_ID: ID tài khoản có thể xem trong Cloudflare Dashboard
  • CLOUDFLARE_API_TOKEN: API token có quyền triển khai Workers

Ví dụ

Cách dùng cơ bản

- name: Deploy to Cloudflare Workers
  uses: your-username/deploy-cloudflare-workers@main
  with:
    working-directory: '.'
    account-id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
    api-token: ${{ secrets.CLOUDFLARE_API_TOKEN }}
    environment: 'production'

Dự án trong thư mục con

- name: Deploy Worker from subdirectory
  uses: your-username/deploy-cloudflare-workers@main
  with:
    working-directory: './apps/my-worker'
    account-id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
    api-token: ${{ secrets.CLOUDFLARE_API_TOKEN }}
    environment: 'staging'

Triển khai vào môi trường mặc định (bỏ qua environment)

- name: Deploy to default environment
  uses: your-username/deploy-cloudflare-workers@main
  with:
    working-directory: '.'
    account-id: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
    api-token: ${{ secrets.CLOUDFLARE_API_TOKEN }}

Cách hoạt động

  1. Thiết lập Node.js: cấu hình môi trường Node.js dựa trên tệp .nvmrc.
  2. Lưu bộ nhớ đệm dependencies: lưu đệm node_modules dựa trên package-lock.json.
  3. Cài đặt dependencies: nếu không có cache, chạy npm ci.
  4. Triển khai: dùng Cloudflare Wrangler để triển khai vào môi trường đã chỉ định.

Giấy phép

Dự án được phát hành theo giấy phép MIT. Xem tệp LICENSE để biết chi tiết.

Đóng góp

Chào đón báo lỗi, yêu cầu tính năng và pull request. Vui lòng mở issue để trao đổi trước khi đóng góp.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors