sambot 0.1.93 → 0.1.94

Sign up to get free protection for your applications and to get access to all the features.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sambot/application_error.rb +4 -0
  3. data/lib/sambot/{domain → chef}/cookbook.rb +7 -7
  4. data/lib/sambot/{domain/chef → chef}/kitchen.rb +1 -3
  5. data/lib/sambot/{domain/chef → chef}/metadata.rb +3 -3
  6. data/lib/sambot/cli.rb +18 -23
  7. data/lib/sambot/commands/cookbook.rb +4 -7
  8. data/lib/sambot/commands/packer.rb +1 -5
  9. data/lib/sambot/commands/report.rb +17 -0
  10. data/lib/sambot/commands/session.rb +2 -5
  11. data/lib/sambot/commands/workstation.rb +1 -3
  12. data/lib/sambot/{domain/common/config.rb → config.rb} +0 -4
  13. data/lib/sambot/{domain → developer_workflow}/bastion_host.rb +2 -3
  14. data/lib/sambot/developer_workflow/dns.rb +23 -0
  15. data/lib/sambot/{domain → developer_workflow}/session.rb +1 -1
  16. data/lib/sambot/{domain → developer_workflow}/vault.rb +1 -1
  17. data/lib/sambot/{domain → developer_workflow}/workstation.rb +2 -2
  18. data/lib/sambot/{domain/common → file_management}/file_checker.rb +1 -3
  19. data/lib/sambot/{domain/common → file_management}/template_provider.rb +2 -4
  20. data/lib/sambot/{domain → image_pipeline}/packer.rb +2 -3
  21. data/lib/sambot/reports/consistency_report.rb +0 -0
  22. data/lib/sambot/{domain/common/runtime.rb → runtime.rb} +0 -4
  23. data/lib/sambot/{domain/ssh → ssh}/config_file.rb +0 -2
  24. data/lib/sambot/{domain/ssh → ssh}/config_section.rb +0 -2
  25. data/lib/sambot/{domain/ssh → ssh}/parser.rb +0 -2
  26. data/lib/sambot/templates/.gitignore +1 -0
  27. data/lib/sambot/{domain/ui.rb → ui.rb} +0 -2
  28. data/lib/sambot/version.rb +1 -1
  29. metadata +22 -22
  30. data/lib/sambot/commands/images.rb +0 -21
  31. data/lib/sambot/domain/common/application_error.rb +0 -9
  32. data/lib/sambot/domain/dns.rb +0 -24
  33. data/lib/sambot/domain/gcp/images.rb +0 -10
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4f7c4cb707cbcc33af0a549c901ac2f1c05eae6b
4
- data.tar.gz: 19d332a38598221d55b6e5cfc7e69b153f039a77
3
+ metadata.gz: a6e11c44dab3910bbc5bb69d5cc9b2e54f9d5eb8
4
+ data.tar.gz: 33bb51b191685ad6bcac94fe16c84ffaa4ba03b8
5
5
  SHA512:
6
- metadata.gz: 380918626e2c38709652e92e32eadf833f6f142abfbfaf5acaf9c0ba0e15ed74a07fadd2ccf5e59297b677b891699fea7bba470a1e507b11feafbaf9621b9b6f
7
- data.tar.gz: '0338c1810cb49f74bafb1cca30ac8f4cbb15fdc63126f267fe83de6b2003b6a785e1c61ead8c2dd45f4875fd98703bbc48f3ecbe3633b67b68df3edc91dcc2a0'
6
+ metadata.gz: 73ce805f93debb791cb76ed4e9c7dae7f7fa4071695bc4b75f3a00ee6d97752c2a240c3482a954551fdb7300b19aa36774a20b8ecacd812e3c94a979f8a2f8be
7
+ data.tar.gz: 69a7beda710d2e1fc7009a3c983fc82c26b59b16c5b31506e017672c8f70b7e2937a26c22d49a011480023009886fbf1b39989d4e14b2e9786dba741f1db1b99
@@ -0,0 +1,4 @@
1
+ module Sambot
2
+ class ApplicationError < RuntimeError
3
+ end
4
+ end
@@ -2,11 +2,11 @@ require 'yaml'
2
2
  require 'git'
