inkrss 是一个 RSS 订阅服务,可以通过 GitHub 和 Cloudflare workers 自行部署。
导入库
因为会涉及到的cloudflare api 将保存在secrets中,故开私人仓库降低风险。
黏贴 https://github.com/pureink/inkrss
新建workflow
黏贴下面的内容
name: Deploy
on:
push:
branches:
jobs:
deploy:
runs-on: ubuntu-latest
name: Deploy to Cloudflare Workers
steps:
- uses: actions/checkout@master
- name: Publish
uses: cloudflare/wrangler-action@1.3.0
with:
apiToken: ${{ secrets.CF_API_TOKEN }}
wranglerVersion: '1.13.0'
黏贴下面的(注意修改自己的仓库
name: fetch origin
on:
push:
branches:
- main
schedule:
- cron: 0 */24 * * * # 每隔12小时
jobs:
update_external_airflow_fork:
runs-on: ubuntu-latest
steps:
- uses: TobKed/github-forks-sync-action@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }} # 令牌
upstream_repository: pureink/inkrss # 上游仓库
target_repository: gchengyu/inkrss_new # 你要推送的仓库
upstream_branch: main # 默认是拉取上游仓库的 master 分支
target_branch: origin # 默认推送到你的仓库 master 分支
force: false # 是否强制推送
tags: true # 确定是否使用 - tags
获取CF_API_TOKEN并填入secrets
NameCF_API_TOKEN
Value就是刚刚复制的令牌
获取KV的id并保存备用
获取账户id并保存备用
然后回去填wrangler.toml
下面的内容黏贴进去填好
name = "inkrss"
type = "webpack"
account_id = "" #上面获得的账户id
workers_dev = true
route = ""
zone_id = ""
webpack_config = "webpack.config.js"
target_type = "webpack"
kv_namespaces = [
{ binding = "KV" , id = ""} #id是上面获得的KV的id
]
[triggers]
crons = ["*/1 * * * *"]
[site]
bucket = "./public"
entry-point = "./"
保存即可,会自动部署的。