【发布时间】:2017-11-14 22:48:06
【问题描述】:
我在我的Jenkins 上安装了Deploy Plugin,以便自动将我的Maven 构建的war 包部署到Tomcat 7。问题是,只有在使用部署插件的同一作业中制作它们时,我才能使用该插件部署到远程 Tomcat 服务器。换句话说,我无法设置一个独立的作业来部署由不同作业制作的工件。
例如,我有一份名为 pack.foo 的工作。它使用 /var/lib/project/module 中的源代码创建 module.war 并将其放入 /var/lib/project/module/target 。但是,由于 Maven 版本设置,pack.foo 的工件页面上发布的工件类似于 module-2.0.0-SNAPSHOT.war。
我能够部署 module.war 的唯一方法是,如果我将 Post-build Action 添加到 pack.foo 并指定 **/module.war 作为远程 Tomcat 管理器 URL(前提是我在 Jenkins 中有管理器的凭据)配置)。然后作业的控制台输出记录 /var/lib/project/module/target/module.war 已部署到该 URL:
Deploying /var/lib/project/module/target/module.war to container Tomcat 7.x Remote with context
[/var/lib/project/module/target/module.war] is not deployed. Doing a fresh deployment.
Deploying [/var/lib/project/module/target/module.war]
我如何使用这个或其他插件来部署在单独的 Jenkins 作业中制作的 WAR 工件?我想为工件创建和部署分别工作。该插件没有找到 **/module-2.0.0-SNAPSHOT.war 甚至 **/module.war 由另一个作业构建,即使磁盘上肯定有一个与该模式匹配的文件。
【问题讨论】:
标签: jenkins continuous-deployment