用途:为不同技术栈创建高效、安全的 GitHub Actions 工作流,实现持续集成与部署自动化。适用场景包括自动化测试与部署、构建 Docker 镜像并推送到镜像仓库、部署到 Kubernetes 集群、运行安全扫描、以及为多环境实现矩阵构建。
主要能力:资料提供多种常见工作流模式。测试工作流支持在 push 与 pull_request 上触发,使用 matrix 指定 node-version 如 18.x、20.x,执行 actions/checkout@v4、actions/setup-node@v4,并运行 npm ci、npm run lint、npm test,最后上传覆盖率。构建与推送镜像工作流在 main 分支与 v* 标签触发,登录 ghcr.io,用 docker/metadata-action@v5 生成标签,再用 docker/build-push-action@v5 构建推送并启用缓存。Kubernetes 部署工作流通过 aws-actions/configure-aws-credentials@v4 配置凭证,执行 aws eks update-kubeconfig 后 kubectl apply、rollout status 并验证。矩阵构建在 ubuntu、macos、windows 上组合多个 Python 版本运行 pytest。此外还包含可复用工作流、Trivy 与 Snyk 安全扫描、带审批的生产部署及 Slack 通知。
使用方式:将上述模式写入 .github/workflows 目录的 YAML 文件即可;可复用工作流通过 workflow_call 定义 inputs 与 secrets,再以 uses: ./.github/workflows/reusable-test.yml 调用。参考文件包括 assets/test-workflow.yml、assets/deploy-workflow.yml、assets/matrix-build.yml 与 references/common-workflows.md。
最佳实践:使用具体版本如 @v4 而非 @latest、缓存依赖、用 secrets 管理敏感数据、在 PR 上实现状态检查、用矩阵做多版本测试、设置合适权限、抽离可复用工作流、为生产加审批门禁、失败时通知、敏感负载使用自托管运行器。
限制:资料未提供具体收费、价格、平台独占性或效果保证信息。