【问题标题】:GitHub Actions: How to view inputs for workflow_dispatch?GitHub Actions:如何查看 workflow_dispatch 的输入?
【发布时间】:2022-11-10 16:58:51
【问题描述】:

我的想法是在每个管道运行时写入来自 workflow_dispatch 的输入。

例如,在 Bitbucket 管道中,输入参数如下所示风俗-

有没有办法为 GitHub 做类似的事情?

【问题讨论】:

标签: github github-actions cicd


【解决方案1】:

尽管这不能直接回答您的问题,但我将其添加到此处,因为这是我寻找有关如何输出所有工作流程输入的答案的地方。

就我而言,我使用的是workflow_dispatch 触发器 - 如果您使用的是不同的触发器,则为 YMMV,但我怀疑它会以相同的方式工作。

与提出的其他答案一样,您需要在工作中以step 的身份执行此操作:

on:
  workflow_dispatch:
    inputs:
      myInput:
        default: "my input value"
jobs:
  myJob:
    steps:
      - name: Output Inputs
        run: echo "${{ toJSON(github.event.inputs) }}"

这将产生您可以在 GitHub 操作执行输出中查看的输出,其中输入序列化为 JSON:

{
  "myInput": "my input value"
}

【讨论】:

    【解决方案2】:

    如果您只有几个简单的输入值(来自workflow_dispatch),那么您可以将它们包含在作业名称中:

    on:
      workflow_dispatch:
        inputs:
          my_value:
            description: 'My input value'
            required: true
            default: 'foo'
            type: string
    
    jobs:
      my_job:
        name: "My job [my_value: ${{ github.event.inputs.my_value }}]"
        runs-on: ubuntu-latest
    
        steps:
        ....
    

    这样,您将能够直接在 GitHub UI 中查看输入。

    【讨论】:

    • 代替他们允许更改实际名称,这是一个救生员。谢谢!
    【解决方案3】:

    恐怕你不能真正改变它们在列表中的显示方式。

    您所能做的就是将输入变量记录在操作本身中,如下所示:

    jobs:
      debugInputs:
        runs-on: ubuntu-latest
        steps:
        - run: |
            echo "Var1: ${{ github.event.inputs.var1 }}"
            echo "Var2: ${{ github.event.inputs.var2 }}" 
    

    如果您想查看它们的摘要,可以使用noticewarning 消息标记:

    【讨论】:

    • 好吧,这完全是 github 团队的疏忽。设置作业节点绝对应该包含使用的任何输入变量,否则无法真正证明给定作业使用了哪些值。
    【解决方案4】:

    我一直在寻找类似的东西并登陆了记录+写信给Job Summary

    我创建了a small action that can easily be used as a first step in your workflow,因为我发现自己需要

    【讨论】:

      猜你喜欢
      • 2022-01-17
      • 2022-06-10
      • 1970-01-01
      • 2022-01-06
      • 2022-08-18
      • 1970-01-01
      • 2021-05-10
      • 1970-01-01
      • 2021-09-23
      相关资源
      最近更新 更多