Class: Decidim::Generators::AppGenerator
- Inherits:
-
Rails::Generators::AppGenerator
- Object
- Rails::Generators::AppGenerator
- Decidim::Generators::AppGenerator
- Defined in:
- lib/generators/decidim/app_generator.rb
Overview
Generates a Rails app and installs decidim to it. Uses the default Rails generator for most of the work.
Remember that, for how generators work, actions are executed based on the definition order of the public methods.
Instance Method Summary collapse
- #add_ignore_uploads ⇒ Object
- #app_const_base ⇒ Object
- #authorization_handler ⇒ Object
- #cable_yml ⇒ Object
- #database_yml ⇒ Object
- #decidim_controller ⇒ Object
- #docker ⇒ Object
- #install ⇒ Object
- #readme ⇒ Object
- #remove_default_error_pages ⇒ Object
- #secret_token ⇒ Object
- #source_paths ⇒ Object
Instance Method Details
#add_ignore_uploads ⇒ Object
90 91 92 93 94 |
# File 'lib/generators/decidim/app_generator.rb', line 90 def add_ignore_uploads unless ["skip_git"] append_file ".gitignore", "\n# Ignore public uploads\npublic/uploads" end end |
#app_const_base ⇒ Object
86 87 88 |
# File 'lib/generators/decidim/app_generator.rb', line 86 def app_const_base ["app_const_base"] || super end |
#authorization_handler ⇒ Object
101 102 103 |
# File 'lib/generators/decidim/app_generator.rb', line 101 def template "authorization_handler.rb", "app/services/example_authorization_handler.rb", force: true end |
#cable_yml ⇒ Object
65 66 67 |
# File 'lib/generators/decidim/app_generator.rb', line 65 def cable_yml template "cable.yml.erb", "config/cable.yml", force: true end |
#database_yml ⇒ Object
52 53 54 |
# File 'lib/generators/decidim/app_generator.rb', line 52 def database_yml template "database.yml.erb", "config/database.yml", force: true end |
#decidim_controller ⇒ Object
56 57 58 |
# File 'lib/generators/decidim/app_generator.rb', line 56 def decidim_controller template "decidim_controller.rb.erb", "app/controllers/decidim_controller.rb", force: true end |
#docker ⇒ Object
60 61 62 63 |
# File 'lib/generators/decidim/app_generator.rb', line 60 def docker template "Dockerfile.erb", "Dockerfile" template "docker-compose.yml.erb", "docker-compose.yml" end |
#install ⇒ Object
78 79 80 81 82 83 84 |
# File 'lib/generators/decidim/app_generator.rb', line 78 def install Decidim::Generators::InstallGenerator.start [ "--recreate_db=#{[:recreate_db]}", "--migrate=#{[:migrate]}", "--app_name=#{app_name}" ] end |
#readme ⇒ Object
69 70 71 |
# File 'lib/generators/decidim/app_generator.rb', line 69 def readme template "README.md.erb", "README.md", force: true end |
#remove_default_error_pages ⇒ Object
96 97 98 99 |
# File 'lib/generators/decidim/app_generator.rb', line 96 def remove_default_error_pages remove_file "public/404.html" remove_file "public/500.html" end |
#secret_token ⇒ Object
73 74 75 76 |
# File 'lib/generators/decidim/app_generator.rb', line 73 def secret_token require "securerandom" SecureRandom.hex(64) end |
#source_paths ⇒ Object
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/generators/decidim/app_generator.rb', line 20 def source_paths [ File.("../templates", __FILE__), File.(File.join(Gem::Specification .find_by_name("railties").gem_dir, "lib", "rails", "generators", "rails", "app", "templates")) ] end |