0

我正在使用 Jenkins 管道在 EB 环境中部署带有 .ebextensions 的 .war 文件。部署成功,所有命令都在部署阶段执行,但是当我检查 /usr/share/tomcat8/webapps/ROOT/ 时,我只看到我的 .war 文件原样存在,没有解压。

这会是什么原因?以及有关如何解决该问题的任何想法?请在下面找到我的代码片段。

zip -r app-${BUILD_NUMBER}.zip myapp.war .ebextensions

aws s3 cp myapp.war s3://inc-eb-deployments/inc-batch/myapp.war

4

2 回答 2

0

尝试将其部署到 webapps 文件夹,而不是 webapps/ROOT。然后tomcat应该解压到webapps/myapp。

如果要将应用程序部署在根目录中,则需要将构建输出命名为 ROOT.war 并将其放在 webapps 文件夹中。

于 2020-02-14T21:28:09.657 回答
0

一旦使用 .war 文件设置了 ebextesnions,该文件将与 ebextensions(.zip 格式)相结合。在这种情况下,应通过 .ebextension 文件手动解压缩 .war 文件。以下是示例代码片段。

 fix_path:
    command: "unzip <app-name>.war 2>&1 > /var/log/my_last_deploy.log"

该解决方案适用于我的环境。

于 2020-03-05T09:36:21.263 回答