lib/generators/roles/config/config_generator.rb in cream-0.7.0 vs lib/generators/roles/config/config_generator.rb in cream-0.7.2
- old
+ new
@@ -13,14 +13,15 @@
class_option :orm, :type => :string, :default => 'active_record', :desc => "ORM to use"
class_option :strategy, :type => :string, :default => 'role_string', :desc => "Roles strategy to use"
class_option :roles, :type => :array, :default => ['guest', 'admin'], :desc => "Valid roles to use"
class_option :logfile, :type => :string, :default => nil, :desc => "Logfile location"
class_option :default_roles, :type => :boolean, :default => true, :desc => "Create default roles :admin and :guest"
-
+ class_option :gems, :type => :boolean, :default => false, :desc => "Add gems to gemfile?"
+
def configure_roles
logger.add_logfile :logfile => logfile if logfile
- roles_gems
+ roles_gems if gems?
create_roles
set_valid_roles_cream
use_roles_strategy
end
@@ -29,10 +30,14 @@
include Rails3::Assist::BasicLogger
extend Rails3::Assist::UseMacro
use_helpers :model, :file
+ def gems?
+ options[:gems]
+ end
+
def logfile
options[:logfile]
end
# rails generate ...
@@ -60,15 +65,16 @@
def default_roles?
options[:default_roles]
end
def roles_gems
- gem "roles_#{orm}"
- # bundle_install
+ gem_name = "roles_#{orm}"
+ gem gem_name
+ bundle_install gem_name
end
- def bundle_install
- run "bundle install"
+ def bundle_install *gems
+ run "bundle install #{gems.join(' ')}"
end
def roles_generator
"#{orm}:roles"
end
\ No newline at end of file