GitHub Actions:您可以构建可重复使用的工作流程!

2025-06-05

GitHub Actions:您可以构建可重复使用的工作流程!

希望您喜欢 2021 年 Actions Hackathon。参赛者提交的作品充分利用了现有的 Actions,这令我印象深刻。你猜怎么着?GitHub 推出了一项名为“可重用工作流”的新功能,让参赛者能够更轻松地使用现有的工作流和 Actions。

可重复使用的工作流有哪些好处?

在此功能推出之前,如果您想重用现有工作流程,必须将其复制粘贴到新的工作流程中。这会使工作流程显得过于冗长。作为软件工程师,我们希望遵循最佳实践。我最喜欢的编写简洁代码的最佳实践之一是 DRY 原则,它是“不要重复自己”的缩写。采用可重用工作流程还可以更轻松地管理工作流程。现在,借助可重用工作流程,您可以编写简洁、易于维护的操作。

如何创建可重复使用的工作流程?

  • 需要了解的术语
    • 调用者工作流:使用另一个工作流的工作流
    • 调用工作流:可重用的工作流

workflow_call您可以通过向被调用的工作流添加触发器来使工作流可重复使用。workflow_call触发器如下所示:

on: 
  workflow_call:
Enter fullscreen mode Exit fullscreen mode

在触发器内部workflow_call,您可以传入必要的输入和机密,类似于以下示例:

on:
  workflow_call:
    inputs:
      ring:
        description: 'Identifier for the target deployment ring'
        default: 'ring-0'
        required: false
        type: string
      environment:
        required: false
        type: string
    secrets:
      token:
        required: false
Enter fullscreen mode Exit fullscreen mode

调用者工作流程可以调用多个工作流程;但是,被调用的工作流程不能调用其他可重复使用的工作流。

一个工作流程如何才能访问可重用工作流程?

如果工作流满足以下条件之一,它就可以访问另一个工作流:

  • 被调用的工作流存储在公共存储库中。
  • 两个工作流程都在同一个存储库中。
  • 被调用的工作流存储在内部存储库中,该存储库的设置允许对其进行访问。点击此处了解如何配置这些设置。

资源

以下是可以帮助您构建和使用自己的可重用工作流程的资源列表:

加入 GitHub Actions Hackathon

从现在起至 12 月 8 日,GitHub 将举办一场黑客马拉松。参与即有机会赢取礼品卡和小礼品。挑战在于利用现有操作创建并提交工作流程。GitHub Marketplace 目前拥有超过10,000 个操作

阅读此处了解有关参加黑客马拉松的更多信息。

如果您需要任何有关操作的帮助,我将在此主题中回答您的问题。

告诉我一个可重复使用的工作流程会给您带来好处的用例!

文章来源:https://dev.to/github/github-actions-you-can-build-reusable-workflows-4gc7
PREV
如何创建出色的 GitHub 赞助商资料为什么要创建高质量的赞助商资料?
NEXT
GitHub Actions:构建您的第一个工作流程