Class: RobotLab::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- RobotLab::Generators::InstallGenerator
- Includes:
- Rails::Generators::Migration
- Defined in:
- lib/generators/robot_lab/install_generator.rb
Class Method Summary collapse
Instance Method Summary collapse
- #create_directories ⇒ Object
- #create_initializer ⇒ Object
- #create_job ⇒ Object
- #create_migration ⇒ Object
- #create_models ⇒ Object
- #display_post_install ⇒ Object
Class Method Details
.next_migration_number(dirname) ⇒ Object
18 19 20 |
# File 'lib/generators/robot_lab/install_generator.rb', line 18 def self.next_migration_number(dirname) ::ActiveRecord::Generators::Base.next_migration_number(dirname) end |
Instance Method Details
#create_directories ⇒ Object
45 46 47 48 |
# File 'lib/generators/robot_lab/install_generator.rb', line 45 def create_directories empty_directory "app/robots" empty_directory "app/tools" end |
#create_initializer ⇒ Object
22 23 24 |
# File 'lib/generators/robot_lab/install_generator.rb', line 22 def create_initializer template "initializer.rb.tt", "config/initializers/robot_lab.rb" end |
#create_job ⇒ Object
39 40 41 42 43 |
# File 'lib/generators/robot_lab/install_generator.rb', line 39 def create_job return if [:skip_job] template "job.rb.tt", "app/jobs/robot_run_job.rb" end |
#create_migration ⇒ Object
26 27 28 29 30 |
# File 'lib/generators/robot_lab/install_generator.rb', line 26 def create_migration return if [:skip_migration] migration_template "migration.rb.tt", "db/migrate/create_robot_lab_tables.rb" end |
#create_models ⇒ Object
32 33 34 35 36 37 |
# File 'lib/generators/robot_lab/install_generator.rb', line 32 def create_models return if [:skip_migration] template "thread_model.rb.tt", "app/models/robot_lab_thread.rb" template "result_model.rb.tt", "app/models/robot_lab_result.rb" end |
#display_post_install ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/generators/robot_lab/install_generator.rb', line 50 def display_post_install say "" say "RobotLab installed successfully!", :green say "" say "Next steps:" say " 1. Run migrations: rails db:migrate" say " 2. Configure your LLM API keys in config/initializers/robot_lab.rb" say " 3. Generate your first robot: rails g robot_lab:robot MyRobot" say " 4. Enqueue robot runs via RobotRunJob (app/jobs/robot_run_job.rb)" unless [:skip_job] say "" end |