如何在工作流程中使用 Github 操作的输出?
How can I use a Github action's output in a workflow?
让我们以 复合 操作为例,在 Github 的文档中找到:
name: 'Hello World'
description: 'Greet someone'
inputs:
who-to-greet: # id of input
description: 'Who to greet'
required: true
default: 'World'
outputs:
random-number:
description: "Random number"
value: ${{ steps.random-number-generator.outputs.random-id }}
runs:
using: "composite"
steps:
- run: echo Hello ${{ inputs.who-to-greet }}.
shell: bash
- id: random-number-generator
run: echo "::set-output name=random-id::$(echo $RANDOM)"
shell: bash
- run: ${{ github.action_path }}/goodbye.sh
shell: bash
我们如何在调用此操作的外部工作流中使用该特定输出 random-number
?我尝试了以下代码片段,但目前似乎工作流无法从操作中读取输出变量,因为它刚出来是空的 - 'Output - '
jobs:
test-job:
runs-on: self-hosted
steps:
- name: Call Hello World
id: hello-world
uses: actions/hello-world-action@v1
- name: Comment
if: ${{ github.event_name == 'pull_request' }}
uses: actions/github-script@v3
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
github.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: 'Output - ${{ steps.hello-world.outputs.random-number.value }}'
})
看来我的尝试是正确的,除了一个细节:
而不是:
${{ steps.hello-world.outputs.random-number.value }}
应该在没有.value
的情况下引用:
${{ steps.hello-world.outputs.random-number}}
现在可以了。
让我们以 复合 操作为例,在 Github 的文档中找到:
name: 'Hello World'
description: 'Greet someone'
inputs:
who-to-greet: # id of input
description: 'Who to greet'
required: true
default: 'World'
outputs:
random-number:
description: "Random number"
value: ${{ steps.random-number-generator.outputs.random-id }}
runs:
using: "composite"
steps:
- run: echo Hello ${{ inputs.who-to-greet }}.
shell: bash
- id: random-number-generator
run: echo "::set-output name=random-id::$(echo $RANDOM)"
shell: bash
- run: ${{ github.action_path }}/goodbye.sh
shell: bash
我们如何在调用此操作的外部工作流中使用该特定输出 random-number
?我尝试了以下代码片段,但目前似乎工作流无法从操作中读取输出变量,因为它刚出来是空的 - 'Output - '
jobs:
test-job:
runs-on: self-hosted
steps:
- name: Call Hello World
id: hello-world
uses: actions/hello-world-action@v1
- name: Comment
if: ${{ github.event_name == 'pull_request' }}
uses: actions/github-script@v3
with:
github-token: ${{secrets.GITHUB_TOKEN}}
script: |
github.issues.createComment({
issue_number: context.issue.number,
owner: context.repo.owner,
repo: context.repo.repo,
body: 'Output - ${{ steps.hello-world.outputs.random-number.value }}'
})
看来我的尝试是正确的,除了一个细节:
而不是:
${{ steps.hello-world.outputs.random-number.value }}
应该在没有.value
的情况下引用:
${{ steps.hello-world.outputs.random-number}}
现在可以了。