3
3
 
4
4
  module Sambot
5
- module Domain
5
+ module Chef
6
6
  class Cookbook
7
7
 
8
8
  def self.build(essential_files, generated_files)
9
- config = Common::Config.new.read
9
+ config = Config.new.read
10
10
  validate_cookbook_structure(config['platforms'], essential_files, generated_files)
11
11
  setup_test_kitchen(config)
12
12
  build_metadata(config)
@@ -58,12 +58,12 @@ module Sambot
58
58
  'description' => description,
59
59
  }.to_yaml
60
60
  File.write('.config.yml', contents)
61
- Domain::UI.debug("./.config.yml has been added to the cookbook.")
61
+ UI.debug("./.config.yml has been added to the cookbook.")
62
62
  end
63
63
 
64
64
  def self.copy_git_hooks
65
65
  working_path = '.git/hooks/pre-push'
66
- template_path = Common::TemplateProvider.get_path('pre-push')
66
+ template_path = FileManagement::TemplateProvider.get_path('pre-push')
67
67
  File.delete(working_path) if File.exist?(working_path)
68
68
  FileUtils.cp(template_path, working_path)
69
69
  UI.debug("The pre-push Git hook has been added to the cookbook.")
@@ -77,11 +77,11 @@ module Sambot
77
77
  end
78
78
 
79
79
  def self.validate_cookbook_structure(platform, essential_files, generated_files)
80
- essential_files.each { |path| Common::FileChecker.new.verify(path) }
80
+ essential_files.each { |path| FileManagement::FileChecker.new.verify(path) }
81
81
  if platform.include?('windows')
82
- Common::FileChecker.new.update(['winrm_config'])
82
+ FileManagement::FileChecker.new.update(['winrm_config'])
83
83
  end
84
- Common::FileChecker.new.update(generated_files)
84
+ FileManagement::FileChecker.new.update(generated_files)
85
85
  end
86
86
 
87
87
  def self.setup_test_kitchen(config)
@@ -1,5 +1,4 @@
1
1
  module Sambot
2
- module Domain
3
2
  module Chef
4
3
  class Kitchen
5
4
 
@@ -26,7 +25,7 @@ module Sambot
26
25
  private
27
26
 
28
27
  def self.read_template(template, cookbook_name, platforms)
29
- filename = File.join(Common::TemplateProvider.get_path("#{template}.erb"))
28
+ filename = File.join(FileManagement::TemplateProvider.get_path("#{template}.erb"))
30
29
  contents = File.read(filename).gsub(/@@cookbook_name@@/, cookbook_name)
31
30
  eruby = Erubis::Eruby.new(contents)
32
31
  yaml = eruby.evaluate({platforms: platforms}).gsub(/\_@/, "<%=").gsub(/@\_/, "%>")
@@ -34,6 +33,5 @@ module Sambot
34
33
  end
35
34
 
36
35
  end
37
- end
38
36
  end
39
37
  end
@@ -1,10 +1,11 @@
1
1
  require 'erubis'
2
2
 
3
3
  module Sambot
4
- module Domain
5
4
  module Chef
6
5
  class Metadata
7
6
 
7
+ TemplateProvider = FileManagement::TemplateProvider
8
+
8
9
  def self.generate(name, platforms, version, description, dependencies = nil, gems = nil)
