Bug 967723

Summary: Creating an app with 5 custom cartridges at one time will end in node execution failure
Product: OpenShift Online Reporter: Jianwei Hou <jhou>
Component: PodAssignee: Abhishek Gupta <abhgupta>
Status: CLOSED CURRENTRELEASE QA Contact: libra bugs <libra-bugs>
Severity: low Docs Contact:
Priority: medium    
Version: 2.x   
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-06-11 04:12:06 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Broker log
none
mcollective log
none
node log none

Description Jianwei Hou 2013-05-28 07:06:52 UTC
Created attachment 753761 [details]
Broker log

Description of problem:
Create an app with 5 custom cartridges at one time, node execution failure is seen. Now that we allow a maximum of 5 URLs to be specified together at app creation, this operation should be successful.


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

How reproducible:
Always

Steps to Reproduce:
1. Create an application with 5 custom cartridges at one time:
rhc app create app1 https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml https://raw.github.com/jhou1/v2mysql/master/metadata/manifest.yml https://raw.github.com/jhou1/v2mongodb/master/metadata/manifest.yml https://raw.github.com/jhou1/v2phpmyadmin/master/metadata/manifest.yml https://raw.github.com/jhou1/v2rockmongo/master/metadata/manifest.yml --no-git --no-dns --no-keys -px

Actual results:
rhc app create app1 https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml https://raw.github.com/jhou1/v2mysql/master/metadata/manifest.yml https://raw.github.com/jhou1/v2mongodb/master/metadata/manifest.yml https://raw.github.com/jhou1/v2phpmyadmin/master/metadata/manifest.yml https://raw.github.com/jhou1/v2rockmongo/master/metadata/manifest.yml --no-git --no-dns --no-keys -px
The cartridge 'https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml' will be downloaded and installed
The cartridge 'https://raw.github.com/jhou1/v2mysql/master/metadata/manifest.yml' will be downloaded and installed
The cartridge 'https://raw.github.com/jhou1/v2mongodb/master/metadata/manifest.yml' will be downloaded and installed
The cartridge 'https://raw.github.com/jhou1/v2phpmyadmin/master/metadata/manifest.yml' will be downloaded and installed
The cartridge 'https://raw.github.com/jhou1/v2rockmongo/master/metadata/manifest.yml' will be downloaded and installed

Application Options
-------------------
  Namespace:  jhou
  Cartridges: https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml, https://raw.github.com/jhou1/v2mysql/master/metadata/manifest.yml,
              https://raw.github.com/jhou1/v2mongodb/master/metadata/manifest.yml,
              https://raw.github.com/jhou1/v2phpmyadmin/master/metadata/manifest.yml,
              https://raw.github.com/jhou1/v2rockmongo/master/metadata/manifest.yml
  Gear Size:  default
  Scaling:    no

Creating application 'app1' ... 
Unable to complete the requested operation due to: Node execution failure (invalid exit code from node).  If the problem persists please contact
Red Hat support..
Reference ID: 1542a6334311be3a71bfa2490c7dbbf1


Expected results:
The app should be created successfully

