Github 操作如何访问输入

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

on: 
  workflow_dispatch:
    inputs:
      logLevel:
        description: 'Log level'     
        required: true
        default: 'warning'
      tags:
        description: 'Test scenario tags'

我有以下输入:

  • 我想使用哪个分支
  • 输入字段

如何访问我输入的信息,然后在 github 操作脚本中使用它?

github yaml action github-actions
2个回答
14
投票

您现在(2022 年 6 月)有一个替代方案:

您可以尝试利用新功能(2022 年 6 月)

GitHub Actions:跨手动和可重用工作流程的统一输入

workflow_dispatch
workflow_call
触发的工作流程现在可以使用
inputs
上下文访问其输入。

以前

workflow_dispatch
输入位于
event
负载中。
这使得工作流作者想要拥有一个既可重用又手动触发的工作流变得困难。

现在,工作流作者可以编写由

workflow_dispatch
workflow_call
触发的单个工作流,并使用
inputs
上下文来访问输入值。

对于由

workflow_dispatch
触发的工作流程,输入在
github.event.inputs
上下文中仍然可用,以保持兼容性。

使用 GitHub Actions 中的输入上下文

您的情况:

jobs:
  printInputs:
    runs-on: ubuntu-latest
    steps:
    - run: |
        echo "Log level: ${{ inputs.logLevel }}"
        echo "Tags: ${{ inputs.tags }}" 

5
投票

可以在这里找到更新的答案


要在 yaml 文件上使用来自

workflow_dispatch
触发器的输入,您需要使用以下语法
${{ github.event.inputs.<input_name> }}
${{ inputs.<input_name> }}

例如,您的情况:

on: 
  workflow_dispatch:
    inputs:
      logLevel:
        description: 'Log level'     
        required: true
        default: 'warning'
      tags:
        description: 'Test scenario tags'

jobs:
  printInputs:
    runs-on: ubuntu-latest
    steps:
    - run: |
        echo "Log level: ${{ github.event.inputs.logLevel }}"
        echo "Tags: ${{ github.event.inputs.tags }}" 

如果您想检查的话,这里有一个简单的演示:

您也可以查看官方文档

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