【发布时间】:2021-10-08 21:35:28
【问题描述】:
我看到 Microsoft 可能会朝着回避 Azure DevOps 的方向发展,并且更倾向于将 GitHub Actions 作为主要的自动化平台(推测,不确定是否属实),所以我正试图改变所有我将 DevOps 自动化转移到 GitHub Actions 上,当我这样做时,我注意到有一些缺乏相似之处。
在这种特定情况下,我想知道 GitHub Actions 中是否有与 Azure DevOps“发布管道工件”任务等效的任务?
我可以在 GitHub Actions 中找到最接近的内容是“actions/upload-artifact@v2”,但是这更类似于 Azure DevOps 的“发布构建工件”。我得到了用例并了解我可以使用它来做什么,但我想看看我是否可以在一个包中上传整个管道/工作流,而不是一个文件一个文件。
在 Azure DevOps 中,我的管道在 5-7 分钟内运行,因为我可以使用“发布管道工件”任务,但在 GitHub Actions 中,我只有“actions/upload-artifact@v2”操作,现在它完成相同的自动化任务最多需要 3 个小时。 (疯狂的差异!)。我认为增加的时间是由于 GitHub Actions 中的上传/发布任务逐个文件进行的,而在 Azure DevOps 中,上传/发布任务以某种方式压缩了所有内容,只需要大约 1 分钟即可完成。
非常感谢任何/所有帮助!我的 Google Fu 没有自动取款机。
【问题讨论】:
-
我认为如果您在上传之前压缩文件应该会大大提高速度。
-
有什么建议吗?因此,如果我想发布并稍后下载(在同一工作流程中),您建议我使用哪些操作。我基本上需要压缩它,发布 zip 文件 -> 然后下载 zip 文件并解压缩它吗?
-
是的,使用 shell 脚本进行(解)压缩和下载/上传工件操作。
标签: azure-devops azure-pipelines github-actions azure-artifacts github-actions-artifacts