【发布时间】:2022-08-15 13:01:03
【问题描述】:
大家好,我正在构建要使用的 Github 操作工作流掌握和开发分支机构。 我知道我可以通过重用下面的操作来检查分支,但是我实际上如何从手动 workflow_dispatch 下拉列表中传递变量?
uses: actions/checkout@v2
with:
ref: develop
由于只能在默认分支中创建工作流,因此唯一的解决方法是创建重用核心工作流并将分支作为参数传递的触发工作流。
更新这是主(生产)分支的代码
name: Trigger ECR deploy
on:
release:
types: [published]
workflow_dispatch:
jobs:
deploy-terraform:
uses: <reusable-workflow-path>
with:
AWS_REGION: \"ap-south-1\"
ECR_REPOSITORY: \"repo-name-here\"
BRANCH: \"master\"
secrets:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
这是另一个用于暂存环境的文件
name: Trigger ECR deploy
on:
release:
types: [published]
workflow_dispatch:
jobs:
deploy-terraform:
uses: <reusable-workflow-url>
with:
AWS_REGION: \"ap-south-1\"
ECR_REPOSITORY: \"repo-name-here\"
BRANCH: \"develop\"
ENVIRONMENT: \"staging\"
secrets:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
这两个文件目前都在 master 分支中。我在开发分支中重新创建了暂存文件(我保持文件名相同)。但是,当我去触发工作流程时,我仍然会收到此错误,如屏幕截图所示。我传递给可重用工作流的参数就像一种解决方法。
-
Since workflows can be created only in default branch。这种说法是不正确的。工作流需要位于默认分支上才能显示在行动Github 存储库上的选项卡,但您可以在多个分支中拥有健全的工作流程。在您的情况下,您可以在掌握和开发如果您愿意,每个都有不同的实现。你试过了吗? -
嗨@GuiFalourd,我不知道。我刚刚尝试过,但是当我尝试在工作流调度下拉列表中切换分支时,我仍然看到该错误。我有 2 个具有相同名称和相同标题的文件(名称:**)。我假设如果文件名相同,则可以链接不同分支中的 2 个文件,但它看起来不像。
-
您能否详细说明您尝试编辑问题的内容? ???
-
谢谢@GuiFalourd,我已经用我的工作流文件代码 sn-ps 更新了这个问题。
-
好的。如果工作流程,一切都应该按预期工作文件名在默认分公司和开发分支。但是,您如何称呼那里的可重用工作流程?您是否也在使用分支名称来指定需要使用哪个版本的可重用工作流(使用
@main或@develop)?
标签: github github-actions