我计划使用Docker将我们的Travis CI构建迁移到GitHub Actions进行每次提交测试。
我可以在本地可复制地运行这些新的GitHub操作吗?是否有一种通用方法可以在本地运行任何GitHub Action?
答案 0 :(得分:28)
有些工具已经提到过act
,但并不完美。
您并不孤单。类似的问题是:
我对这些问题的解决方案是:
run: your
command to run
答案 1 :(得分:10)
自nektos/act(预发行版)以来,您可以使用支持yaml语法的0.2.0。
查看他们的latest版本。
答案 2 :(得分:5)
您最好的选择是https://github.com/nektos/act,但它还不支持yaml语法,尽管也有很多有趣之处:https://github.com/nektos/act/issues/80 https://github.com/nektos/act/issues/76和https://github.com/nektos/act/issues/74
Gitlab有gitlab-runner exec docker job-name
,但这就是Gitlab:)
答案 3 :(得分:5)
测试 Github 操作的一种方法是创建一个私有存储库,并在那里迭代操作配置。因此,您可以避免因提交损坏而污染实际存储库。
我知道,这不是问题的直接答案 - 这不是本地方式。但一开始我并没有想到这一点,我认为这对于许多用例来说已经足够了。
答案 4 :(得分:0)
使用docker容器,这个工具叫act,可以在这里找到,https://github.com/nektos/act 您可以在 docker 容器内本地运行所有 github 操作。 注意:act 为要运行的操作构建所有必要的容器。您所做的就是按照有关如何使用该工具的文档进行操作