class ExternalServices::Generators::InstallGenerator
Installs ExternalServices
in a rails app.
Public Class Methods
next_migration_number(dirname)
click to toggle source
# File lib/generators/install_generator.rb, line 31 def self.next_migration_number(dirname) ::ActiveRecord::Generators::Base.next_migration_number(dirname) end
Public Instance Methods
create_directories()
click to toggle source
# File lib/generators/install_generator.rb, line 25 def create_directories create_directory 'app/models/external_services/api_actions' create_directory 'app/jobs/external_services' create_directory 'lib/external_services/api' end
create_migration_files()
click to toggle source
# File lib/generators/install_generator.rb, line 20 def create_migration_files add_migration('create_external_services') add_migration('create_external_services_api_actions') end
migration_version()
click to toggle source
# File lib/generators/install_generator.rb, line 14 def migration_version return unless Rails::VERSION::MAJOR >= 5 "[#{Rails::VERSION::MAJOR}.#{Rails::VERSION::MINOR}]" end
Protected Instance Methods
add_migration(template)
click to toggle source
# File lib/generators/install_generator.rb, line 43 def add_migration(template) migration_dir = File.expand_path('db/migrate') if self.class.migration_exists?(migration_dir, template) ::Kernel.warn "Migration already exists: #{template}" else migration_template "migrations/#{template}.rb", "db/migrate/#{template}.rb", migration_version: migration_version end end
create_directory(dir)
click to toggle source
# File lib/generators/install_generator.rb, line 37 def create_directory(dir) dir = File.expand_path(dir) empty_directory dir add_file File.join(dir, '.keep') end