如何在 Github 操作工作流文件中使用片段以避免重复?

V. *_* F. 7 yaml github code-snippets github-actions

问题:我们为 CI 使用 github 操作工作流,并且我们有许多 github 存储库。我需要能够一次更改每个存储库可重复的所有内容。

是否可以在 github 操作工作流 yml 文件中使用位于不同存储库中的 mb 的某个片段。

dab*_*248 6

您可以在工作流程中包含其他公共和本地操作,这样您就可以重复使用常见步骤。使用版本化操作{owner}/{repo}@{ref}

steps:    
  - uses: actions/setup-node@74bc508 # Reference a specific commit
  - uses: actions/setup-node@v1      # Reference the major version of a release   
  - uses: actions/setup-node@v1.2    # Reference a minor version of a release  
  - uses: actions/setup-node@master  # Reference a branch
Run Code Online (Sandbox Code Playgroud)

..或本地操作./path/to/dir

jobs:
  my_first_job:
    steps:
      - name: Check out repository
        uses: actions/checkout@v2
      - name: Use local my-action
        uses: ./.github/actions/my-action
Run Code Online (Sandbox Code Playgroud)

https://help.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idstepsuses