【发布时间】:2018-02-05 23:20:56
【问题描述】:
我在 Jenkins 有一个多分支管道项目。我的 Jenkins 工作主要包括构建 dotnet-core docker 映像并将它们推送到 docker 存储库,然后使用 compose 文件在 Jenkins 从站上启动容器。在我的 VS 解决方案文件中,我在不同的文件夹中有 6-7 个项目。数量会增加。它们都是将在容器中运行的 docker 镜像。
目前,我为每个项目使用dotnet publish,然后使用 compose 文件构建图像。问题是,即使图像没有变化,我也需要构建所有这些。我只想构建未更改的应用程序。有没有办法让我过滤掉未更改的文件夹并只构建它们?
【问题讨论】:
-
当有人提交时,它会触发工作,对吧?如果是这样,也许您可以找出哪些文件已更改,并基于此,您只构建受影响的项目?我不熟悉 VS 解决方案文件,但如果工作空间在构建之间保留,那么 VS 解决方案只会构建“脏”的项目?
-
好吧,在构建之间保留工作区可能会起作用,但在这种情况下,删除的文件是个问题。奇怪的是,我曾在另一个项目上尝试过,当我选择不清理它时,工作区的大小不断增加。这可能是因为 MSBuild 的自动生成的文件。随着项目的发展,它们只会不断堆积。找出提交之间更改的文件夹会起作用,尽管它需要太多的脚本工作。感谢您的评论
标签: git docker jenkins microservices