class Railsone::Generators::InstallGenerator
Public Instance Methods
init_emberjs_structure()
click to toggle source
# File lib/railsone/generators/install_generator.rb, line 51 def init_emberjs_structure generate 'ember:bootstrap' route "root 'portal#index'" application(nil, env: "development") do "config.ember.variant = :development" end application(nil, env: "production") do "config.ember.variant = :production" end remove_file 'app/assets/javascripts/application.js' remove_file "app/assets/javascripts/store.js.coffee" copy_file 'app/assets/javascripts/application.js', 'app/assets/javascripts/application.js' copy_file 'app/assets/javascripts/portal.js', 'app/assets/javascripts/portal.js' copy_file 'app/assets/javascripts/templates/application.hbs', 'app/assets/javascripts/templates/application.hbs' copy_file 'app/views/portal/index.html.erb', 'app/views/portal/index.html.erb' copy_file 'app/controllers/portal_controller.rb', 'app/controllers/portal_controller.rb' inject_into_file 'app/assets/javascripts/portal.js', :after => "//= require ember" do "\n//= require #{app_name.underscore}" end remove_file "app/assets/javascripts/#{app_name.underscore}.js.coffee" template 'app/assets/javascripts/app_name.js.coffee.erb', "app/assets/javascripts/#{app_name.underscore}.js.coffee" end
init_git()
click to toggle source
# File lib/railsone/generators/install_generator.rb, line 103 def init_git git :init end
init_twitter_bootstrap_css()
click to toggle source
# File lib/railsone/generators/install_generator.rb, line 80 def init_twitter_bootstrap_css #inject_into_file 'app/assets/javascripts/application.js', "\n//= require twitter/bootstrap\n", :after => "//= require turbolinks" remove_file 'app/assets/stylesheets/application.css' # create_file "app/assets/stylesheets/application.css.scss" do # %Q(//= require_self\n//= require common) # end # create_file "app/assets/stylesheets/common.css.scss" do # %q(@import "twitter/bootstrap";) # end copy_file 'app/assets/stylesheets/application.css.scss', 'app/assets/stylesheets/application.css.scss' copy_file 'app/assets/stylesheets/common.css.scss', 'app/assets/stylesheets/common.css.scss' #directory 'stylesheets', 'app/assets/stylesheets' end
replace_application_html_erb()
click to toggle source
# File lib/railsone/generators/install_generator.rb, line 97 def replace_application_html_erb remove_file 'app/views/layouts/application.html.erb' copy_file 'app/views/layouts/application.html.erb', 'app/views/layouts/application.html.erb' inject_into_file 'app/views/layouts/application.html.erb', "\n<title>#{app_name}</title>", :after => %Q(<meta name="viewport" content="width=device-width, initial-scale=1.0">) end
secure_secret_token_from_env()
click to toggle source
# File lib/railsone/generators/install_generator.rb, line 44 def secure_secret_token_from_env comment_lines 'config/initializers/secret_token.rb', /config.secret_key_base/ append_to_file 'config/initializers/secret_token.rb', "#{app_name}::Application.config.secret_key_base = ENV['SECRET_TOKEN']" secret_token = SecureRandom.urlsafe_base64(64, false) append_to_file '.env' , "SECRET_TOKEN=#{secret_token}\n" end
set_ignore_file_to_git()
click to toggle source
# File lib/railsone/generators/install_generator.rb, line 107 def set_ignore_file_to_git append_to_file '.gitignore', '.env' end
setup_all_gems_with_bundle_install()
click to toggle source
self.source_paths << File.join(self.root_folder , 'templates')
# File lib/railsone/generators/install_generator.rb, line 19 def setup_all_gems_with_bundle_install gem 'ember-rails' gem 'ember-source', '1.0.0' gem 'anjlab-bootstrap-rails', '>= 3.0.0', :require => 'bootstrap-rails' comment_lines 'Gemfile', 'gem \'sqlite3\'' # gsub_file 'Gemfile', 'gem \'sqlite3\'', '#gem \'sqlite3\'' gem_group :development do gem "powder" gem 'dotenv-rails' gem 'sqlite3' end say "create .env for dotenv-rails" create_file '.env' say "set gems for production on heroku" gem_group :production do gem 'pg' gem 'thin' end run 'bundle install' end