在 GitHub 操作中按计划执行步骤 运行 时检查条件
Checking condition when step is running on schedule in GitHub Actions
我们在 GitHub Actions
中有工作流,它有两种触发事件、e.g.pull-请求和按计划触发的类型。
除运行测试步骤外,大部分步骤相同。我们想要的是:
- 在没有提供特定标签的拉取请求中:执行冒烟测试
- 根据带有特定标签的拉取请求或按计划:执行完整测试
可以使用contains(github.event.pull_request.labels.*.name, 'full-tests')
检查标签。
问题是如何检查它何时运行准时?根据我对文档的理解,按计划进行时,没有 github.event
的有效负载。但是检查 github.event == null
似乎不起作用。
有没有具体的方法可以查看运行是否如期?
在这种情况下,您要使用的是 github.event_name
变量,它表示 触发工作流 运行 的事件的名称 github context.
在您的情况下,如果工作流 运行 在预定事件上触发,要 运行 作业或步骤,您将需要使用:
if: ${{ github.event_name == 'schedule' }}
我们在 GitHub Actions
中有工作流,它有两种触发事件、e.g.pull-请求和按计划触发的类型。
除运行测试步骤外,大部分步骤相同。我们想要的是:
- 在没有提供特定标签的拉取请求中:执行冒烟测试
- 根据带有特定标签的拉取请求或按计划:执行完整测试
可以使用contains(github.event.pull_request.labels.*.name, 'full-tests')
检查标签。
问题是如何检查它何时运行准时?根据我对文档的理解,按计划进行时,没有 github.event
的有效负载。但是检查 github.event == null
似乎不起作用。
有没有具体的方法可以查看运行是否如期?
在这种情况下,您要使用的是 github.event_name
变量,它表示 触发工作流 运行 的事件的名称 github context.
在您的情况下,如果工作流 运行 在预定事件上触发,要 运行 作业或步骤,您将需要使用:
if: ${{ github.event_name == 'schedule' }}