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
87 88 89 90 91 |
# File 'lib/generators/decidim/app_generator.rb', line 87 def add_ignore_uploads unless ["skip_git"] append_file ".gitignore", "\n# Ignore public uploads\npublic/uploads" end end |
#app_const_base ⇒ Object
83 84 85 |
# File 'lib/generators/decidim/app_generator.rb', line 83 def app_const_base ["app_const_base"] || super end |
#authorization_handler ⇒ Object
98 99 100 |
# File 'lib/generators/decidim/app_generator.rb', line 98 def template "authorization_handler.rb", "app/services/example_authorization_handler.rb", force: true end |
#cable_yml ⇒ Object
63 64 65 |
# File 'lib/generators/decidim/app_generator.rb', line 63 def cable_yml template "cable.yml.erb", "config/cable.yml", force: true end |
#database_yml ⇒ Object
50 51 52 |
# File 'lib/generators/decidim/app_generator.rb', line 50 def database_yml template "database.yml.erb", "config/database.yml", force: true end |
#decidim_controller ⇒ Object
54 55 56 |
# File 'lib/generators/decidim/app_generator.rb', line 54 def decidim_controller template "decidim_controller.rb.erb", "app/controllers/decidim_controller.rb", force: true end |
#docker ⇒ Object
58 59 60 61 |
# File 'lib/generators/decidim/app_generator.rb', line 58 def docker template "Dockerfile.erb", "Dockerfile" template "docker-compose.yml.erb", "docker-compose.yml" end |
#install ⇒ Object
76 77 78 79 80 81 |
# File 'lib/generators/decidim/app_generator.rb', line 76 def install Decidim::Generators::InstallGenerator.start [ "--recreate_db=#{[:recreate_db]}", "--app_name=#{app_name}" ] end |
#readme ⇒ Object
67 68 69 |
# File 'lib/generators/decidim/app_generator.rb', line 67 def readme template "README.md.erb", "README.md", force: true end |
#remove_default_error_pages ⇒ Object
93 94 95 96 |
# File 'lib/generators/decidim/app_generator.rb', line 93 def remove_default_error_pages remove_file "public/404.html" remove_file "public/500.html" end |
#secret_token ⇒ Object
71 72 73 74 |
# File 'lib/generators/decidim/app_generator.rb', line 71 def secret_token require "securerandom" SecureRandom.hex(64) end |
#source_paths ⇒ Object
21 22 23 24 25 26 27 28 29 30 |
# File 'lib/generators/decidim/app_generator.rb', line 21 def source_paths [ File.("templates", __dir__), File.(File.join(Gem::Specification .find_by_name("railties").gem_dir, "lib", "rails", "generators", "rails", "app", "templates")) ] end |