繁体   English   中英

如何使用 github 操作从 Github 中的存储库 A 的工作流作业触发存储库 B(下游作业)中的工作流作业

[英]How to trigger a workflow job in repository B(downstream job) from workflow job of repository A in Github using github actions


我有一个要求,其中有 3 个 GitHub 存储库。
回购 A
回购 B
回购 C

当手动执行 Repo A 的参数化作业 1(使用 workflow_disptach)时,工作流开始。
传递了四个参数。
这个job1触发了Repo B(job2)和Repo C(job3)->(downstream jobs)的另外两个job
成功执行 Repo B 和 C 的作业后,应执行包含所有 4 个参数的 Repo A 的 job1(shell 脚本)。

如何在不同的存储库中触发工作流程?
如何将代码签出到除 GITHUB_WORKSPACE env 之外的其他位置?
如何使用 Github Actions 在 Github 中实现上述用例?

如何在不同的存储库中触发作业工作流?

正如soltex在评论中所说,您可以使用dispatches触发使用repository_dispatch触发器的任何存储库上的工作流。

Github API 存储库文档

这是使用 Github API 发送dispatch event的工作流示例: 触发- 接收器

如何使用 Github Actions 在 Github 中实现上述用例?

Github Marketplace上有一些操作可以更轻松地调度事件。

这是执行此操作的工作流示例: 触发- 接收器

如何将代码签出到除 GITHUB_WORKSPACE env 之外的其他位置?

如果在同一个存储库中,一旦您使用actions/checkout出访问 GITHUB_WORKSPACE,您可以使用 shell 命令(例如: cd path/to/specific/file )导航存储库以访问您想要的文件夹或文件。

现在,如果您想从另一个存储库访问特定文件或文件夹,则必须将其克隆到工作流程的某个位置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM