sambot 0.1.93 → 0.1.94
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/sambot/application_error.rb +4 -0
- data/lib/sambot/{domain → chef}/cookbook.rb +7 -7
- data/lib/sambot/{domain/chef → chef}/kitchen.rb +1 -3
- data/lib/sambot/{domain/chef → chef}/metadata.rb +3 -3
- data/lib/sambot/cli.rb +18 -23
- data/lib/sambot/commands/cookbook.rb +4 -7
- data/lib/sambot/commands/packer.rb +1 -5
- data/lib/sambot/commands/report.rb +17 -0
- data/lib/sambot/commands/session.rb +2 -5
- data/lib/sambot/commands/workstation.rb +1 -3
- data/lib/sambot/{domain/common/config.rb → config.rb} +0 -4
- data/lib/sambot/{domain → developer_workflow}/bastion_host.rb +2 -3
- data/lib/sambot/developer_workflow/dns.rb +23 -0
- data/lib/sambot/{domain → developer_workflow}/session.rb +1 -1
- data/lib/sambot/{domain → developer_workflow}/vault.rb +1 -1
- data/lib/sambot/{domain → developer_workflow}/workstation.rb +2 -2
- data/lib/sambot/{domain/common → file_management}/file_checker.rb +1 -3
- data/lib/sambot/{domain/common → file_management}/template_provider.rb +2 -4
- data/lib/sambot/{domain → image_pipeline}/packer.rb +2 -3
- data/lib/sambot/reports/consistency_report.rb +0 -0
- data/lib/sambot/{domain/common/runtime.rb → runtime.rb} +0 -4
- data/lib/sambot/{domain/ssh → ssh}/config_file.rb +0 -2
- data/lib/sambot/{domain/ssh → ssh}/config_section.rb +0 -2
- data/lib/sambot/{domain/ssh → ssh}/parser.rb +0 -2
- data/lib/sambot/templates/.gitignore +1 -0
- data/lib/sambot/{domain/ui.rb → ui.rb} +0 -2
- data/lib/sambot/version.rb +1 -1
- metadata +22 -22
- data/lib/sambot/commands/images.rb +0 -21
- data/lib/sambot/domain/common/application_error.rb +0 -9
- data/lib/sambot/domain/dns.rb +0 -24
- data/lib/sambot/domain/gcp/images.rb +0 -10
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a6e11c44dab3910bbc5bb69d5cc9b2e54f9d5eb8
|
4
|
+
data.tar.gz: 33bb51b191685ad6bcac94fe16c84ffaa4ba03b8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 73ce805f93debb791cb76ed4e9c7dae7f7fa4071695bc4b75f3a00ee6d97752c2a240c3482a954551fdb7300b19aa36774a20b8ecacd812e3c94a979f8a2f8be
|
7
|
+
data.tar.gz: 69a7beda710d2e1fc7009a3c983fc82c26b59b16c5b31506e017672c8f70b7e2937a26c22d49a011480023009886fbf1b39989d4e14b2e9786dba741f1db1b99
|
@@ -2,11 +2,11 @@ require 'yaml'
|
|
2
2
|
require 'git'
|
3
3
|
|
4
4
|
module Sambot
|
5
|
-
module
|
5
|
+
module Chef
|
6
6
|
class Cookbook
|
7
7
|
|
8
8
|
def self.build(essential_files, generated_files)
|
9
|
-
config =
|
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
|
-
|
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 =
|
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|
|
80
|
+
essential_files.each { |path| FileManagement::FileChecker.new.verify(path) }
|
81
81
|
if platform.include?('windows')
|
82
|
-
|
82
|
+
FileManagement::FileChecker.new.update(['winrm_config'])
|
83
83
|
end
|
84
|
-
|
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(
|
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 =
|
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 '
|
3
|
-
require_relative '
|
4
|
-
require_relative '
|
5
|
-
require_relative '
|
6
|
-
require_relative '
|
7
|
-
require_relative '
|
8
|
-
require_relative '
|
9
|
-
require_relative '
|
10
|
-
require_relative '
|
11
|
-
require_relative '
|
12
|
-
require_relative '
|
13
|
-
require_relative '
|
14
|
-
require_relative '
|
15
|
-
require_relative '
|
16
|
-
require_relative '
|
17
|
-
require_relative '
|
18
|
-
require_relative '
|
19
|
-
require_relative '
|
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
|
-
|
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
|
-
|
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
|
-
|
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 =
|
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
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
12
|
+
DeveloperWorkflow::Workstation.configure(username)
|
15
13
|
rescue ApplicationError => e
|
16
14
|
error(e.message)
|
17
15
|
end
|
@@ -2,11 +2,10 @@ require 'awesome_print'
|
|
2
2
|
require 'process_exists'
|
3
3
|
|
4
4
|
module Sambot
|
5
|
-
module
|
5
|
+
module DeveloperWorkflow
|
6
6
|
class BastionHost
|
7
7
|
|
8
|
-
|
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
|
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 =
|
16
|
+
config = Ssh::Parser.new.update('DEV\\' + username)
|
17
17
|
config.save
|
18
18
|
end
|
19
19
|
|
@@ -1,13 +1,11 @@
|
|
1
1
|
module Sambot
|
2
|
-
|
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__), '..', '
|
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
|
4
|
+
module ImagePipeline
|
5
5
|
class Packer
|
6
6
|
|
7
|
-
|
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
|
data/lib/sambot/version.rb
CHANGED
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.
|
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-
|
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/
|
296
|
-
- lib/sambot/
|
297
|
-
- lib/sambot/
|
298
|
-
- lib/sambot/
|
299
|
-
- lib/sambot/
|
300
|
-
- lib/sambot/
|
301
|
-
- lib/sambot/
|
302
|
-
- lib/sambot/
|
303
|
-
- lib/sambot/
|
304
|
-
- lib/sambot/
|
305
|
-
- lib/sambot/
|
306
|
-
- lib/sambot/
|
307
|
-
- lib/sambot/
|
308
|
-
- lib/sambot/
|
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
|
data/lib/sambot/domain/dns.rb
DELETED
@@ -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
|