Class: Yoker::CLI::Init

Inherits:
Base
  • Object
show all
Defined in:
lib/yoker/cli/init.rb

Instance Method Summary collapse

Methods inherited from Base

#append_to_file, #create_file, source_root, #template

Instance Method Details

#generateObject



42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
# File 'lib/yoker/cli/init.rb', line 42

def generate
  detect_rails_app!

  info "Setting up development environment for Rails application: #{current_directory_name}"

  config = build_configuration

  info "Configuration:"
  display_configuration(config)

  return if !options[:force] && !prompt.yes?("Continue with this configuration?")

  spinner = spinner("Generating development setup files...")
  spinner.auto_spin

  begin
    generator = Generators::BaseGenerator.new(config, self)
    generator.generate_all

    spinner.success("✅ Development setup complete!")

    display_next_steps(config)
  rescue StandardError => e
    spinner.error("❌ Setup failed: #{e.message}")
    puts e.backtrace.join("\n") if ENV["DEBUG"]
    raise
  end
end