Class: Rails::Command::DevcontainerCommand
Relationships & Source Files | |
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
Base ,
Thor
|
|
Instance Chain:
|
|
Inherits: |
Rails::Command::Base
|
Defined in: | railties/lib/rails/commands/devcontainer/devcontainer_command.rb |
Class Attribute Summary
Base
- Inherited
.bin, .bin?, | |
.engine? | Returns true when the app is a Rails engine. |
.exit_on_failure? |
Class Method Summary
Base
- Inherited
.banner, | |
.base_name | Sets the base_name taking into account the current class namespace. |
.command_name | Return command name without namespaces. |
.default_command_root | Default file root to place extra files a command might need, placed one folder above the command file. |
.desc | Tries to get the description from a USAGE file one folder above the command root. |
.executable, | |
.hide_command! | Convenience method to hide this command from the available ones when running rails command. |
.namespace | Convenience method to get the namespace from the class name. |
.printing_commands, | |
.usage_path | Path to lookup a USAGE description in a file. |
.create_command | Allow the command method to be called perform. |
.namespaced_name, .resolve_path, .class_usage, | |
.help | Override Thor’s class-level help to also show the USAGE. |
.inherited, .perform |
Instance Method Summary
- #perform
- #database private
- #devcontainer_options private
Actions
- Included
#boot_application!, #load_environment_config!, | |
#load_generators | See additional method definition at line 36. |
#load_tasks | See additional method definition at line 31. |
#require_application!, | |
#set_application_directory! | Change to the application’s path if there is no |
Instance Method Details
#database (private)
[ GitHub ]# File 'railties/lib/rails/commands/devcontainer/devcontainer_command.rb', line 34
def database adapter = ActiveRecord::Base.connection_db_config.adapter adapter == "mysql2" ? "mysql" : adapter end
#devcontainer_options (private)
[ GitHub ]# File 'railties/lib/rails/commands/devcontainer/devcontainer_command.rb', line 22
def @devcontainer_options ||= { app_name: Rails.application.railtie_name.chomp("_application"), database: !!defined?(ActiveRecord) && database, active_storage: !!defined?(ActiveStorage), redis: !!((defined?(ActionCable) && !defined?(SolidCable)) || (defined?(ActiveJob) && !defined?(SolidQueue))), system_test: File.exist?("test/application_system_test_case.rb"), node: File.exist?(".node-version"), kamal: File.exist?("config/deploy.yml"), } end
#perform
[ GitHub ]# File 'railties/lib/rails/commands/devcontainer/devcontainer_command.rb', line 10
def perform(*) boot_application! say "Generating Dev Container with the following options:" .each do |option, value| say "#{option}: #{value}" end Rails::Generators::DevcontainerGenerator.new([], ).invoke_all end