#Solana #RPC #GitHub Actions #数据采集
需要构建一个 Solana 生态的自动化数据报告系统:每日采集链上数据、聚合第三方指标、 输出可读报告。本机在大陆网络环境,直连 Solana RPC 与多数数据源要么超时要么被墙。 解决方案是把定时任务放到 GitHub Actions 的海外 runner 上执行。
ubuntu-latest runner 部署在 GitHub 的海外基础设施,天然绕开大陆网络限制:
solana rpc、api.llama.fi、api.gateio.ws 都能直连。
这是大陆开发者在受限网络环境下最省事的「免费海外服务器」。
name: Daily RPC collect
on:
schedule:
- cron: "0 2 * * *" # 每天 02:00 UTC
workflow_dispatch:
jobs:
collect:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.12"
- run: pip install requests
- name: Collect data
run: python scripts/collect.py
- name: Commit and push
run: |
git config user.name "bot"
git config user.email "bot@toolgen.xyz"
git add .
git diff --cached --quiet || git commit -m "data: daily update"
git push
同一份采集结果输出三种格式,覆盖不同消费场景:
actions/github-script 在失败时创建 issue 告警。系统稳定运行后:每日报告自动生成并部署,Markdown 报告在仓库可读, HTML 仪表盘在线可访问,全程零人工干预。这套「海外 runner + 定时任务 + 自动部署」 的组合可以复用到任何需要定时抓取数据的场景。