docker - 在 AzDo 中为 2 个单独的项目/存储库构建/发布管道的最佳方法

标签 docker azure-devops azure-pipelines

我在 AzDo 有 2 个独立的项目,project-1包含用于构建 docker 镜像并相应标记它的仓库,如 1.0.0 , 1.0.1等等,在另一个 projects-2有 2 个单独的 repos 使用这些标签。目前这是 repos@project-2 中的手册。
我的问题是如何在 AzDo 中自动化该过程,这意味着 repo@project1 中是否有 docker 的新标签然后它会自动在 project-2 中构建 repos使用这个新的 docker 标签。
例如目前project-1有 image:1.0.0 并在 project-2 中的 2 个 repos 中使用手动引用1.0.0。
现在我在 project-1 中用标签 2.0.0 构建了一个新标签,那么如何自动构建 2 repos@project-2有了这个新的 2.0.0 。从一个构建/发布管道到另一个管道/项目是否有任何链接/信号?
任何意见是极大的赞赏。

最佳答案

最简单的方法是使用 pipeline triggers它允许您触发一个又一个管道。您可能在获取案卷图像标签时遇到问题,但您只需点击容器注册表即可解决此问题。
另请查看 stages filter ,也许它们会为您的案例提供值(value)。

In this sprint, we added support for 'stages' as a filter for pipeline resources in YAML. With this filter, you don't need to wait for the entire CI pipeline to be completed to trigger your CD pipeline. You can now choose to trigger your CD pipeline upon completion of a specific stage in your CI pipeline.


另一种选择是在将图像推送到容器注册表并通过 REST API 触发另一个管道时使用 webhook。

关于docker - 在 AzDo 中为 2 个单独的项目/存储库构建/发布管道的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63598325/

相关文章:

azure-devops - 检查 Azure YAML 中的空对象类型参数

Docker 错误 : 'useradd: cannot lock/etc/passwd'

Azure Build Pipeline 无法发布项目

azure - 如何定义具有 2 个管道的 MS 托管代理的并行性

docker - VueCLI3 应用程序 (nginx/docker) 使用环境特定变量

linux - 在不升级的情况下恢复包状态以保持 Docker 容器较小

docker - 如何在构建 Docker 镜像之前对 GitLab 的容器注册表进行身份验证?

python - 在一个位置为多个站点更新 azure token ,无需域访问

azure - 有没有办法在部署任务后作为 VSTS 任务删除文件?

c - 在docker下运行objdump显示不同的结果