【问题标题】:Deployment of simple Play 2.2 application on CloudBees gets intermittent errors在 CloudBees 上部署简单的 Play 2.2 应用程序会出现间歇性错误
【发布时间】:2013-10-18 12:43:29
【问题描述】:

我在尝试将简单的 Play 2.2 应用程序部署到 CloudBees 时遇到间歇性错误。

我的工作流程是:

  1. 使用 ClickStart 创建“Hello World”Play 2 应用。
  2. 使用 bees app:deploy 用我的实际 Play 2.2 应用程序的分发覆盖 Hello World 应用程序。

今天早上我在使用此工作流程时遇到了以下问题。

1。部署错误

今天尝试部署我的应用时发生了两次此错误:

% bees app:deploy -a philipmjohnson/surferpedia -t play2 target/universal/surferpedia-1.0-SNAPSHOT.zip 

Deploying application philipmjohnson/surferpedia (environment: ):   target/universal/surferpedia-1.0-SNAPSHOT.zip
Application parameters: {containerType=play2}
........................uploaded 25%
........................uploaded 50%
........................uploaded 75%
........................upload completed
deploying application to server(s)...

ERROR: Server.InternalError - plugin_setup_error: play2 1 Creating application skeleton at /var/genapp/apps/be2f806a
Copying application files to /var/genapp/apps/be2f806a/app
Installing genapp java agent
Writing configuration to /var/genapp/apps/be2f806a/.genapp/control/config
Using JVM at /opt/java7/bin/java
Invalid play dist - unexpected dir count in /var/genapp/apps/be2f806a/app

如果我再次重新运行 bees app:deploy 命令,则部署成功。

2。正在运行的应用程序恢复为 Hello World

更令人不安的是,在(显然)成功部署我的 Play 2.2 应用程序后,应用程序在使用一分钟后又恢复为 Hello World 应用程序!

为了“解决”问题,我重复了 bees app:deploy。

说明问题的屏幕截图

幸运的是,我在为我的学生制作关于如何将他们的应用程序(称为 Surferpedia)部署到 CloudBees 的截屏视频时遇到了这两个问题。您可以通过观看以下 8 分钟的 YouTube 视频自己了解这些问题:

http://www.youtube.com/watch?v=UUo9QPqVGeE

一切都按计划进行,直到视频大约 5:30 开始,这些问题才开始显现。

我想知道这是否与我使用 Play 2.2 有关?如果有什么办法可以解决这个问题,或者这是 CloudBees 的一个已知问题,请告诉我。

【问题讨论】:

    标签: playframework-2.0 cloudbees


    【解决方案1】:

    看看这个。

    首先 - 错误消息来自这里:https://github.com/cloudweekhec/stack/blob/master/functions#L38

    这意味着 play 认为它是一个糟糕的 dist - 但如果你再试一次,它就可以了 - 这很奇怪!您是否使用 sbt 来构建 dist?

    一些补救措施:

    1) 禁用构建作业 - 如果有任何事情触发它从源部署 - 如果您要直接部署 - 摆脱构建作业(可能会干扰)

    2) 尝试使用 --delta false 运行您的上传 - 这将是一个较慢的上传 - 但会消除任何 zip 文件混淆。

    3) 您可以切换到使用 sbt 插件 - 这可能会在短期内为您解决问题(并且仍然保持增量上传):https://github.com/CloudBees-community/sbt-cloudbees-play-plugin(cloudbees-deploy 现在是 cloudbeesDeploy - 由于 sbt 0.13 更改)

    否则 - 如果我可以访问您的源代码 - 我想尝试一下 - 设置一个反复执行此操作的测试,以便我们进行诊断。

    恢复到 hello world 可能是构建作业 - 或者它可能失败并回滚。

    很好的错误搜索!

    【讨论】:

    • 是的,我正在使用标准的“play dist”命令来生成 zip 文件。看看 Jenkins,只有一个版本(原始版本),所以看起来也不是。
    • 如果你做一个 bees 应用程序:在创建 clickstart 之后部署 - 构建可能仍在运行。
    • 我总是等到显示正在运行的构建进度条的模态对话框消失并且系统说“您的应用程序已准备好”(如视频所示)。即使到那时,构建仍然可以运行吗?
    猜你喜欢
    • 1970-01-01
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多