GitHub Actions中的链测试和发布工作流



我有两个条件,希望在go项目的GH操作中运行我的工作流

  • 在每个PR上运行单元测试(我已经用下面的workflow.yaml处理过了

name: unit-tests
on: [ pull_request ]
jobs:
unit-tests:
runs-on: Linux
steps:
- name: checkout project
uses: actions/checkout@v2
- name: dynamically retrieve go version
uses: arnested/go-version-action@v1
id: go-version
- name: setup go ${{ steps.go-version.outputs.minimal }}
uses: actions/setup-go@v2
with: 
go-version: ${{ steps.go-version.outputs.minimal }}
- name: run unit tests
run: go test -race -cover -v ./... -run Unit

我的第二个要求是:

  • 运行单元测试,如果测试成功并且目标分支为master,则继续创建标记+发布

我的问题如下:由于on子句在每个工作流中都是唯一的,有没有一种方法可以利用上面的工作流(而不需要编写或多或少的克隆(,将其集成到第二个用例中?

首先,自2021年10月开始提供重用工作流

这意味着您可以创建一个工作流on master分支;呼叫";(重用(您的第二个(现有的(工作流,其本身及其on:指令

通话内容如下:

jobs:
call-workflow-passing-data:
uses: octo-org/example-repo/.github/workflows/reusable-workflow.yml@main
with:
username: mona
secrets:
envPAT: ${{ secrets.envPAT }}

最新更新