扫码阅读
手机扫码阅读

怎么复用 GitHub Actions 的 Workflows

475 2024-02-23

我们非常重视原创文章,为尊重知识产权并避免潜在的版权问题,我们在此提供文章的摘要供您初步了解。如果您想要查阅更为详尽的内容,访问作者的公众号页面获取完整文章。

查看原文:怎么复用 GitHub Actions 的 Workflows
文章来源:
鲁飞
扫码关注公众号

WordPress即将发布6.3版本,并通知开发者更新插件确保兼容性。然而,许多插件的readme.txt文件并未及时更新以表明对新版本的兼容性。其中包括:

  • baidu-textcensor (tested up to 5.8.7)
  • imagex (tested up to 5.6.11)
  • kodo-qiniu (tested up to 5.9.7)
  • memorialday (tested up to 6.2.2)
  • obs-huaweicloud (tested up to 5.6.11)
  • oss-aliyun (tested up to 6.2.2)
  • push-message-to-wechat (tested up to 5.3.15)
  • random-look (tested up to 5.4.13)
  • realtimehot-weibo (tested up to 5.3.15)
  • sync-qcloud-cos (tested up to 5.9.7)
  • textcensor-for-articles (tested up to 5.6.11)
  • uss-upyun (tested up to 6.2.2)

发现了一个名为10up/action-wordpress-plugin-deploy的GitHub Action,它能够直接将代码推送到WordPress Plugin SVN。为了利用这个Action,创建了一个名为deploy.yml的工作流配置文件,其中包含了构建、设置PHP版本、部署到WordPress.org以及上传发布资产等步骤。

尽管deploy.yml工作流文件能够正常工作,但随着插件数量的增加,为每个插件复制和提交工作流配置成为了一个重复且耗时的任务,尤其是在需要修改yml文件内容时。这个问题引出了对工作流复用的需求。

工作流复用的好处在于避免了重复工作,简化了维护,并允许组织构建一个可集中维护的工作流程库。要创建一个可复用的工作流,必须包括workflow_call事件触发器,并可以定义输入和机密,使得这些参数可在被调用的工作流中使用。

为了实现工作流的复用,需要对deploy.yml进行修改,使其包含workflow_call触发器、输入参数和工作流作业。此外,修改后的工作流文件允许在其他工作流文件中通过uses语法进行调用。

调用可复用工作流程的方式是在jobs中使用uses语法,可以引用同一存储库中或其他存储库中的工作流文件。示例中给出了如何调用工作流文件,并通过继承机密简化了配置。

通过这种方式,可以将工作流文件定义为可复用的模块,大幅减少了重复性的配置工作,并提高了工作流的维护效率。相关示例和完整内容可在GitHub文档中查看"Reusing workflows"。

想要了解更多内容?

查看原文:怎么复用 GitHub Actions 的 Workflows
文章来源:
鲁飞
扫码关注公众号