Bug 979302

Summary: OpenShift Origin console access fails with Could not find gem 'formtastic (~> 1.2.4) ruby'
Product: OKD Reporter: Jan Pazdziora <jpazdziora>
Component: PodAssignee: Krishna Raman <kraman>
Status: CLOSED CURRENTRELEASE QA Contact: libra bugs <libra-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 2.xCC: abhgupta, jhou, jpazdziora, mfisher
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: 2014-01-24 03:21:27 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 Jan Pazdziora 2013-06-28 07:57:58 UTC
Description of problem:

Installing all-on-one-machine OpenShift Origin on Fedora 19 using the documentation at http://openshift.github.io/origin/file.install_origin_using_puppet.html, the installation passed but accessing the console fails with 500 ISE.

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

# rpm -q openshift-origin-console
openshift-origin-console-1.10.2-1.git.0.4a9aaa7.fc19.noarch

and OpenShift Origin Fedora 19 compose at https://mirror.openshift.com/pub/origin-server/nightly/fedora-19/latest/x86_64/ as of today.

How reproducible:

Assume deterministic.

Steps to Reproduce:
1. Install OpenShift Origin on Fedora 19.
2. Try to do wget --no-check-certificate --http-user=admin --http-password=admin -O - http://broker.example.com/

Actual results:

HTTP request sent, awaiting response... 500 Internal Server Error
2013-06-28 03:52:19 ERROR 500: Internal Server Error.

and in the /var/log/openshift/console/httpd/error_log there is

[ pid=25895 thr=3571320 file=utils.rb:176 time=2013-06-28 03:57:35.328 ]: *** Exception PhusionPassenger::UnknownError in PhusionPassenger::Rack::ApplicationSpawner (Could not find gem 'formtastic (~> 1.2.4) ruby', which is required by gem 'openshift-origin-console (>= 0) ruby', in any of the sources. (Bundler::VersionConflict)) (process 25895, thread #<Thread:0x000000006cfcf0>):
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler/resolver.rb:130:in `block in resolve'
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler/resolver.rb:128:in `catch'
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler/resolver.rb:128:in `resolve'
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler/definition.rb:179:in `resolve'
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler/definition.rb:114:in `specs'
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler/definition.rb:159:in `specs_for'
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler/definition.rb:148:in `requested_specs'
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler/environment.rb:18:in `requested_specs'
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler/runtime.rb:13:in `setup'
	from /usr/share/gems/gems/bundler-1.3.1/lib/bundler.rb:120:in `setup'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/utils.rb:326:in `prepare_app_process'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/rack/application_spawner.rb:156:in `block in initialize_server'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/utils.rb:563:in `report_app_init_status'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/rack/application_spawner.rb:154:in `initialize_server'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server.rb:204:in `start_synchronously'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server.rb:180:in `start'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/rack/application_spawner.rb:129:in `start'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/spawn_manager.rb:253:in `block (2 levels) in spawn_rack_application'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server_collection.rb:132:in `lookup_or_add'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/spawn_manager.rb:246:in `block in spawn_rack_application'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server_collection.rb:82:in `block in synchronize'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server_collection.rb:79:in `synchronize'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/spawn_manager.rb:244:in `spawn_rack_application'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/spawn_manager.rb:137:in `spawn_application'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/spawn_manager.rb:275:in `handle_spawn_application'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server.rb:357:in `server_main_loop'
	from /usr/share/gems/gems/passenger-3.0.21/lib/phusion_passenger/abstract_server.rb:206:in `start_synchronously'
	from /usr/share/gems/gems/passenger-3.0.21/helper-scripts/passenger-spawn-server:102:in `<main>'

Expected results:

No error.

Additional info:

Comment 2 Jan Pazdziora 2013-06-28 08:00:14 UTC
In Fedora 19, ther is rubygem-formtastic-1.2.3-9.fc19.noarch which is what is installed on my installation. Yet the thing requires ~> 1.2.4.

Comment 3 Jan Pazdziora 2013-06-28 08:11:09 UTC
https://github.com/openshift/origin-server/pull/2963 should fix the problem.

Comment 4 Jan Pazdziora 2013-06-28 09:24:00 UTC
Even compose

https://mirror.openshift.com/pub/origin-server/nightly/fedora-19/2013-06-20/x86_64/

fails which was working few days ago. I have no idea why it started to fail now. The closest I can assume is that rubygems.org no longer has anything matching ~> 1.2.4.

It would be good to start depending on Fedora rpms more and rubygems.org less.

Comment 5 Jan Pazdziora 2013-07-02 14:13:39 UTC
The formtastic issue was already reported for Fedora 18 back in February as bug 916768.

Comment 6 Jan Pazdziora 2013-07-10 07:58:52 UTC
Commit 9068d50f93808ad34f45a663320e41e0cfc25aa6 changed the dependency to

-  s.add_dependency 'formtastic',          '~> 1.2.4'
+  s.add_dependency 'formtastic',          '>= 1.2.3'

and made the https://github.com/openshift/origin-server/pull/2963 obsolete.

Comment 7 Abhishek Gupta 2013-11-13 19:34:07 UTC
This should now be fixed.

Comment 8 Jianwei Hou 2013-11-15 10:16:35 UTC
Verified on latest origin build

[root@broker ~]# wget --no-check-certificate --http-user=admin --http-password=admin -O - http://broker.example.com/console
--2013-11-15 18:14:56--  http://broker.example.com/console
Resolving broker.example.com (broker.example.com)... 10.66.8.145
Connecting to broker.example.com (broker.example.com)|10.66.8.145|:80... connected.
HTTP request sent, awaiting response... 302 Found
Location: https://broker.example.com/console [following]
--2013-11-15 18:14:56--  https://broker.example.com/console
Connecting to broker.example.com (broker.example.com)|10.66.8.145|:443... connected.
WARNING: cannot verify broker.example.com's certificate, issued by '/C=--/ST=SomeState/L=SomeCity/O=SomeOrganization/OU=SomeOrganizationalUnit/CN=broker.example.com/emailAddress=root.com':
  Unable to locally verify the issuer's authority.
HTTP request sent, awaiting response... 401 Unauthorized
Reusing existing connection to broker.example.com:443.
HTTP request sent, awaiting response... 401 Unauthorized
Authorization failed.

Comment 9 Jan Pazdziora 2013-11-20 07:26:17 UTC
(In reply to Hou Jianwei from comment #8)
> Verified on latest origin build

On what OS and how did you install that build?

Comment 10 Jianwei Hou 2013-11-22 03:21:23 UTC
(In reply to Jan Pazdziora from comment #9)
> (In reply to Hou Jianwei from comment #8)
> > Verified on latest origin build
> 
> On what OS and how did you install that build?

It was installed on Fedora 19 with the image downloaded from http://openshift.github.io/ on Nov. 15th