Bluemix Build&部署管道不适用于Maven

时间:2015-04-12 01:02:17

标签: java maven war ibm-cloud

我正在尝试使用MAVEN在Bluemix中创建部署管道,而Deploy阶段总是错过上一阶段(Build Stage)中产生的工件,即它永远找不到.war包,任何想法?记录如下。

BUILD:

  

[INFO]打包webapp [INFO]组装webapp [MyWebAppInBluemix]   在   [/家庭/詹金斯/工作区/ 9b24c823-cdb0-2f05-7588-80df3afc1131 / 86d18f86-4ade-4e02-8282-171dc9757272 /目标/ MyWebAppInBluemix]   [INFO]处理战争项目[INFO]复制webapp webResources   [/家庭/詹金斯/工作区/ 9b24c823-cdb0-2f05-7588-80df3afc1131 / 86d18f86-4ade-4e02-8282-171dc9757272 / SRC /主/ web应用/ WEB-INF]   至   [/家庭/詹金斯/工作区/ 9b24c823-cdb0-2f05-7588-80df3afc1131 / 86d18f86-4ade-4e02-8282-171dc9757272 /目标/ MyWebAppInBluemix]   [INFO]复制webapp资源   [/家庭/詹金斯/工作区/ 9b24c823-cdb0-2f05-7588-80df3afc1131 / 86d18f86-4ade-4e02-8282-171dc9757272 / SRC /主/ web应用]   [INFO]建筑罐子:   /home/jenkins/workspace/9b24c823-cdb0-2f05-7588-80df3afc1131/86d18f86-4ade-4e02-8282-171dc9757272/target/MyWebAppInBluemix/WEB-INF/lib/MyWebAppInBluemixBlueMix-1.0-SNAPSHOT.jar   [INFO] Webapp组装在[838 msecs] [INFO]建立战争:   /home/jenkins/workspace/9b24c823-cdb0-2f05-7588-80df3afc1131/86d18f86-4ade-4e02-8282-171dc9757272/target/MyWebAppInBluemix.war   [信息]   -------------------------------------------------- ---------------------- [INFO]建立成功[信息]   -------------------------------------------------- ---------------------- [INFO]总时间:44.417 s [INFO]完成于:   2015-04-12T00:48:18 + 00:00 [INFO]最终记忆:21M / 36M [INFO]   -------------------------------------------------- ---------------------- / home / jenkins / workspace / 9b24c823-cdb0-2f05-7588-80df3afc1131 / 86d18f86-4ade-4e02-8282-171dc9757272   ..上传文物...... UPLOAD SUCCESSFUL总时间:11秒   完成:成功

部署:

  

由用户管道启动远程构建   工作区中的jenkins-deploy-slave-fe1b25615459(。* Deploy)   /家庭/詹金斯/工作区/ 9b24c823-cdb0-2f05-7588-80df3afc1131 / 6f0d5c28-555a-4d9e-8207-7e5dfa978bbc   无法访问上游工件区域   / OPT2 /詹金斯/职位/ 9b24c823-cdb0-2f05-7588-80df3afc1131 /职位/ 86d18f86-4ade-4e02-8282-171dc9757272 /构建/ 2015-04-11_19-47-24 /存档。   源项目归档工件吗?下载文物......   DOWNLOAD SUCCESSFUL总时间:11秒......

     

++ cf push MyWebAppInBluemix更新应用程序MyWebAppInBluemix in org marcelo@mail.com / space开发为marcelo@mail.com ...确定

     

上传MyWebAppInBluemix ...从以下位置上传应用文件:   /家庭/詹金斯/工作区/ 9b24c823-cdb0-2f05-7588-80df3afc1131 / 6f0d5c28-555a-4d9e-8207-7e5dfa978bbc   上传47.9M,169个文件

                          Done uploading OK
     

在org marcelo@mail.com / space中停止应用MyWebAppInBluemix   开发为marcelo@mail.com ......好的

     

在org marcelo@mail.com / space中启动应用MyWebAppInBluemix   开发为marcelo@mail.com ...   ----->下载的应用程序包(85M)   ----->下载的应用程序buildpack缓存(1.4M)

     

FAILED服务器错误,状态代码:400,错误代码:170003,消息:An   任何可用的buildpack

都未成功检测到app      

提示:使用'cf logs MyWebAppInBluemix --recent'获取更多信息   构建步骤'执行shell'标记构建为失败完成:FAILURE

4 个答案:

答案 0 :(得分:4)

看起来你的构建任务正在你的git项目的基本目录中构建war文件,而部署作业正在归档目录中查找它。

您可以通过修改构建或部署作业来查找war文件的基目录或归档目录来解决此问题。

答案 1 :(得分:3)

在构建作业配置中,"构建存档目录"描述了一个相对于工作目录的目录,用于在作业结束时保存工件。工件将保存在相对于"构建存档目录"的相同结构中。 请注意,如果构建存档目录保留为空,则默认为工作目录。 如果工作目录留空,则默认为项目的根目录。

当构建用作下游阶段的输入时,下游阶段中的所有作业(例如,部署)将引用来自构建的工件,它们存储在相同的结构中。 查看此结构的最佳方法是单击特定构建,然后单击ARTIFACTS选项卡。此选项卡上显示的工件将以与部署作业所示的完全相同的结构引用。

答案 2 :(得分:0)

我在尝试将NodeJS推送到Bluemix时收到了类似的错误。

FAILED Server error, status code: 400, error code: 170003, message: An app was not successfully detected by any available buildpack

当推送您的应用程序所需的文件不存在时,似乎会发生此错误。例如,如果您或您的脚本没有从app目录推送,或者您在目录中还有其他应用程序,则会推送应用程序的错误文件。我的目录结构如下:

/workspace/app1 /workspace/bluemix-node-mysql-uploader-master5 #my nodejs app

我正在调用CF推送命令:

/workspace/cf push bluemix-node-mysql-uploader-master5

这给了我同样的错误。我通过从应用程序目录推送它可以找到manifest.yml文件来纠正这个问题。使用此命令一切都很好:

/workspace/bluemix-node-mysql-uploader-master5/cf push bluemix-node-mysql-uploader-master5

答案 3 :(得分:0)

如果您没有构建管道,可以使用此命令推送到cf

  

cf push app-name -p target / app-name.jar

将此行添加到部署配置时,它不起作用。因此,当我删除目标并再次尝试时,它会通过部署阶段。所以应该如下面这一行。

  

cf push app-name -p app-name.jar