工作流调度在主分支以外的分支上运行

问题描述 投票:0回答:1

我为个人项目制作了 CI/CD 管道。我已使用以下方法尝试仅在主分支上运行管道。 文档建议为此目的使用工作流调度,我已使用以下代码片段来获得此行为。

on:
  workflow_dispatch:
    branches: 
      - main

但是,当我转到 Github 操作屏幕手动运行管道时,我也可以尝试在其他分支上运行它。理想情况下,我想仅在主干上运行这项工作(发布),而不是其他。

有什么办法可以强制执行吗?

供参考,管道是此YML的一部分。您还可以在

操作屏幕
上看到在Test分支上运行的发布作业。

github-actions
1个回答
2
投票

您可以向您的作业添加

if: github.ref == 'refs/heads/master'
,以防止其在给定分支上运行。

或者像

if: startsWith(github.ref, 'refs/heads/release')
如果您只想在发布分支上运行

示例:

jobs:
  Setup:
    runs-on: ubuntu-latest
    if: github.ref == 'refs/heads/main'
    steps:
      ...
© www.soinside.com 2019 - 2024. All rights reserved.