Bug 807136

Summary: "undefined method 'NodeException' for StickShift:Module" error is seen when trying to create a scalable app of jenkins/diy type
Product: OKD Reporter: Johnny Liu <jialiu>
Component: PodAssignee: Rajat Chopra <rchopra>
Status: CLOSED CURRENTRELEASE QA Contact: libra bugs <libra-bugs>
Severity: high Docs Contact:
Priority: high    
Version: 1.xCC: mpatel
Target Milestone: ---Keywords: Triaged
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-04-13 18:33:25 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Johnny Liu 2012-03-27 06:54:39 UTC
Description of problem:
When trying to create a scalable app of jenkins/diy type, "undefined method 'NodeException' for StickShift:Module" happen, and error message is not friendly for user.

Log in /var/www/stickshift/broker/log/development.log:
<--snip-->
Started POST "/broker/rest/domains/jialiu/applications" for 66.187.233.202 at Tue Mar 27 02:43:18 -0400 2012
  Processing by ApplicationsController#create as XML
  Parameters: {"cartridge"=>"jenkins-1.4", "domain_id"=>"jialiu", "name"=>"myapp", "scale"=>"true"}
Adding user jialiu...inside authenticate
MongoDataStore.find(CloudUser, jialiu, jialiu)

MongoDataStore.find(CloudUser, jialiu, jialiu)

Checking to see if user limit for number of apps has been reached
Completed 500 Internal Server Error in 134ms

NoMethodError (undefined method `NodeException' for StickShift:Module):
<--snip-->

Version-Release number of selected component (if applicable):
devenv_1674

How reproducible:
Always

Steps to Reproduce:
1. Run the following command to try to create a scalable app of jenkins/diy type
$ curl -k -X POST -H 'Accept: application/xml' -d name=myapp -d cartridge=jenkins-1.4 -d scale=true --user <username>:<password> https://<instance>/broker/rest/domains/<domain>/applications
2.
3.
  
Actual results:
"undefined method `NodeException' for StickShift:Module" is seen. And error message is not friendly for user.

Expected results:
Failure should happen, and error message is friendly.

Additional info:

Comment 1 Rajat Chopra 2012-03-27 21:49:47 UTC
Fixed. rev#0151e1bff66925b692b19b1eef2a16d0a43610c4

Comment 2 Johnny Liu 2012-03-28 03:24:36 UTC
Verified this bug with devenv_1677, and PASS.

$ curl -k -X POST -H 'Accept: application/xml' -d name=myapp -d cartridge=diy-0.1 -d scale=true --user jialiu:xx https://ec2-50-17-96-240.compute-1.amazonaws.com/broker/rest/domains/jialiu/applications
<?xml version="1.0" encoding="UTF-8"?>
<response>
  <data nil="true"></data>
  <status>internal_server_error</status>
  <version>1.0</version>
  <type nil="true"></type>
  <messages>
    <message>
      <field nil="true"></field>
      <text>Failed to create application myapp due to:Scalable app cannot be of type haproxy-1.4 jenkins-1.4 diy-0.1</text>
      <exit-code>108</exit-code>
      <severity>error</severity>
    </message>
  </messages>
</response>