⚙️
GitHub Actions
从 Workflow 语法到矩阵构建、缓存、复用工作流与安全实践,用 GitHub Actions 把 CI/CD 自动化跑起来。
- 01什么是 GitHub Actions认识 GitHub Actions——事件驱动的自动化流水线,理解 CI/CD 与 workflow、job、step 的核心概念。
- 02第一个 Workflow亲手创建并运行你的第一个 GitHub Actions 工作流,逐行理解 name、on、jobs、runs-on、steps 各字段。
- 03触发事件:on 的写法深入讲解 GitHub Actions 的 on 字段——push、pull_request、schedule、workflow_dispatch 及分支/路径过滤。
- 04Jobs 与 Steps理解 workflow 中 jobs 与 steps 的结构、作用域、依赖关系,掌握并行与串行的编排方式。
- 05Runner 与运行环境认识真正执行 job 的机器 runner,掌握 GitHub 托管 runner 的 OS 标签、版本锁定、容器与自托管 runner 的概念。
- 06运行 Shell 命令掌握 step 中 run 的多行命令、shell 解释器选择、工作目录切换、超时与容错等常用技巧。
- 07使用 Action 与官方动作理解 uses 语法与 Action 版本固定,掌握官方常用动作 checkout / setup-* 的用法与供应链安全
- 08矩阵构建 Matrix用 strategy.matrix 一套配置覆盖多版本多操作系统,掌握 exclude/include 与失败控制
- 09Artifacts 构件传递用 upload/download-artifact 在 job 间传递构建产物,区分 artifact 与 cache 的用途边界
- 10缓存依赖提速用 actions/cache 缓存 node_modules、pip、go mod 等依赖目录,避免每次运行都重新下载安装
- 11环境变量与 Secrets用 env 配置公开变量、用 secrets 注入机密,理解 GitHub 如何自动给日志打码与变量跨 step 传递
- 12条件与表达式用 if 配合 github/needs 等上下文和 success/failure 等函数,精确控制 job 与 step 是否执行
- 13Job 间数据传递通过 job 级 outputs 与 needs,把上游 job 计算出的数据(如版本号、镜像 tag)传递给下游 job
- 14复用工作流 Reusable Workflows用 on: workflow_call 把整段 workflow 抽成可复用单元,通过 inputs/secrets/outputs 与调用方双向传参
- 15自定义 Action掌握三种 Action 类型(JavaScript / Composite / Docker),学会用 action.yml 自研并复用团队内部动作
- 16并发控制与环境审批用 concurrency 避免重复部署相互覆盖,用 Environments 与审批门禁保护生产环境。
- 17安全最佳实践用最小权限 permissions、OIDC 免密钥访问云、secret 防护与 fork PR 陷阱守住流水线安全。
- 18实战:完整 CI/CD 流水线串起全书知识点,以一个前端项目为例设计接近生产的流水线,并给出一份综合 workflow 逐段讲解。