GitHub Actions 用于直接在 GitHub 仓库中自动化软件工作流。适用于搭建仓库的 CI/CD 流水线、自动化构建/测试/部署、创建可复用工作流组件、配置自托管运行器、管理工作流机密与变量,以及调试失败的工作流运行。
工作流定义在 .github/workflows/ 目录下,包含触发条件(on:push、pull_request、schedule cron、workflow_dispatch)、jobs 及其 steps。常见能力包括:矩阵构建(strategy.matrix)、作业依赖(needs)、环境与保护规则、机密(secrets)与变量(vars)、依赖缓存(actions/cache)、制品上传下载(upload/download-artifact)、Docker 构建推送(docker/login-action、docker/build-push-action)、可复用工作流(workflow_call)。
用法要点:每个新作业需自行 checkout、装工具、锁定依赖并传递制品,作业间不共享工作目录。调试可设置机密 ACTIONS_RUNNER_DEBUG 与 ACTIONS_STEP_DEBUG 为 true。
限制与安全:示例为独立 YAML 片段,并非完整可部署流水线。采用前需审查不可信事件输入、最小权限、受保护环境与机密暴露;镜像推送、部署与运行器注册均需授权。不要使用历史硬编码运行器版本,注册令牌应短时有效且不打印;自托管运行器视为宿主机代码执行,切勿在持久特权运行器上运行不可信 fork PR 代码。未获明确批准不得部署生产。要求测试与安全检查失败时使作业失败,continue-on-error 仅用于已声明的非阻塞建议性检查。第三方 action 建议固定到完整不可变提交 SHA。本资料为纯文档导入,未捆绑上游脚本与模板,部分细节暂未提供。