怎么复用 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"。
想要了解更多内容?