我看到微软可能会朝着远离Azure DevOps和更多地依赖GitHub动作作为主要自动化平台的方向前进(推测,不确定这是否是真的),所以我试图将我所有的自动化从DevOps转移到GitHub操作上,当这样做时,我注意到有一些缺乏相似之处。
在这种特殊情况下,我想知道在操作中是否存在与Azure DevOps“发布管道工件”任务相当的任务?。
我在GitHub操作中能找到的最接近的东西是“Actions /upload-工件@v2”,但是这更类似于Azure DevOps的“发布构建工件”。我得到了用例,并了解了我可以使用它做什么,但我想看看是否可以在包中上传整个管道/工作流,而不是逐个文件。
在Azure DevOps中,我的管道在< 5-7分钟内运行,因为我可以使用“发布管道工件”任务,但是在GitHub操作中,我只有“Actions /upload-工件@v2”操作,现在执行相同的自动化任务需要最多3个小时。(疯狂的差别!)我认为增加时间是由于GitHub操作中的上传/发布任务逐文件进行,而在Azure DevOps中,上传/发布任务以某种方式将其全部压缩,只需1分钟即可完成。
任何/所有的帮助都是非常感谢的!我的Google Fu没有想到任何自动取款机。
发布于 2021-08-04 03:55:29
进展缓慢,因为:
在开始上载之前,GZip在内部用于压缩单个文件。
因此,这不仅是因为每个文件都是单独发送的,而且每个文件也是单独压缩的。现在最好的解决方法是压缩整个目录,就像riQQ已经写过的那样。
可以这样做:
- name: 'Tar files'
run: tar -cvf my_files.tar /path/to/my/directory
- name: 'Upload Artifact'
uses: actions/upload-artifact@v2
with:
name: my-artifact
path: my_files.tar
一个很大的缺点是,现在你每次下载时都需要打开你的工件。
有关更多详细信息,请查看此主题-上传工件dir非常慢。
https://stackoverflow.com/questions/68640102
复制相似问题