Bug 1202514

Summary: Application creation failure when specifying --from-code=empty along with db cartridge
Product: OpenShift Container Platform Reporter: Brenton Leanhardt <bleanhar>
Component: ImageStreamsAssignee: Jason DeTiberus <jdetiber>
Status: CLOSED ERRATA QA Contact: libra bugs <libra-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 2.2.0CC: adellape, gpei, jokerman, libra-bugs, libra-onpremise-devel, maszulik, mmccomas, pruan, ruliu, wzheng
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: rubygem-openshift-origin-node-1.35.4.1-1.el6op Doc Type: Bug Fix
Doc Text:
Previously, when using the "--from-code=empty" option to create an application with an empty Git repository, the application would fail to create if a database cartridge was also specified in the request. This bug fix updates the creation logic, and as a result applications can be successfully created in this scenario.
Story Points: ---
Clone Of: 1192557 Environment:
Last Closed: 2015-04-06 17:06:50 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:
Bug Depends On: 1192557    
Bug Blocks:    

Description Brenton Leanhardt 2015-03-16 19:07:46 UTC
+++ This bug was initially created as a clone of Bug #1192557 +++

Description of problem:
Whenever I want to create an application with empty git repository (using --from-code=empty) and I specify a db cart along language one I'm getting: 

Error: couldn't connect to server 127.1.245.130:27017 at src/mongo/shell/mongo.js:147
exception: connect failed

Everything works OK when not specifying DB cart, though.


How reproducible:
Always, if db cart is specified along lang. Tested it with python, nodejs, mongo and mysql in different combinations.


Steps to Reproduce:
1. rhc app-create errapp nodejs-0.10 mongodb-2.4 --from-code=empty


Actual results:
$ rhc app-create errapp nodejs-0.10 mongodb-2.4 --from-code=empty
Application Options
-------------------
Domain:      mydomain
Cartridges:  nodejs-0.10, mongodb-2.4
Source Code: empty
Gear Size:   default
Scaling:     no

Creating application 'errapp' ... 
MongoDB shell version: 2.4.9
connecting to: 127.1.245.130/test
Fri Feb 13 16:26:50.646 Error: couldn't connect to server 127.1.245.130:27017 at src/mongo/shell/mongo.js:147
exception: connect failed


Expected results:
Application gets created.

--- Additional comment from Maciej Szulik on 2015-02-13 12:05:03 EST ---

PR solving this is issue is here https://github.com/openshift/origin-server/pull/6074

--- Additional comment from openshift-github-bot on 2015-02-13 17:56:03 EST ---

Commits pushed to master at https://github.com/openshift/origin-server

https://github.com/openshift/origin-server/commit/eb1f5e3bb40be1af8f427f5837bc1ac8a996f6a7
Bug 1192557 - Fixed creating application using --from-code=empty when
database cartridge is also specified.

https://github.com/openshift/origin-server/commit/83d07c09735a06a0e7540b976e1ad81f0f60487c
Merge pull request #6074 from soltysh/bug1192557

Merged by openshift-bot

--- Additional comment from Wenjing Zheng on 2015-02-16 22:47:50 EST ---

Reopen on devenv_5433.
The app can be create successfully without previous error, but when try to access db after ssh to app, the similar error appears (mysql and postgresql works well with empty git repo):
[errapp-w.dev.rhcloud.com 54e2f9e091494a669c000001]\> mongo
MongoDB shell version: 2.4.9
connecting to: 127.1.244.2:27017/admin
Tue Feb 17 03:31:02.781 Error: couldn't connect to server 127.1.244.2:27017 at src/mongo/shell/mongo.js:147
exception: connect failed

--- Additional comment from Maciej Szulik on 2015-02-23 08:00:15 EST ---

Checked no devenv_5444 (ami-60ecbd08) works OK.

--- Additional comment from Ruikai Liu on 2015-02-24 21:22:31 EST ---

Tried on devenv_5449:

1. Create an app with empty repo and there's no error:
$ rhc app create errapp nodejs-0.10 mongodb-2.4 --from-code=empty --no-git

Application Options
-------------------
Domain:      ruliu0
Cartridges:  nodejs-0.10, mongodb-2.4
Source Code: empty
Gear Size:   default
Scaling:     no

Creating application 'errapp' ... An empty Git repository has been created for your application.  Use 'git push' to add your code.
done
...

2. SSH into the app and then access the db. No connection error:
$ rhc ssh errapp
[errapp-ruliu0.dev.rhcloud.com 54ed7639075437a983000001]\> mongo
MongoDB shell version: 2.4.9
connecting to: 127.1.244.2:27017/admin
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
        http://docs.mongodb.org/
Questions? Try the support group
        http://groups.google.com/group/mongodb-user
>

Comment 3 Gaoyun Pei 2015-03-17 03:04:44 UTC
Verify this bug with rubygem-openshift-origin-node-1.35.4.1-1.el6op.noarch.

App could be created without error, and db(mongodb, mysql, postgresql) could be connected.

[root@broker ~]# rhc app-create test1 nodejs-0.10 mysql-5.5 -s --from-code=empty
Application Options
-------------------
Domain:      yes
Cartridges:  nodejs-0.10, mysql-5.5
Source Code: empty
Gear Size:   default
Scaling:     yes

Creating application 'test1' ... An empty Git repository has been created for your application.  Use 'git push' to add your code.
done

  MySQL 5.5 database added.  Please make note of these credentials:

...
Run 'rhc show-app test1' for more details about your app.

[test1-yes.ose22-manual.com.cn yes-test1-2]\> mysql
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 3
Server version: 5.5.41 MySQL Community Server (GPL)

Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective

Comment 5 errata-xmlrpc 2015-04-06 17:06:50 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2015-0779.html