【问题标题】:Why does Jenkins job fail with "Server.InternalError - Deployment type not supported: zip" on CloudBees?为什么 Jenkins 作业在 CloudBees 上因“Server.InternalError - 不支持部署类型:zip”而失败?
【发布时间】:2014-09-08 20:20:02
【问题描述】:

我正在尝试将我的Play Framework 应用程序部署到CloudBees,当play run 时它在本地运行良好。在git push 到 git 存储库之后,它会自动为dist,然后部署的生成的 zip 文件不幸失败了。

这是这个问题的日志:

[info] Packaging /scratch/jenkins/workspace/hello-play-tutorial/target/scala-2.11/hello-play-tutorial_2.11-1.0-SNAPSHOT-javadoc.jar ...
[info] Done packaging.
[info] 
[info] Your package is ready in /scratch/jenkins/workspace/hello-play-tutorial/target/universal/hello-play-tutorial-1.0-SNAPSHOT.zip
[info] 
[success] Total time: 5 s, completed Sep 8, 2014 8:07:39 AM
[cloudbees-deployer] Deploying as (jenkins) to the xxx account
[cloudbees-deployer] Deploying hello-play-tutorial
[cloudbees-deployer]   Resolved from workspace as /scratch/jenkins/workspace/hello-play-tutorial/target/universal/hello-play-tutorial-1.0-SNAPSHOT.zip
[cloudbees-deployer] Deploying via API server at https://api.cloudbees.com/api
[cloudbees-deployer] 0 MB
[cloudbees-deployer] 1 MB
[cloudbees-deployer] 3 MB
[cloudbees-deployer] 4 MB
[cloudbees-deployer] 6 MB
[cloudbees-deployer] 7 MB
[cloudbees-deployer] 9 MB
[cloudbees-deployer] 10 MB
[cloudbees-deployer] 12 MB
[cloudbees-deployer] 13 MB
[cloudbees-deployer] 15 MB
[cloudbees-deployer] 16 MB
[cloudbees-deployer] 18 MB
[cloudbees-deployer] 19 MB
[cloudbees-deployer] 21 MB
[cloudbees-deployer] 22 MB
[cloudbees-deployer] 24 MB
[cloudbees-deployer] 25 MB
[cloudbees-deployer] 27 MB
[cloudbees-deployer] 28 MB
com.cloudbees.plugins.deployer.exceptions.DeployException: remote file operation failed: /scratch/jenkins/workspace/hello-play-tutorial/target/universal/hello-play-tutorial-1.0-SNAPSHOT.zip at hudson.remoting.Channel@5c358135:24b747e7
    at com.cloudbees.plugins.deployer.engines.Engine.process(Engine.java:185)
    at com.cloudbees.plugins.deployer.engines.Engine.perform(Engine.java:119)
    at com.cloudbees.plugins.deployer.DeployPublisher.perform(DeployPublisher.java:122)
    at hudson.tasks.BuildStepMonitor$1.perform(BuildStepMonitor.java:20)
    at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:825)
    at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:797)
    at hudson.model.Build$BuildExecution.post2(Build.java:183)
    at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:746)
    at hudson.model.Run.execute(Run.java:1709)
    at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43)
    at hudson.model.ResourceController.execute(ResourceController.java:88)
    at hudson.model.Executor.run(Executor.java:232)
Caused by: java.io.IOException: remote file operation failed: /scratch/jenkins/workspace/hello-play-tutorial/target/universal/hello-play-tutorial-1.0-SNAPSHOT.zip at hudson.remoting.Channel@5c358135:24b747e7
    at hudson.FilePath.act(FilePath.java:910)
    at hudson.FilePath.act(FilePath.java:887)
    at com.cloudbees.plugins.deployer.engines.Engine.process(Engine.java:179)
    ... 11 more
Caused by: hudson.remoting.ProxyException: hudson.util.IOException2: Server.InternalError - Deployment type not supported: zip
    at com.cloudbees.plugins.deployer.impl.run.RunEngineImpl$DeployFileCallable.invoke(RunEngineImpl.java:382)
    at com.cloudbees.plugins.deployer.impl.run.RunEngineImpl$DeployFileCallable.invoke(RunEngineImpl.java:289)
    at com.cloudbees.plugins.deployer.engines.Engine$FingerprintingWrapper.invoke(Engine.java:271)
    at com.cloudbees.plugins.deployer.engines.Engine$FingerprintingWrapper.invoke(Engine.java:259)
    at hudson.FilePath$FileCallableWrapper.call(FilePath.java:2462)
    at hudson.remoting.UserRequest.perform(UserRequest.java:118)
    at hudson.remoting.UserRequest.perform(UserRequest.java:48)
    at hudson.remoting.Request$2.run(Request.java:328)
    at hudson.remoting.InterceptingExecutorService$1.call(InterceptingExecutorService.java:72)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:744)
Caused by: hudson.remoting.ProxyException: com.cloudbees.api.BeesClientException: Server.InternalError - Deployment type not supported: zip
    at com.cloudbees.api.BeesClient.readResponse(BeesClient.java:1805)
    at com.cloudbees.api.BeesClient.applicationDeployArchive(BeesClient.java:732)
    at com.cloudbees.plugins.deployer.impl.run.RunEngineImpl$DeployFileCallable.invoke(RunEngineImpl.java:374)
    ... 12 more
Build step 'Deploy applications' marked build as failure
Finished: FAILURE

之前有人问过这个问题,但还没有有效的答案—— Error when building play framework app in cloudbees with jenkins: Deployment type not supported: zip.

【问题讨论】:

    标签: jenkins playframework cloudbees


    【解决方案1】:

    您可能需要为您的应用程序设置参数,因为现在它认为您正在尝试为 Tomcat 部署 .war,因为未在任何地方指定部署类型。

    为此,只需在安装了 CloudBees SDK 的情况下键入以下内容:

    bees app:update ACCOUNT/APPLICATION -t play2
    

    如果这不起作用,您可以尝试传统的方法,即:

    bees config:set -a ACCOUNT/APPLICATION containerType=play2
    

    【讨论】:

    • 是的,你的建议奏效了。我不知道如何通过推送存储库目录来做到这一点,但命令行运行良好。
    • 我必须承认它对我不起作用,无论我使用什么命令行,我都会不断收到错误 com.cloudbees.api.BeesClientException: Server.InternalError - Deployment type not supported: zip
    猜你喜欢
    • 1970-01-01
    • 2012-11-25
    • 2016-04-18
    • 2021-08-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-25
    • 1970-01-01
    相关资源
    最近更新 更多