如何让GitHub个Action相互通信

How to make GitHub Actions communicate with each other

我正在使用 GitHub 操作创建一个新的工作流文件。

我想获取一个动作的结果并将其用作另一个动作的输入。我怎样才能做到这一点?

例如: 我有一个动作生成我的工件的新版本号。当另一个动作提交新版本时,我想在提交消息中使用这个版本号。

您可以使用环境变量在步骤之间共享任何数据。这是一个例子:

steps:
  - run: echo "::set-env name=TIMEZONE::$(curl https://ipapi.co/timezone)"
  - run: echo "Timezone is ${{ env.TIMEZONE }}."

资源:

https://www.edwardthomson.com/blog/github_actions_16_conditionals_with_shared_data.html

除了之前的答案,还可以在 action.yml 中定义输出并在 bash 脚本中设置输出:echo ::set-output name=OUTPUT::"$OUTPUT"

步骤还可以使用运行器上的文件系统进行通信,但这种行为有点难以调试...