首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用dawidd6 6/action-下载-工件与pull_request触发器

如何使用dawidd6 6/action-下载-工件与pull_request触发器
EN

Stack Overflow用户
提问于 2022-01-13 02:34:33
回答 1查看 1.1K关注 0票数 2

这是github工作流操作dawidd6 6/ action -下载-工件的一个问题。在https://github.com/dawidd6/action-download-artifact中没有讨论板,所以在这个论坛上问这个问题。

这就是我希望在我的GitHub回购中使用这个工作流的方式:

创建了拉请求。启动一个工作流--让我们称它为“构建工作流”--以构建整个回购和上传构建artifacts.

  • Then (另一个工作流)--我们称之为“测试工作流”--应该启动,应该使用动作下载工件并运行一些其他操作。

现在,如果我将“测试工作流”的触发器设置为pull_request,那么如何让它等待相应的“构建工作流”完成?我是否指定了run_id?

现在,我使用“workflow_run”作为运行WF的触发器。但是,当一个PR被创建时,它不会将“测试工作流”显示为对PR的检查之一。你能帮我找出正确的方式使用下载-工件动作,这将有助于我的目的吗?

EN

回答 1

Stack Overflow用户

发布于 2022-04-27 22:54:52

您可以编写两个工作流,第一个工作流是在打开或编辑拉请求时生成的,第二个工作流是在拉请求关闭和合并时执行测试的。头提交SHA可用于识别两个工作流之间的工件名称。

我要稍微修改一下你的要求。

在打开或编辑拉请求时,added).

  • Download

  • 构建一切并上传工件(例如,新提交工件,提交工件,并在关闭和合并拉请求时测试工件)。

下面是两个实现这一目标的示例工作流。您需要创建一个令牌,以便在工作流之间共享工件(参见下面的secrets.GITHUB_TOKEN )。

Build.yml

代码语言:javascript
复制
name: Build
  on:
    pull_request:
jobs:
  Build:
    steps:
      - name: Environment Variables
        shell: bash
        run: |
          ARTIFACTS_SHA=$(git rev-parse HEAD)
          BUILD_ARTIFACTS=BuildArtifacts_${ARTIFACTS_SHA}
          echo "ARTIFACTS_DIR=$ARTIFACTS_DIR" >> $GITHUB_ENV
      - name: Build
        run: make
      - name: Capture Artifacts
        uses: actions/upload-artifact@2
        with:
          name: Artifacts_${{ env.ARTIFACTS_SHA }}
          path: path/to/artifact/

Test.yml

代码语言:javascript
复制
name: Test
  on:
    pull_request:
      types: [closed]
jobs:
  Test:
    steps:
      - name: Environment Variables
        shell: bash
        run: |
          ARTIFACTS_SHA=$(git rev-parse HEAD)
          BUILD_ARTIFACTS=BuildArtifacts_${ARTIFACTS_SHA}
          echo "ARTIFACTS_DIR=$ARTIFACTS_DIR" >> $GITHUB_ENV
      - name: Download Artifacts
        uses: dawidd6/action-download-artifact@v2
        with:
          github_token: ${{ secrets.GITHUB_TOKEN }}
          workflow: Build.yml
          name: ${{ env.BUILD_ARTIFACTS }}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70690760

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档