Additional info:
I have verified the provided 5 cartridges are valid, which can be added with 'rhc cartridge add' after the app is first created. See the app below:
app7 @ http://app7-jhou.dev.rhcloud.com/ (uuid: 2ca0c25ec76111e2b41d22000a975be6)
---------------------------------------------------------------------------------
  Created: 2:38 PM
  Gears:   1 (defaults to small)
  Git URL: ssh://2ca0c25ec76111e2b41d22000a975be6.rhcloud.com/~/git/app7.git/
  SSH:     2ca0c25ec76111e2b41d22000a975be6.rhcloud.com

  jhouphp-jhouphp-5.3 (PHP 5.3)
  -----------------------------
    From:  https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml
    Gears: Located with v2mongodb-mongodb-2.2, jhoumysql-mysql-5.1, rockmongo-rockmongo-1.1, jhouphpmyadmin-jhouphpmyadmin-3.4

  v2mongodb-mongodb-2.2 (MongoDB NoSQL Database 2.2)
  --------------------------------------------------
    From:           https://raw.github.com/jhou1/v2mongodb/master/metadata/manifest.yml
    Gears:          Located with jhouphp-jhouphp-5.3, jhoumysql-mysql-5.1, rockmongo-rockmongo-1.1, jhouphpmyadmin-jhouphpmyadmin-3.4
    Connection URL: mongodb://$OPENSHIFT_MONGODB_DB_HOST:$OPENSHIFT_MONGODB_DB_PORT/
    Database Name:  app7
    Password:       4-yeb_aHq5fY
    Username:       admin

  jhoumysql-mysql-5.1 (MySQL Database 5.1)
  ----------------------------------------
    From:           https://raw.github.com/jhou1/v2mysql/master/metadata/manifest.yml
    Gears:          Located with jhouphp-jhouphp-5.3, v2mongodb-mongodb-2.2, rockmongo-rockmongo-1.1, jhouphpmyadmin-jhouphpmyadmin-3.4
    Connection URL: mysql://$OPENSHIFT_MYSQL_DB_HOST:$OPENSHIFT_MYSQL_DB_PORT/
    Database Name:  app7
    Password:       r_9b6TGlkTZE
    Username:       adminP2FJ3c3

  rockmongo-rockmongo-1.1 (RockMongo 1.1)
  ---------------------------------------
    From:           https://raw.github.com/jhou1/v2rockmongo/master/metadata/manifest.yml
    Gears:          Located with jhouphp-jhouphp-5.3, v2mongodb-mongodb-2.2, jhoumysql-mysql-5.1, jhouphpmyadmin-jhouphpmyadmin-3.4
    Connection URL: https://app7-jhou.dev.rhcloud.com/rockmongo/

  jhouphpmyadmin-jhouphpmyadmin-3.4 (phpMyAdmin 3.4)
  --------------------------------------------------
    From:           https://raw.github.com/jhou1/v2phpmyadmin/master/metadata/manifest.yml
    Gears:          Located with jhouphp-jhouphp-5.3, v2mongodb-mongodb-2.2, jhoumysql-mysql-5.1, rockmongo-rockmongo-1.1
    Connection URL: https://app7-jhou.dev.rhcloud.com/phpmyadmin/

Comment 1 Jianwei Hou 2013-05-28 07:13:54 UTC
Created attachment 753763 [details]
mcollective log

Comment 2 Jianwei Hou 2013-05-28 07:14:44 UTC
Created attachment 753764 [details]
node log

Comment 3 Abhishek Gupta 2013-05-28 17:30:16 UTC
The configure order between MySQL and PhpMyAdmin is not being maintaiined. The Configure-Order in the phpmyadmin cartridge mentions "mysql", but the specified MySQL manifest file does not list "mysql" in the Provides section. If you add "mysql" to teh Provides section of the MySQL community cart, then the configure order should be maintained and configure should not result in errors.

Comment 4 Jianwei Hou 2013-05-29 01:32:27 UTC
Thanks, I have added "mysql" to the Provides of mysql cartridge's manifest.yaml, afterwards, I was able to create this application.

rhc app create app1 https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml https://raw.github.com/jhou1/v2mysql/master/metadata/manifest.yml https://raw.github.com/jhou1/v2mongodb/master/metadata/manifest.yml https://raw.github.com/jhou1/v2phpmyadmin/master/metadata/manifest.yml https://raw.github.com/jhou1/v2rockmongo/master/metadata/manifest.yml --no-git --no-dns --no-keys -px
The cartridge 'https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml' will be downloaded and installed
The cartridge 'https://raw.github.com/jhou1/v2mysql/master/metadata/manifest.yml' will be downloaded and installed
The cartridge 'https://raw.github.com/jhou1/v2mongodb/master/metadata/manifest.yml' will be downloaded and installed
The cartridge 'https://raw.github.com/jhou1/v2phpmyadmin/master/metadata/manifest.yml' will be downloaded and installed
The cartridge 'https://raw.github.com/jhou1/v2rockmongo/master/metadata/manifest.yml' will be downloaded and installed
 
Application Options
-------------------
  Namespace:  jhou
  Cartridges: https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml,
              https://raw.github.com/jhou1/v2mysql/master/metadata/manifest.yml,
              https://raw.github.com/jhou1/v2mongodb/master/metadata/manifest.yml,
              https://raw.github.com/jhou1/v2phpmyadmin/master/metadata/manifest.yml,
              https://raw.github.com/jhou1/v2rockmongo/master/metadata/manifest.yml
  Gear Size:  default
  Scaling:    no

