从另一个Github Action调用一个Github Action?

22

是否可以从一个 GitHub Action 中调用另一个(或多个)GitHub Action,以创建更专业的操作,或聚合多个小操作并创建“元 GitHub Action”?


1
GitHub仍在发展中:https://github.com/actions/runner/pull/612 https://github.com/actions/runner/issues/646 - emi
1
Github自2021年8月起已经开发了它。 - VonC
2个回答

6

据我所知,目前没有内置的功能可以实现这一点。

这是一个相关问题,在该问题中,原始发布者回复了一个解决方法,其中涉及使用从其他操作中发布的NPM软件包。 如何在GitHub Action的action.yml文件中引用其他操作?

我有一个类似的情况,我希望actions/setup-python作为NPM软件包发布,以便我可以在我的JavaScript动作中使用它。


2

虽然官方不支持,但如果没有许可问题,您可以选择以下任何一种选项:

  1. 最简单的方法是将大多数操作提供的单个.js文件(包含所有依赖项,通常由ncc打包)添加到您的操作存储库中的/dist/目录下;然后只需设置所需的INPUT_*并启动它,例如node action.js
  2. 或者,您可以将要使用的所需操作作为子存储库(或子树)添加到自己的操作存储库中,并像我为我的run-vcpkgget-cmake GitHub操作所做的那样从您的操作中使用'node'启动它。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接