Class: Utter::Generators::Microservice

Inherits:
Thor::Group
  • Object
show all
Includes:
Thor::Actions
Defined in:
lib/generators/generators.rb

Overview

Usage generator = Utter::Generators::Microservice.new generator.destination_root = path #optional, will use current directory by default generator.invoke_all

Instance Method Summary collapse

Instance Method Details

#create_configru(params = {}) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# File 'lib/generators/generators.rb', line 26

def create_configru params={}
  create_file "config.ru"
  @file = "Dir[File.dirname(__FILE__) + '/microservice/**/*.rb'].each {|file| require file }                                                                                              \nDir[File.dirname(__FILE__) + '/domain/**/*.rb'].each {|file| require file }                                                                                              \n\nmap \"/\" do\n  run Sonopace::API::Status\nend\n\n  FOO\n\n  open(\"\#{params[:path]}/config.ru\", 'a') do |f|\n    f.puts @file\n  end\nend\n"

#create_domain_directory_structureObject



20
21
22
23
24
# File 'lib/generators/generators.rb', line 20

def create_domain_directory_structure 
  #empty_directory 'domain'
  empty_directory 'domain/lib'
  empty_directory 'domain/spec'
end

#create_gemfile(params = {}) ⇒ Object



43
44
45
46
47
48
49
50
51
52
53
# File 'lib/generators/generators.rb', line 43

def create_gemfile params={}
  create_file "Gemfile"
  @file = "source 'https://rubygems.org'\ngem 'utter'\n  FOO\n\n  open(\"\#{params[:path]}/Gemfile\", 'a') do |f|\n    f.puts @file\n  end\nend\n"

#create_microservice_directory_structureObject



14
15
16
17
18
# File 'lib/generators/generators.rb', line 14

def create_microservice_directory_structure 
  #empty_directory 'microservice'
  empty_directory 'microservice/lib'
  empty_directory 'microservice/spec'
end