我正在尝试使用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
答案 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