9
10
  context = {
10
11
  'cookbook_name' => name,
@@ -20,13 +21,12 @@ module Sambot
20
21
  private
21
22
 
22
23
  def self.generate_metadata(context)
23
- filename = File.join(File.dirname(__FILE__), '../../templates', 'metadata.rb.erb')
24
+ filename = TemplateProvider.get_path('metadata.rb.erb')
24
25
  input = File.read(filename)
25
26
  eruby = Erubis::Eruby.new(input)
26
27
  eruby.evaluate(context)
27
28
  end
28
29
 
29
30
  end
30
- end
31
31
  end
32
32
  end
data/lib/sambot/cli.rb CHANGED
@@ -1,25 +1,23 @@
1
1
  require 'thor'
2
- require_relative 'domain/common/application_error'
3
- require_relative 'domain/common/file_checker'
4
- require_relative 'domain/common/config'
5
- require_relative 'domain/common/runtime'
6
- require_relative 'domain/common/template_provider'
7
- require_relative 'domain/gcp/images'
8
- require_relative 'domain/chef/kitchen'
9
- require_relative 'domain/chef/metadata'
10
- require_relative 'domain/ssh/config_file'
11
- require_relative 'domain/ssh/config_section'
12
- require_relative 'domain/ssh/parser'
13
- require_relative 'domain/bastion_host'
14
- require_relative 'domain/dns'
15
- require_relative 'domain/session'
16
- require_relative 'domain/vault'
17
- require_relative 'domain/ui'
18
- require_relative 'domain/cookbook'
19
- require_relative 'domain/packer'
20
- require_relative 'domain/workstation'
2
+ require_relative 'application_error'
3
+ require_relative 'config'
4
+ require_relative 'ui'
5
+ require_relative 'runtime'
6
+ require_relative 'file_management/template_provider'
7
+ require_relative 'file_management/file_checker'
8
+ require_relative 'chef/kitchen'
9
+ require_relative 'chef/metadata'
10
+ require_relative 'chef/cookbook'
11
+ require_relative 'ssh/config_file'
12
+ require_relative 'ssh/config_section'
13
+ require_relative 'ssh/parser'
14
+ require_relative 'developer_workflow/bastion_host'
15
+ require_relative 'developer_workflow/dns'
16
+ require_relative 'developer_workflow/session'
17
+ require_relative 'developer_workflow/vault'
18
+ require_relative 'developer_workflow/workstation'
19
+ require_relative 'image_pipeline/packer'
21
20
  require_relative 'commands/cookbook'
22
- require_relative 'commands/images'
23
21
  require_relative 'commands/session'
24
22
  require_relative 'commands/packer'
25
23
  require_relative 'commands/workstation'
@@ -33,9 +31,6 @@ module Sambot
33
31
  desc 'session', 'Manage sessions'
34
32
  subcommand 'session', Sambot::Commands::Session
35
33
 
36
- desc 'images', 'Manage machine images in GCP'
37
- subcommand 'images', Sambot::Commands::Images
38
-
39
34
  desc 'packer', 'Manage Hashicorp Packer'
40
35
  subcommand 'packer', Sambot::Commands::Packer
41
36
 
@@ -6,9 +6,6 @@ module Sambot
6
6
 
7
7
  class Cookbook < Thor
8
8
 
9
- Runtime = Sambot::Domain::Common::Runtime
10
- ApplicationError = Sambot::Domain::Common::ApplicationError
11
-
12
9
  GUIDE =
13
10
  {
14
11
  clean: {
@@ -46,7 +43,7 @@ module Sambot
46
43
  long_desc GUIDE[:clean][:LONG_DESC]
47
44
  def clean
48
45
  Runtime.ensure_latest
49
- Domain::Cookbook.clean(GENERATED_FILES - ['.gitignore'])
46
+ Chef::Cookbook.clean(GENERATED_FILES - ['.gitignore'])
50
47
  rescue ApplicationError => e
51
48
  error(e.message)
52
49
  end
@@ -55,7 +52,7 @@ module Sambot
55
52
  long_desc GUIDE[:clean][:LONG_DESC]
56
53
  def build
57
54
  Runtime.ensure_latest
58
- Domain::Cookbook.build(ESSENTIAL_FILES, GENERATED_FILES)
55
+ Chef::Cookbook.build(ESSENTIAL_FILES, GENERATED_FILES)
59
56
  rescue ApplicationError => e
60
57
  error(e.message)
61
58
  end
@@ -69,7 +66,7 @@ module Sambot
69
66
  platforms = ask(' What operating system will this cookbook run on?', :limited_to => ['windows', 'centos', 'both'])
70
67
  type = ask(' What type of cookbook will this be?', :limited_to => ['wrapper', 'role'])
71
68
  platforms = platforms == 'both' ? ['centos', 'windows'] : [platforms]
72
- Domain::Cookbook.generate(name, platforms, type, description, ESSENTIAL_FILES, GENERATED_FILES)
69
+ Chef::Cookbook.generate(name, platforms, type, description, ESSENTIAL_FILES, GENERATED_FILES)
73
70
  rescue ApplicationError => e
74
71
  error(e.message)
75
72
  end
@@ -78,7 +75,7 @@ module Sambot
78
75
  long_desc GUIDE[:version][:LONG_DESC]
79
76
  def version()
80
77
  Runtime.ensure_latest
81
- result = Domain::Common::Config.read
78
+ result = Config.read
82
79
  puts "##teamcity[buildNumber '#{result['version'].to_s}']"
83
80
  rescue ApplicationError => e
84
81
  error(e.message)
@@ -3,17 +3,13 @@ module Sambot
3
3
 
4
4
  class Packer < Thor
5
5
 
6
- ApplicationError = Sambot::Domain::Common::ApplicationError
7
- Runtime = Sambot::Domain::Common::Runtime
8
- Config = Sambot::Domain::Common::Config
9
-
10
6
  namespace 'packer'
11
7
 
12
8
  desc "prepare", "Sets up a Packer configuration"
13
9
  def prepare
14
10
  Runtime.ensure_latest
15
11
  config = Config.new.read
16
- Domain::Packer.prepare(config)
12
+ ImagePipeline::Packer.prepare(config)
17
13
  rescue ApplicationError => e
18
14
  error(e.message)
19
15
  end
@@ -0,0 +1,17 @@
1
+ module Sambot
2
+ module Commands
3
+
4
+ class Report < Thor
5
+
6
+ namespace 'report'
7
+
8
+ desc "consistency", "Checks the Advertising Studio build pipeline is consistent"
9
+ def consistency
10
+ Runtime.ensure_latest
11
+ rescue ApplicationError => e
12
+ error(e.message)
13
+ end
14
+
15
+ end
16
+ end
17
+ end
@@ -3,9 +3,6 @@ module Sambot
3
3
 
4
4
  class Session < Thor
5
5
 
6
- ApplicationError = Sambot::Domain::Common::ApplicationError
7
- Runtime = Sambot::Domain::Common::Runtime
8
-
9
6
  namespace 'session'
10
7
 
11
8
  desc "start", "Start a new DEV/QE session"
@@ -14,7 +11,7 @@ module Sambot
14
11
  username = ask(' What is your DEV/QE username i.e. jsmith? ')
15
12
  password = ask(' What is your DEV/QE password? ', :echo => false)
16
13
  say('')
17
- Domain::Session.start(username, password)
14
+ DeveloperWorkflow::Session.start(username, password)
18
15
  rescue ApplicationError => e
19
16
  error(e.message)
20
17
  end
@@ -22,7 +19,7 @@ module Sambot
22
19
  desc "stop", "Stop the DEV/QE session"
23
20
  def stop
24
21
  Runtime.ensure_latest
25
- Domain::Session.stop()
22
+ DeveloperWorkflow::Session.stop()
26
23
  rescue ApplicationError => e
27
24
  error(e.message)
28
25
  end
@@ -3,15 +3,13 @@ module Sambot
3
3
 
4
4
  class Workstation < Thor
5
5
 
6
- Runtime = Sambot::Domain::Common::Runtime
7
-
8
6
  namespace 'workstation'
9
7
 
10
8
  desc "configure", "Sets up an engineering workstation"
11
9
  def configure
12
10
  Runtime.ensure_latest
13
11
  username = ask(" What is your DEV/QE Active Directory username i.e. john.smith? ")
14
- Domain::Workstation.configure(username)
12
+ DeveloperWorkflow::Workstation.configure(username)
15
13
  rescue ApplicationError => e
16
14
  error(e.message)
17
15
  end
@@ -1,8 +1,6 @@
1
1
  require 'yaml'
2
2
 
3
3
  module Sambot
4
- module Domain
5
- module Common
6
4
  class Config
7
5
 
8
6
  CONFIGURATION_FILENAME = '.config.yml'.freeze
@@ -27,6 +25,4 @@ module Sambot
27
25
  end
28
26
 
29
27
  end
30
- end
31
- end
32
28
  end
@@ -2,11 +2,10 @@ require 'awesome_print'
2
2
  require 'process_exists'
3
3
 
4
4
  module Sambot
5
- module Domain
5
+ module DeveloperWorkflow
6
6
  class BastionHost
7
7
 
8
- ApplicationError = Sambot::Domain::Common::ApplicationError
9
- Parser = Sambot::Domain::Ssh::Parser
8
+ Parser = Sambot::Ssh::Parser
10
9
 
11
10
  def self.connect(username, password)
12
11
  disconnect
@@ -0,0 +1,23 @@
1
+ require 'hosts'
2
+
3
+ module Sambot
4
+ module DeveloperWorkflow
5
+ class DNS
6
+
7
+ HOST_ENTRIES = {
8
+ 'teamcity.brighter.io' => '127.0.0.1',
9
+ 'chef.brighter.io' => '127.0.0.1',
10
+ 'monitoring.brighter.io' => '127.0.0.1',
11
+ 'jenkins.brighter.io' => '127.0.0.1',
12
+ 'splunk.brighter.io' => '127.0.0.1',
13
+ 'rundeck.brighter.io' => '127.0.0.1',
14
+ 'grafana.brighter.io' => '127.0.0.1',
15
+ 'prometheus.brighter.io' => '127.0.0.1'
16
+ }
17
+
18
+ def self.update_hosts()
19
+ end
20
+
21
+ end
22
+ end
23
+ end
@@ -1,5 +1,5 @@
1
1
  module Sambot
2
- module Domain
2
+ module DeveloperWorkflow
3
3
  class Session
4
4
 
5
5
  def self.start(username, password)
@@ -1,7 +1,7 @@
1
1
  require 'vault'
2
2
 
3
3
  module Sambot
4
- module Domain
4
+ module DeveloperWorkflow
5
5
  class Vault
6
6
 
7
7
  ENVIRONMENT_VARIABLES = {
@@ -1,5 +1,5 @@
1
1
  module Sambot
2
- module Domain
2
+ module DeveloperWorkflow
3
3
  class Workstation
4
4
 
5
5
  def self.configure(username)
@@ -13,7 +13,7 @@ module Sambot
13
13
  end
14
14
 
15
15
  def self.update_ssh_configuration(username)
16
- config = Domain::Ssh::Parser.new.update('DEV\\' + username)
16
+ config = Ssh::Parser.new.update('DEV\\' + username)
17
17
  config.save
18
18
  end
19
19
 
@@ -1,6 +1,5 @@
1
1
  module Sambot
2
- module Domain
3
- module Common
2
+ module FileManagement
4
3
  class FileChecker
5
4
 
6
5
  def verify(path)
@@ -37,7 +36,6 @@ module Sambot
37
36
  UI.debug("#{working_path} has been added to the cookbook.")
38
37
  end
39
38
 
40
- end
41
39
  end
42
40
  end
43
41
  end
@@ -1,13 +1,11 @@
1
1
  module Sambot
2
- module Domain
3
- module Common
2
+ module FileManagement
4
3
  class TemplateProvider
5
4
 
6
5
  def self.get_path(filename)
7
- File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'templates', filename))
6
+ File.expand_path(File.join(File.dirname(__FILE__), '..', 'templates', filename))
8
7
  end
9
8
 
10
9
  end
11
- end
12
10
  end
13
11
  end
@@ -1,11 +1,10 @@
1
1
  require 'yaml'
2
2
 
3
3
  module Sambot
4
- module Domain
4
+ module ImagePipeline
5
5
  class Packer
6
6
 
7
- ApplicationError = Common::ApplicationError
8
- TemplateProvider = Common::TemplateProvider
7
+ TemplateProvider = FileManagement::TemplateProvider
9
8
 
10
9
  def self.prepare(config)
11
10
  cookbook_name = config['name']
File without changes
@@ -1,8 +1,6 @@
1
1
  require 'gems'
2
2
 
3
3
  module Sambot
4
- module Domain
5
- module Common
6
4
  module Runtime
7
5
 
8
6
  def self.is_obsolete
@@ -19,7 +17,5 @@ module Sambot
19
17
  end
20
18
  end
21
19
 
22
- end
23
- end
24
20
  end
25
21
  end
@@ -1,5 +1,4 @@
1
1
  module Sambot
2
- module Domain
3
2
  module Ssh
4
3
  class ConfigFile
5
4
 
@@ -77,5 +76,4 @@ module Sambot
77
76
  end
78
77
 
79
78
  end
80
- end
81
79
  end
@@ -1,5 +1,4 @@
1
1
  module Sambot
2
- module Domain
3
2
  module Ssh
4
3
  class ConfigSection
5
4
 
@@ -79,6 +78,5 @@ module Sambot
79
78
  end
80
79
  end
81
80
 
82
- end
83
81
  end
84
82
  end
@@ -2,7 +2,6 @@ require_relative 'config_file'
2
2
  require_relative 'config_section'
3
3
 
4
4
  module Sambot
5
- module Domain
6
5
  module Ssh
7
6
  class Parser
8
7
 
@@ -43,7 +42,6 @@ module Sambot
43
42
  config
44
43
  end
45
44
 
46
- end
47
45
  end
48
46
  end
49
47
  end
@@ -15,6 +15,7 @@ Berksfile.lock
15
15
  .*.sw[a-z]
16
16
  *.un~
17
17
  # Bundler
18
+ packer.json
18
19
  Gemfile.lock
19
20
  bin/*
20
21
  .bundle/*
@@ -1,5 +1,4 @@
1
1
  module Sambot
2
- module Domain
3
2
  module UI
4
3
 
5
4
  def self.debug(msg)
@@ -16,4 +15,3 @@ module Sambot
16
15
 
17
16
  end
18
17
  end
19
- end
@@ -1,3 +1,3 @@
1
1
  module Sambot
2
- VERSION = '0.1.93'.freeze
2
+ VERSION = '0.1.94'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sambot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.93
4
+ version: 0.1.94
5
5
  platform: ruby
6
6
  authors:
7
7
  - Olivier Kouame
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-06-05 00:00:00.000000000 Z
11
+ date: 2017-06-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: git
@@ -286,31 +286,30 @@ files:
286
286
  - bin/sambot
287
287
  - bin/setup
288
288
  - lib/sambot.rb
289
+ - lib/sambot/application_error.rb
290
+ - lib/sambot/chef/cookbook.rb
291
+ - lib/sambot/chef/kitchen.rb
292
+ - lib/sambot/chef/metadata.rb
289
293
  - lib/sambot/cli.rb
290
294
  - lib/sambot/commands/cookbook.rb
291
- - lib/sambot/commands/images.rb
292
295
  - lib/sambot/commands/packer.rb
296
+ - lib/sambot/commands/report.rb
293
297
  - lib/sambot/commands/session.rb
294
298
  - lib/sambot/commands/workstation.rb
295
- - lib/sambot/domain/bastion_host.rb
296
- - lib/sambot/domain/chef/kitchen.rb
297
- - lib/sambot/domain/chef/metadata.rb
298
- - lib/sambot/domain/common/application_error.rb
299
- - lib/sambot/domain/common/config.rb
300
- - lib/sambot/domain/common/file_checker.rb
301
- - lib/sambot/domain/common/runtime.rb
302
- - lib/sambot/domain/common/template_provider.rb
303
- - lib/sambot/domain/cookbook.rb
304
- - lib/sambot/domain/dns.rb
305
- - lib/sambot/domain/gcp/images.rb
306
- - lib/sambot/domain/packer.rb
307
- - lib/sambot/domain/session.rb
308
- - lib/sambot/domain/ssh/config_file.rb
309
- - lib/sambot/domain/ssh/config_section.rb
310
- - lib/sambot/domain/ssh/parser.rb
311
- - lib/sambot/domain/ui.rb
312
- - lib/sambot/domain/vault.rb
313
- - lib/sambot/domain/workstation.rb
299
+ - lib/sambot/config.rb
300
+ - lib/sambot/developer_workflow/bastion_host.rb
301
+ - lib/sambot/developer_workflow/dns.rb
302
+ - lib/sambot/developer_workflow/session.rb
303
+ - lib/sambot/developer_workflow/vault.rb
304
+ - lib/sambot/developer_workflow/workstation.rb
305
+ - lib/sambot/file_management/file_checker.rb
306
+ - lib/sambot/file_management/template_provider.rb
307
+ - lib/sambot/image_pipeline/packer.rb
308
+ - lib/sambot/reports/consistency_report.rb
309
+ - lib/sambot/runtime.rb
310
+ - lib/sambot/ssh/config_file.rb
311
+ - lib/sambot/ssh/config_section.rb
312
+ - lib/sambot/ssh/parser.rb
314
313
  - lib/sambot/templates/.gitignore
315
314
  - lib/sambot/templates/.kitchen.gcp.yml.erb
316
315
  - lib/sambot/templates/.kitchen.rackspace.yml.erb
@@ -325,6 +324,7 @@ files:
325
324
  - lib/sambot/templates/startup-script.ps1
326
325
  - lib/sambot/templates/teamcity.sh.erb
327
326
  - lib/sambot/templates/winrm_config
327
+ - lib/sambot/ui.rb
328
328
  - lib/sambot/version.rb
329
329
  - sambot.gemspec
330
330
  homepage: http://github.com/okouam/sambot
@@ -1,21 +0,0 @@
1
- module Sambot
2
- module Commands
3
-
4
- class Images < Thor
5
-
6
- ApplicationError = Sambot::Domain::Common::ApplicationError
7
- Runtime = Sambot::Domain::Common::Runtime
8
- Config = Sambot::Domain::Common::Config
9
-
10
- namespace 'images'
11
-
12
- desc "cleanup", "Removes obsolete images"
13
- def cleanup
14
- Runtime.ensure_latest
15
- rescue ApplicationError => e
16
- error(e.message)
17
- end
18
-
19
- end
20
- end
21
- end
@@ -1,9 +0,0 @@
1
- module Sambot
2
- module Domain
3
- module Common
4
- class ApplicationError < RuntimeError
5
-
6
- end
7
- end
8
- end
9
- end
@@ -1,24 +0,0 @@
1
- require 'hosts'
2
-
3
- module Sambot
4
- module Domain
5
-
6
- HOST_ENTRIES = {
7
- 'teamcity.brighter.io' => '127.0.0.1',
8
- 'chef.brighter.io' => '127.0.0.1',
9
- 'monitoring.brighter.io' => '127.0.0.1',
10
- 'jenkins.brighter.io' => '127.0.0.1',
11
- 'splunk.brighter.io' => '127.0.0.1',
12
- 'rundeck.brighter.io' => '127.0.0.1',
13
- 'grafana.brighter.io' => '127.0.0.1',
14
- 'prometheus.brighter.io' => '127.0.0.1'
15
- }
16
-
17
- class DNS
18
-
19
- def self.update_hosts()
20
- end
21
-
22
- end
23
- end
24
- end
@@ -1,10 +0,0 @@
1
-
2
- module Sambot
3
- module Domain
4
- module GCP
5
- class Images
6
-
7
- end
8
- end
9
- end
10
- end