class Platter::AppGenerator

Public Class Methods

new(*args) click to toggle source
Calls superclass method
# File lib/platter/generators/app_generator.rb, line 7
def initialize(*args)
  super
  if @options["api"]
    backup_options = Marshal.load(Marshal.dump(@options))
    backup_options["skip_javascript"] = true
    backup_options["skip_sprockets"] = true
    backup_options["skip_assets"] = true
    @options = backup_options
  end
end

Public Instance Methods

add_api_support() click to toggle source
# File lib/platter/generators/app_generator.rb, line 64
def add_api_support
  if options[:api]
    say "Adding API support"
    build :add_api_support
    build :add_api_version_directories
    build :add_api_version_base_controller
    build :provide_api_routes
  end
end
custom_gemfile() click to toggle source
# File lib/platter/generators/app_generator.rb, line 52
def custom_gemfile
  build :replace_gemfile
end
finish_template() click to toggle source
Calls superclass method
# File lib/platter/generators/app_generator.rb, line 33
def finish_template
  invoke :platter
  super
end
platter() click to toggle source
# File lib/platter/generators/app_generator.rb, line 38
def platter
  invoke :custom_gemfile
  invoke :setup_development_environment
  invoke :setup_staging_environment
  invoke :add_api_support
  invoke :setup_mailer
  invoke :setup_server
  invoke :setup_docker
  invoke :setup_gems
  invoke :setup_db
  invoke :setup_test_environment
  invoke :setup_git
end
setup_db() click to toggle source
# File lib/platter/generators/app_generator.rb, line 60
def setup_db
  build :setup_db
end
setup_development_environment() click to toggle source
# File lib/platter/generators/app_generator.rb, line 94
def setup_development_environment
  say "Setting up the development environment"
  build :setup_development_mail_delivery_strategy
  build :fix_i18n_deprecation_warning
  build :provide_generators_configuration
end
setup_docker() click to toggle source
# File lib/platter/generators/app_generator.rb, line 85
def setup_docker
  say "Adding docker-compose.yml file"
  build :setup_docker_compose
  build :provide_db_script
  build :provide_dev_entrypoint
  build :provide_attach_script
  build :provide_restoredb_script
end
setup_gems() click to toggle source
# File lib/platter/generators/app_generator.rb, line 56
def setup_gems
  build :setup_gems
end
setup_git() click to toggle source
# File lib/platter/generators/app_generator.rb, line 74
def setup_git
  say "Initializing git"
  build :setup_git
  build :provide_first_commit
end
setup_mailer() click to toggle source
# File lib/platter/generators/app_generator.rb, line 112
def setup_mailer
  say "Setting up Sendgrid configuration"
  build :init_sendgrid_initialize_file
  build :add_exception_notification_mailer_configuration
  build :add_smtp_configuration_for_deployment
end
setup_server() click to toggle source
# File lib/platter/generators/app_generator.rb, line 80
def setup_server
  say "Setting up the server"
  build :setup_server
end
setup_staging_environment() click to toggle source
# File lib/platter/generators/app_generator.rb, line 107
def setup_staging_environment
  say "Setting up the staging environment"
  build :copy_production_env_to_staging
end
setup_test_environment() click to toggle source
# File lib/platter/generators/app_generator.rb, line 101
def setup_test_environment
  say "Setting up the test environment"
  build :init_rspec
  build :add_support_rspec_files
end

Protected Instance Methods

get_builder_class() click to toggle source
# File lib/platter/generators/app_generator.rb, line 121
def get_builder_class
  Platter::AppBuilder
end