【问题标题】:GitHub Actions on release created workflow trigger not working发布时的 GitHub 操作创建的工作流触发器不起作用
【发布时间】:2021-11-02 21:20:13
【问题描述】:

我在我的存储库的主分支上实现了一个 GitHub Actions 工作流,它在 GitHub 中为我的包创建了一个新的 release。然后我实现了另一个工作流,应该在创建发布时触发。但是,此触发器不起作用。

请注意GitHub abandoned他们自己的actions/create-release@v1项目并建议使用softprops release action

我的工作流模板如下:

name: Main release

on:
  push:
    branches:
      - main

jobs:
  release:
    name: 'Release main'
    runs-on: ubuntu-latest
    steps:
      - name: 'Checkout source code'
        uses: 'actions/checkout@v2'
        with:
          ref: ${{ github.ref }
      - name: Release
        uses: softprops/action-gh-release@v1
        with:
          draft: false
          body_path: CHANGELOG.md
          name: ${{ steps.version.outputs.version }}
          tag_name: ${{ github.ref }}
          token: ${{ github.token }}

我的on:release:created触发器工作流程如下:

name: Act on release created

on:
  release:
    types: [created]

jobs:
  build:
    name: Build
    environment: dev_environment
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Set env
        run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
      - name: Test
        run: |
          echo $RELEASE_VERSION
          echo ${{ env.RELEASE_VERSION }}

版本和标签已正确添加到 GitHub 中,所以一切看起来都正常,除了应该在版本上触发的工作流没有执行。

我该如何解决这个问题?

【问题讨论】:

    标签: github continuous-integration github-actions release


    【解决方案1】:

    GitHub Actions documentation on performing tasks in a workflow 声明如下:

    当您使用存储库的 GITHUB_TOKEN 代表 GitHub Actions 应用程序执行任务时,由 GITHUB_TOKEN 触发的事件不会创建新的工作流运行。这可以防止您意外创建递归工作流运行。

    这意味着您必须创建一个个人访问令牌并将此令牌添加到您的存储库机密中。

    要生成新的个人访问令牌,请转到您的个人developer settings 并生成新令牌。然后转到您的存储库设置并添加一个包含个人访问令牌的新密钥,将其命名为PAT

    在您的发布工作流模板中,替换:

    token: ${{ github.token }}
    

    与:

    token: ${{ secrets.PAT }}
    

    现在将触发工作流的 on release created 事件!

    注意:这种方法似乎 有点老套,但目前是解决此问题的唯一已知解决方法,可以被视为主要方法工作流集成的设计缺陷。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-28
      • 2023-02-01
      • 2021-09-10
      • 2022-12-18
      • 2021-11-06
      • 2023-01-29
      • 2013-04-02
      • 2022-11-02
      相关资源
      最近更新 更多