定义和使用作业输出
-
打开要获取其输出的作业所在的工作流文件。
-
使用
jobs.<job_id>.outputs语法定义作业的输出。 例如,以下作业定义了output1和output2输出,这些输出分别对应step1和step2的结果:jobs: job1: runs-on: ubuntu-latest outputs: output1: ${{ steps.step1.outputs.test }} output2: ${{ steps.step2.outputs.test }} steps: - id: step1 run: echo "test=hello" >> "$GITHUB_OUTPUT" - id: step2 run: echo "test=world" >> "$GITHUB_OUTPUT" -
在你想要访问这些输出的单独作业中,使用
jobs.<job_id>.needs语法可使其依赖于原始作业。 例如,以下作业检查job1是否在运行前已完成:jobs: # Assume job1 is defined as above job2: runs-on: ubuntu-latest needs: job1 -
若要访问依赖作业中的输出,请使用
needs.<job_id>.outputs.<output_name>语法。 例如,以下作业访问在job1中定义的output1和output2输出:jobs: # Assume job1 is defined as above job2: runs-on: ubuntu-latest needs: job1 steps: - env: OUTPUT1: ${{needs.job1.outputs.output1}} OUTPUT2: ${{needs.job1.outputs.output2}} run: echo "$OUTPUT1 $OUTPUT2"
后续步骤
若要详细了解作业输出和 needs 上下文,请参阅 GitHub Actions 的工作流语法 的以下部分: