首页/开发/CI/CD 与发布速查/GitHub Actions 表达式与状态函数
工具链要点63 条

GitHub Actions 表达式与状态函数

在 ${{ }} 中做条件与取值:success()/failure()/always()/cancelled() 控制运行与否,fromJSON、hashFiles 等函数做数据变换。

CI/CD 与发布速查开发更新于 2026-10-12
状态函数success、failure、always、cancelled
数据函数fromJSON、toJSON、hashFiles
默认语义步骤默认在 success() 时运行
典型失败时上传日志、条件化部署

失败时收集日志

失败时收集日志
steps:
  - run: make test
  - if: failure()
    uses: actions/upload-artifact@v4
    with:
      name: logs
      path: logs/
清理步骤用 if: always():默认语义会在失败时跳过它们。

易错点

  • 关键风险步骤也用 always():失败后继续执行部署类动作
  • 表达式里直接引用 secrets:不支持,必须先赋 env

数据来源与参考

  • GitHub Docs《Evaluate expressions》
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