Skip to content
This repository has been archived by the owner on Mar 19, 2022. It is now read-only.

Latest chef-omnibus is broken on Ubuntu 12.4 LTS #98

Open
leehambley opened this issue Aug 22, 2012 · 0 comments
Open

Latest chef-omnibus is broken on Ubuntu 12.4 LTS #98

leehambley opened this issue Aug 22, 2012 · 0 comments

Comments

@leehambley
Copy link

Further to our IRC conversation that centered around:

The original problem being trying to use:

chef_gem "pg"
# or..
gem_package "pg"

There are more details, and a couple of workarounds in the ticket description.

I agree with your suggestion to fall back to system ruby, plus ruby-gem installation of chef on knife prepare.

The alternative installation suggestions (using -d ubuntu12.04-gems) also fail under the latest knife-solo, probably also related to changes in Chef:

➜  example-chef git:(master) ✗ knife bootstrap -d ubuntu12.04-gems -u root onion.example.com -VV                      
WARNING: No knife configuration file found
DEBUG: Using configuration from 
Bootstrapping Chef on onion.example.com
DEBUG: Looking for bootstrap template in /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife/bootstrap
DEBUG: Found bootstrap template in /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife/bootstrap
/Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife/core/bootstrap_context.rb:50:in `read': No such file or directory - /etc/chef/validation.pem (Errno::ENOENT)
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife/core/bootstrap_context.rb:50:in `validation_key'
    from (erubis):16:in `block in evaluate'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/erubis-2.7.0/lib/erubis/evaluator.rb:74:in `instance_eval'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/erubis-2.7.0/lib/erubis/evaluator.rb:74:in `evaluate'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife/bootstrap.rb:152:in `render_template'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife/bootstrap.rb:210:in `ssh_command'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife/bootstrap.rb:190:in `knife_ssh'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife/bootstrap.rb:167:in `run'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife.rb:402:in `run_with_pretty_exceptions'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/knife.rb:168:in `run'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/lib/chef/application/knife.rb:123:in `run'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/lib/ruby/gems/1.9.1/gems/chef-10.12.0/bin/knife:25:in `<top (required)>'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/bin/knife:23:in `load'
    from /Users/codebeaker/.rbenv/versions/1.9.3-p194-perf/bin/knife:23:in `<main>'

This may be a separate issue, or it may be possible to tweak the documentation to reflect a manual installation on the server.

Being absolutely honest I'd like to see a server-side installation of Chef against Ruby 1.9, whilst 12.04 still ships with Ruby 1.8 by default. ( I believe, my system has had this done to it: https://gist.github.com/f8125568d0f1d68af94d )

My run_list:

Setting the run_list to ["role[base]", "role[web_server]", "role[redis_server]", "role[database_server]", "role[application_server]", "role[elasticsearch_server]", "recipe[web_application]"] from JSON
[2012-08-22T20:14:54+00:00] INFO: Run List is [role[base], role[web_server], role[redis_server], role[database_server], role[application_server], role[elasticsearch_server], recipe[web_application]]
[2012-08-22T20:14:54+00:00] INFO: Run List expands to [build-essential, git, htop, ruby_build, readline, rbenv::system, sudo, user, timezone, nginx::source, elasticsearch_proxy, redis, redis::source, postgresql::server, postgresql::client, java, elasticsearch, web_application]

And the problem-causing part of that web_application site-cookbook is:

chef_gem 'pg'

postgresql_connection_info = {
  :host     => '127.0.0.1',
  :port     => 5432,
  :username => 'postgres',
  :password => node['postgresql']['password']['postgres']
}

Specially the chef_gem "pg" part (same story with gem_package)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant