class Telegrator::Generators::Bot

Constants

DATABASES

Public Class Methods

new(args = [], options = {}, config = {}) click to toggle source
Calls superclass method
# File lib/telegrator/generators/bot/generator.rb, line 13
def initialize(args = [], options = {}, config = {})
  config[:destination_root] ||= args.first
  super
end
source_root() click to toggle source

TODO: move to Base class

# File lib/telegrator/generators/bot/generator.rb, line 9
def self.source_root
  File.expand_path('../templates', __FILE__)
end

Public Instance Methods

create_app_dir() click to toggle source

app/ directory ===

# File lib/telegrator/generators/bot/generator.rb, line 54
def create_app_dir
  empty_directory 'app'
end
create_bin_dir() click to toggle source

bin/ directory ===

# File lib/telegrator/generators/bot/generator.rb, line 87
def create_bin_dir
  directory 'bin', mode: :preserve
end
create_commands() click to toggle source
# File lib/telegrator/generators/bot/generator.rb, line 58
def create_commands
  template 'app/commands.rb'
  directory 'app/commands'
end
create_config_dir() click to toggle source

config/ directory ===

# File lib/telegrator/generators/bot/generator.rb, line 92
def create_config_dir
  directory 'config'

  if options[:skip_capistrano]
    remove_file 'config/deploy/'
    remove_file 'config/deploy.rb'
  end
  remove_file 'config/initializers/sequel.rb' if mongodb?
end
create_db_dir() click to toggle source

db/ directory ===

# File lib/telegrator/generators/bot/generator.rb, line 103
def create_db_dir
  return if mongodb?
  directory 'db'
end
create_keyboards() click to toggle source

TODO: inline keyboards

# File lib/telegrator/generators/bot/generator.rb, line 65
def create_keyboards
  return if options[:skip_keyboards]
  template 'app/keyboards.rb'
  directory 'app/keyboards'
end
create_lib_dir() click to toggle source

lib/ directory ===

# File lib/telegrator/generators/bot/generator.rb, line 109
def create_lib_dir
  directory 'lib'
  remove_file 'lib/tasks/db.rake' if mongodb?
end
create_log_dir() click to toggle source

log/ directory ===

# File lib/telegrator/generators/bot/generator.rb, line 115
def create_log_dir
  empty_directory 'log'
  create_file 'log/.keep'
end
create_models() click to toggle source
# File lib/telegrator/generators/bot/generator.rb, line 71
def create_models
  template 'app/models.rb'
  directory 'app/models'
end
create_root_files() click to toggle source
# File lib/telegrator/generators/bot/generator.rb, line 41
def create_root_files
  template 'gitignore.tt', '.gitignore'

  template 'env.tt', '.env.sample'
  template 'env.tt', '.env'

  template 'Gemfile.tt'
  template 'Rakefile.tt'
  template 'Capfile.tt' unless options[:skip_capistrano]
  template 'config.ru.tt' unless options[:skip_webhook]
end
create_services() click to toggle source
# File lib/telegrator/generators/bot/generator.rb, line 76
def create_services
  template 'app/services.rb'
  directory 'app/services'
end
create_workers() click to toggle source
# File lib/telegrator/generators/bot/generator.rb, line 81
def create_workers
  template 'app/workers.rb'
  directory 'app/workers'
end
init() click to toggle source
# File lib/telegrator/generators/bot/generator.rb, line 120
def init
  inside { run 'git init' }
  inside { run 'bundle install' } unless options[:skip_bundler]
end