Files
life-echo/.github/workflows
penghanyuan 6b81e11903 fix(ci): harden SSH host setup in API deploy workflow
Add retries for ssh-keyscan and fall back to non-strict host checking for transient network failures so reruns do not fail early before deployment steps.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-14 15:59:19 +02:00
..
2026-03-22 19:06:37 +08:00
2026-05-11 11:33:07 +08:00
2026-05-11 11:33:07 +08:00

GitHub Actions 说明

APIDocker Build and Deploy

  • 工作流文件 docker-build-deploy.yml
  • 测试 job:在构建镜像前于 api/ 下执行 uv sync --devpytest
  • Secrets:预发无前缀 SSH_* / DEPLOY_PATH、生产 PROD_*、镜像 ALIYUN_CR_* — 详见 SETUP.md
  • 分支 / Tagmain → Staging 服务器;语义化 tag v*.*.* → Production 服务器;路径过滤为 api/** 与本 workflow。
  • 手动补跑workflow_dispatch 仅支持 main / masterStagingvMAJOR.MINOR.PATCH tagProduction。其它 ref 会在测试与构建前失败。

头部注释与 docker-build-deploy.yml 内说明为最新权威描述。

Android Release

构建签名 APK见本文件历史版本中 Android 小节或仓库内 app 模块文档(若已迁移)。

App Expo Deploy

  • 工作流文件app-expo-deploy.yml
  • 自动触发mainstage,使用 app-expo/.env.staging 构建 APK artifactv*.*.* tag → prod,使用 app-expo/.env.production 并创建 GitHub Release。
  • 手动触发dev 可用于内部测试包;stage 只允许在 main / master 上补跑;prod 需要选择 vMAJOR.MINOR.PATCH tag或在 main / master 上填写语义化 version
  • 产物规则Staging APK 仅上传为 GitHub Actions artifactProduction APK 才创建正式 GitHub Release。