Class: Rolemodel::SemaphoreGenerator

Inherits:
GeneratorBase
  • Object
show all
Defined in:
lib/generators/rolemodel/semaphore/semaphore_generator.rb

Instance Method Summary collapse

Instance Method Details

#create_base_semaphore_configObject



5
6
7
8
9
10
11
12
13
# File 'lib/generators/rolemodel/semaphore/semaphore_generator.rb', line 5

def create_base_semaphore_config
  @project_name = Rails.application.class.try(:parent_name) || Rails.application.class.module_parent_name
  template 'semaphore.yml.erb', '.semaphore/semaphore.yml'

  if yes?('Does your project have JavaScript tests and/or eslint?')
    uncomment_lines('.semaphore/semaphore.yml', '- yarn test')
    uncomment_lines('.semaphore/semaphore.yml', '- yarn run eslint')
  end
end

#create_deplyment_commandsObject



15
16
17
18
19
20
21
22
23
# File 'lib/generators/rolemodel/semaphore/semaphore_generator.rb', line 15

def create_deplyment_commands
  default_heroku_prefix = (Rails.application.class.try(:parent_name) || Rails.application.class.module_parent_name).underscore.dasherize

  @heroku_prefix = ask('Enter the heroku project prefix', default: default_heroku_prefix)

  template 'heroku-deployment-commands.sh', '.semaphore/heroku-deployment-commands.sh'
  template 'staging-deploy.yml.erb', '.semaphore/staging-deploy.yml'
  template 'production-deploy.yml.erb', '.semaphore/production-deploy.yml'
end