如果我有一个公共仓库,并设置了一个工作流,以便在推送到主分支时触发工作流程序,那么我是否可以从另一个仓库触发另一个工作流程程序?
我想这样做的原因是我的公共仓库用于允许任何人进行贡献,但我想创建另一个私有仓库,用于处理构建过程/部署,而这个仓库不应该是公开的。是否有更好的方法来处理GitHub操作中的此类用例?- 我基本上不希望我的服务器上的构建过程是公开的。
如果我有一个公共仓库,并设置了一个工作流,以便在推送到主分支时触发工作流程序,那么我是否可以从另一个仓库触发另一个工作流程程序?
我想这样做的原因是我的公共仓库用于允许任何人进行贡献,但我想创建另一个私有仓库,用于处理构建过程/部署,而这个仓库不应该是公开的。是否有更好的方法来处理GitHub操作中的此类用例?- 我基本上不希望我的服务器上的构建过程是公开的。
经过更多的研究,我发现了这个市场插件,它可以解决我的问题,并调用另一个存储库来触发另一个构建,这是一个私有存储库,您可以输入您选择的名称并拥有一个面向公众的前端存储库,同时将所有的CI/CD内容保存在一个私有存储库中:
name: Trigger automation tests
steps:
- uses: actions/github-script@v6
with:
github-token: ${{ secrets.PERSONAL_TOKEN }}
script: |
await github.rest.actions.createWorkflowDispatch({
owner: '*****',
repo: '*****',
workflow_id: '*****.yml',
ref: 'main'
})
owner = 组织/个人GitHub账户名。
repo = 目标仓库名称。
workflow_id = 目标工作流程的yml文件名。
ref = 在目标仓库中要运行的分支。