Bug 997825

Summary: Fail to install gems with Gemfile & Gemfile.lock for ruby apps
Product: OpenShift Online Reporter: Zhe Wang <zhewang>
Component: ContainersAssignee: Michal Fojtik <mfojtik>
Status: CLOSED CURRENTRELEASE QA Contact: libra bugs <libra-bugs>
Severity: high Docs Contact:
Priority: high    
Version: 2.xCC: mfojtik, xtian
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-08-29 12:52:05 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:

Description Zhe Wang 2013-08-16 09:16:19 UTC
Description of problem:
Given a ruby application (either ruby-1.8 or ruby-1.9), it always fails to install gems to this app with Gemfile & Gemfile.lock.

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

How reproducible:
always

Steps to Reproduce:
1. create a ruby application of either ruby-1.8 or ruby-1.9
2. install rack-1.5.2 gem to this app, and the content of Gemfile and Gemfile.lock is as below:

Gemfile:
<------>
source 'http://rubygems.org'

gem 'rack'
<------>

Gemfile.lock
<------>
GEM
  remote: http://rubygems.org/
  specs:
    rack (1.5.2)

PLATFORMS
  ruby

DEPENDENCIES
  rack
<------>

3. push the Gemfile and Gemfile.lock to the app's repo, and install the rack gem.

Actual results:
Building the app failed with the errors:

Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 429 bytes, done.
Total 4 (delta 1), reused 0 (delta 0)
remote: Stopping Ruby cartridge
remote: Waiting for stop to finish
remote: An error occurred executing 'gear postreceive' (exit code: 1)
remote: Error message: Failed to execute: 'control pre-build' for /var/lib/openshift/fd60b242064e11e3989222000aa473d0/ruby
remote: 
remote: For more details about the problem, try running the command again with the '--trace' option.
To ssh://fd60b242064e11e3989222000aa473d0.rhcloud.com/~/git/rb91.git/
   dff292c..ce60dbc  master -> master

Expected results:
Installing the rack gem with Gemfile & Gemfile.lock should be successful.

Additional info:

Comment 1 Michal Fojtik 2013-08-16 14:18:16 UTC
Hi

I have fix for this and will publish a pull request right after Github will recover from another DDos ;-)

Comment 2 Michal Fojtik 2013-08-16 14:24:09 UTC
Pull request:

https://github.com/openshift/origin-server/pull/3385

Comment 3 openshift-github-bot 2013-08-16 18:35:44 UTC
Commit pushed to master at https://github.com/openshift/origin-server

https://github.com/openshift/origin-server/commit/ea51dea81178d9a38a92990cfc335c213587ab06
Bug 997825 - Fail to install gems with Gemfile & Gemfile.lock for ruby apps

Comment 4 Zhe Wang 2013-08-19 09:37:09 UTC
Verified in devenv_3671.

Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 429 bytes, done.
Total 4 (delta 1), reused 0 (delta 0)
remote: Stopping Ruby cartridge
remote: Waiting for stop to finish
remote: Building Ruby cartridge
remote: Bundling RubyGems based on Gemfile/Gemfile.lock to repo/vendor/bundle with 'bundle install --deployment'
remote: Fetching gem metadata from http://rubygems.org/..........
remote: Installing rack (1.5.2) 
remote: Using bundler (1.1.4) 
remote: Your bundle is complete! It was installed into ./vendor/bundle
remote: Starting application rb9
remote: Starting Ruby cartridge
To ssh://737908645633054264524800.rhcloud.com/~/git/rb9.git/
   94288cb..648f4ea  master -> master