我知道有人问过这个问题,但我读过的所有回复都没有给我我需要的建议,所以如果这个答案被埋在某个地方而我还没有找到,我深表歉意。
我正在使用 Maven 部署我们的系统,完整的部署需要按顺序执行几个步骤。如果对中间步骤进行了更改,则只需重新部署该步骤及其相关步骤。这些步骤非常耗时,因此从头开始部署所有内容(目前约 35 分钟)非常痛苦。(对于那些感兴趣的人,有远程数据库部署,然后是创建和部署 2 个基础 docker 镜像和几个 docker 镜像/容器。)
部署步骤基本上是“通过 scp 将这些文件复制到远程服务器,然后通过 sshexec 运行此命令”。因此,这些步骤目前是一项很长的单蚂蚁任务。
如果我正确使用 Ant,我将能够指定目标并这样做。我对 Maven 并不陌生,但我不知道处理这种过程的正确惯用方式。我看到有人建议使用配置文件,这似乎是最合适的解决方案,但是有一个步骤我无法复制。
假设我有 5 个步骤,步骤 1、2、3、4 和 5。5 取决于 4,4 取决于 3,等等。我可以为每个步骤设置一个配置文件步骤,然后运行mvn -P 1,2,3,4,5
以获得我需要的内容。如果我只对 3 进行更改,那么我可以运行mvn -P 3,4,5
,但是我的问题是还有更多的步骤,没有那么明显的编号,并且在我们构建我们的产品时,它是目前其他开发人员的移动目标。
有没有办法,使用配置文件或其他方式,让我和我的开发人员基本上说mvn -P stepX
在步骤“x”中设置的配置文件说“运行配置文件 X,然后 Y,然后 Z”?
非常感谢,米奇。