如何有条件地运行可重用的工作流程?

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

我的 GitHub 操作中有以下工作流程:

name: Tests e2e iOS App

on:
  workflow_dispatch:
    inputs:
      skip:
        type: boolean
        required: true
        default: false

jobs:
  build-simu-ios-zip:
    name: Build iOS simulator zip
    uses: ./.github/workflows/reusable-e2e-buildsimuioszip.yml
    secrets: inherit
    with:
      environment: ${{ inputs.environment }}

我想运行该作业

build-simu-ios-zip
有条件,我添加以下内容:

jobs:
  build-simu-ios-zip:
    name: Build iOS simulator zip
+   if: ${{ inputs.skip == 'false' }}
    uses: ./.github/workflows/reusable-e2e-buildsimuioszip.yml
    secrets: inherit
    with:
      environment: ${{ inputs.environment }}

但是该作业会自动跳过。

我还尝试将输入传递到可重用工作流程,并从那里有条件地进行输入,但它也跳过了。

如何在 GitHub Action 中制作有条件可重用的工作流程?

yaml continuous-integration devops github-actions jobs
1个回答
1
投票

我在here做了一些测试,并且使用带有单引号的

if: ${{ inputs.skip == 'false' }}
'
不起作用,因为您正在将
boolean
类型与
string
进行比较。

但是,我发现有两个有效的选择:

  • if: ${{ inputs.skip == false }}
    (无报价)

  • if: ${{ ! inputs.skip }}
    (因为它是布尔输入,但带有
    !

注意:我使用此工作流程进行测试。

© www.soinside.com 2019 - 2024. All rights reserved.