Files
pay/.gitea/workflows/checks.yml
wangjia b9f89f6526 ci: 打 v* tag 自动发版到 ali(Gitea Actions)
新增 Gitea Actions 流水线,复刻本地 deploy.sh 到 CI,打 v* tag 即自动发版:
- .gitea/workflows/deploy.yml:v*.*.* tag 触发 → go test → 交叉编译 linux/amd64
  → 传 ali → 备份 payd.bak → 切换 → systemctl restart pay → 探活(失败自动回滚)
- .gitea/workflows/checks.yml:PR/合并 main 跑 go vet+build+test 静态闸
- scripts/ci/deploy.sh:本地 deploy.sh 的 CI 版(从 secret 注入部署私钥 + 主机,
  不用 ~/.ssh 的 ali 别名);notify.sh:Telegram 通知(secrets 未配则静默跳过)
- runs-on mac,复用 jiu 的自建 runner;业务密钥仍走 ali /etc/pay/pay.env
- README 部署段补 CI 路径 + 所需 secrets(ALI_SSH_KEY/ALI_HOST/ALI_USER)

首次需在 pay 仓 Gitea → Settings → Actions → Secrets 配 3 个 ALI_* secret。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019UQmqWmV67sXGLrb3U1XXn
2026-07-05 12:16:36 +08:00

36 lines
678 B
YAML

name: Checks
# PR 与合并 main 时跑 Go 静态闸(vet + build + test),发版前先绿。
on:
pull_request:
push:
branches: [main]
concurrency:
group: checks-${{ gitea.ref }}
cancel-in-progress: true
jobs:
go:
runs-on: mac
env:
GOPROXY: https://goproxy.cn,direct
steps:
- uses: actions/checkout@v4
- name: go vet
run: |
export PATH="/opt/homebrew/bin:$PATH"
go vet ./...
- name: go build
run: |
export PATH="/opt/homebrew/bin:$PATH"
go build ./...
- name: go test
run: |
export PATH="/opt/homebrew/bin:$PATH"
go test ./...