Creating application 'app1' ... done

app1 @ http://app1-jhou.dev.rhcloud.com/ (uuid: 194546108207715485483008)
-------------------------------------------------------------------------
  Created: 9:26 AM
  Gears:   1 (defaults to small)
  Git URL: ssh://194546108207715485483008.rhcloud.com/~/git/app1.git/
  SSH:     194546108207715485483008.rhcloud.com

  jhouphp-jhouphp-5.3 (PHP 5.3)
  -----------------------------
    From:  https://raw.github.com/jhou1/v2php/master/metadata/manifest.yml
    Gears: Located with v2mongodb-mongodb-2.2, rockmongo-rockmongo-1.1, jhoumysql-mysql-5.1,
           jhouphpmyadmin-jhouphpmyadmin-3.4

  v2mongodb-mongodb-2.2 (MongoDB NoSQL Database 2.2)
  --------------------------------------------------
    From:           https://raw.github.com/jhou1/v2mongodb/master/metadata/manifest.yml
    Gears:          Located with jhouphp-jhouphp-5.3, rockmongo-rockmongo-1.1, jhoumysql-mysql-5.1,
                    jhouphpmyadmin-jhouphpmyadmin-3.4
    Connection URL: mongodb://$OPENSHIFT_MONGODB_DB_HOST:$OPENSHIFT_MONGODB_DB_PORT/
    Database Name:  app1
    Password:       TF8v2GVrduQL
    Username:       admin

  rockmongo-rockmongo-1.1 (RockMongo 1.1)
  ---------------------------------------
    From:           https://raw.github.com/jhou1/v2rockmongo/master/metadata/manifest.yml
    Gears:          Located with jhouphp-jhouphp-5.3, v2mongodb-mongodb-2.2, jhoumysql-mysql-5.1,
                    jhouphpmyadmin-jhouphpmyadmin-3.4
    Connection URL: https://app1-jhou.dev.rhcloud.com/rockmongo/

  jhoumysql-mysql-5.1 (MySQL Database 5.1)
  ----------------------------------------
    From:           https://raw.github.com/jhou1/v2mysql/master/metadata/manifest.yml
    Gears:          Located with jhouphp-jhouphp-5.3, v2mongodb-mongodb-2.2, rockmongo-rockmongo-1.1,
                    jhouphpmyadmin-jhouphpmyadmin-3.4
    Connection URL: mysql://$OPENSHIFT_MYSQL_DB_HOST:$OPENSHIFT_MYSQL_DB_PORT/
    Database Name:  app1
    Password:       1FI13tw4vBsL
    Username:       adminP7xsHBP

  jhouphpmyadmin-jhouphpmyadmin-3.4 (phpMyAdmin 3.4)
  --------------------------------------------------
    From:           https://raw.github.com/jhou1/v2phpmyadmin/master/metadata/manifest.yml
    Gears:          Located with jhouphp-jhouphp-5.3, v2mongodb-mongodb-2.2, rockmongo-rockmongo-1.1,
                    jhoumysql-mysql-5.1
    Connection URL: https://app1-jhou.dev.rhcloud.com/phpmyadmin/

RESULT:
Application app1 was created.
rockmongo-1.1 added.  Please make note of these MongoDB credentials again:
   RockMongo User    : admin
   RockMongo Password: TF8v2GVrduQL
URL: https://app1-jhou.dev.rhcloud.com/rockmongo/
MySQL 5.1 database added.  Please make note of these credentials:
       Root User: adminP7xsHBP
   Root Password: 1FI13tw4vBsL
   Database Name: app1
Connection URL: mysql://$OPENSHIFT_MYSQL_DB_HOST:$OPENSHIFT_MYSQL_DB_PORT/
You can manage your new MySQL database by also embedding phpmyadmin-3.4.
The phpmyadmin username and password will be the same as the MySQL credentials above.
phpMyAdmin added.  Please make note of these MySQL credentials again:
   Root User: adminP7xsHBP
   Root Password: 1FI13tw4vBsL
URL: https://app1-jhou.dev.rhcloud.com/phpmyadmin/