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

可重复使用的工作流有哪些好处?
在此功能推出之前,如果您想重用现有工作流程,必须将其复制粘贴到新的工作流程中。这会使工作流程显得过于冗长。作为软件工程师,我们希望遵循最佳实践。我最喜欢的编写简洁代码的最佳实践之一是 DRY 原则,它是“不要重复自己”的缩写。采用可重用工作流程还可以更轻松地管理工作流程。现在,借助可重用工作流程,您可以编写简洁、易于维护的操作。
如何创建可重复使用的工作流程?
- 需要了解的术语
- 调用者工作流:使用另一个工作流的工作流
- 调用工作流:可重用的工作流
workflow_call
您可以通过向被调用的工作流添加触发器来使工作流可重复使用。workflow_call
触发器如下所示:
on:
workflow_call:
在触发器内部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
调用者工作流程可以调用多个工作流程;但是,被调用的工作流程不能调用其他可重复使用的工作流。
一个工作流程如何才能访问可重用工作流程?
如果工作流满足以下条件之一,它就可以访问另一个工作流:
- 被调用的工作流存储在公共存储库中。
- 两个工作流程都在同一个存储库中。
- 被调用的工作流存储在内部存储库中,该存储库的设置允许对其进行访问。点击此处了解如何配置这些设置。
资源
以下是可以帮助您构建和使用自己的可重用工作流程的资源列表:
加入 GitHub Actions Hackathon
从现在起至 12 月 8 日,GitHub 将举办一场黑客马拉松。参与即有机会赢取礼品卡和小礼品。挑战在于利用现有操作创建并提交工作流程。GitHub Marketplace 目前拥有超过10,000 个操作。
阅读此处了解有关参加黑客马拉松的更多信息。
如果您需要任何有关操作的帮助,我将在此主题中回答您的问题。
告诉我一个可重复使用的工作流程会给您带来好处的用例!
文章来源:https://dev.to/github/github-actions-you-can-build-reusable-workflows-4gc7