Created
September 9, 2013 09:15
-
-
Save xorpaul/6493311 to your computer and use it in GitHub Desktop.
foreman init db missing puppet gem
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/usr/share/foreman# su - foreman -s /bin/bash -c /usr/share/foreman/extras/dbmigrate | |
rake aborted! | |
cannot load such file -- puppet | |
Tasks: TOP => db:migrate => environment | |
(See full trace by running task with --trace) | |
/usr/share/foreman# RAILS_ENV=production bundle exec rake db:migrate | |
rake aborted! | |
cannot load such file -- puppet | |
Tasks: TOP => db:migrate => environment | |
(See full trace by running task with --trace) | |
/usr/share/foreman# head -5 /usr/share/foreman/config/initializers/puppet.rb | |
require 'active_support/dependencies' | |
ActiveSupport::Dependencies.unhook! | |
require 'puppet' | |
require 'puppet/rails' | |
# irb | |
irb(main):001:0> require 'puppet' | |
=> true | |
irb(main):002:0> |
Solving this in puppet would be:
# install puppet gem in bundle vendor path
file { "${foreman::params::app_root}/bundler.d/Gemfile.local.rb":
owner => $foreman::user,
group => $foreman::group,
content => 'gem \'puppet\'',
# uncomment if you haven’t explicitly set db_manage to false
#before => Exec['dbmigrate'],
}
->
exec { 'foreman-bundle-install':
command => 'bundle install',
cwd => $foreman::app_root,
user => $foreman::user,
environment => "HOME=${foreman::app_root}",
path => '/usr/sbin:/usr/bin:/bin',
logoutput => 'on_failure',
}
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The solution was to add the puppet gem to the bundler dependencies by adding another file under bundler.d:
and another bundler install: