This commit converts the entire Xget application from a Cloudflare Worker to a Cloudflare Page, enabling static asset hosting while maintaining all existing functionality. Changes: - Add functions/[[path]].js: Catch-all Pages Function handler - Add public/index.html: Landing page with Xget information - Update src/index.js: Export handleRequest for Pages Function import - Update wrangler.toml: Configure for Pages deployment - Update package.json: Change scripts to use Pages commands - Update vitest.config.js: Include functions/ in coverage - Update .github/workflows/depoly.yml: Deploy to Pages - Update documentation: CLAUDE.md, README.md, README.en.md The conversion maintains full backward compatibility with existing tests and functionality. All caching strategies, security headers, and protocol handling remain unchanged.
34 lines
741 B
YAML
34 lines
741 B
YAML
name: Deploy to Cloudflare Pages
|
|
permissions:
|
|
contents: read
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths-ignore:
|
|
- '**.md'
|
|
- 'LICENSE'
|
|
- '.gitignore'
|
|
- '.editorconfig'
|
|
- '.vscode/**'
|
|
- 'docs/**'
|
|
- '.prettierrc*'
|
|
- '.eslintrc*'
|
|
- '.github/ISSUE_TEMPLATE/**'
|
|
- '.github/PULL_REQUEST_TEMPLATE/**'
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
deploy:
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 60
|
|
steps:
|
|
- uses: actions/checkout@v5
|
|
- name: Deploy to Cloudflare Pages
|
|
uses: cloudflare/wrangler-action@v3
|
|
with:
|
|
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
|
|
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
|
|
command: pages deploy
|