cloud-mu 1.9.0.pre.beta → 2.0.0.pre.alpha
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Berksfile +16 -54
- data/Berksfile.lock +14 -62
- data/bin/mu-aws-setup +131 -108
- data/bin/mu-configure +311 -74
- data/bin/mu-gcp-setup +84 -62
- data/bin/mu-load-config.rb +46 -2
- data/bin/mu-self-update +11 -9
- data/bin/mu-upload-chef-artifacts +4 -4
- data/{mu.gemspec → cloud-mu.gemspec} +2 -2
- data/cookbooks/awscli/Berksfile +8 -0
- data/cookbooks/mu-activedirectory/Berksfile +11 -0
- data/cookbooks/mu-firewall/Berksfile +9 -0
- data/cookbooks/mu-firewall/metadata.rb +1 -1
- data/cookbooks/mu-glusterfs/Berksfile +10 -0
- data/cookbooks/mu-jenkins/Berksfile +14 -0
- data/cookbooks/mu-master/Berksfile +23 -0
- data/cookbooks/mu-master/attributes/default.rb +1 -1
- data/cookbooks/mu-master/metadata.rb +2 -2
- data/cookbooks/mu-master/recipes/default.rb +1 -1
- data/cookbooks/mu-master/recipes/init.rb +7 -3
- data/cookbooks/mu-master/recipes/ssl-certs.rb +1 -0
- data/cookbooks/mu-mongo/Berksfile +10 -0
- data/cookbooks/mu-openvpn/Berksfile +11 -0
- data/cookbooks/mu-php54/Berksfile +13 -0
- data/cookbooks/mu-splunk/Berksfile +10 -0
- data/cookbooks/mu-tools/Berksfile +21 -0
- data/cookbooks/mu-tools/files/default/Mu_CA.pem +15 -15
- data/cookbooks/mu-utility/Berksfile +9 -0
- data/cookbooks/mu-utility/metadata.rb +2 -1
- data/cookbooks/nagios/Berksfile +7 -4
- data/cookbooks/s3fs/Berksfile +9 -0
- data/environments/dev.json +6 -6
- data/environments/prod.json +6 -6
- data/modules/mu.rb +20 -42
- data/modules/mu/cleanup.rb +102 -100
- data/modules/mu/cloud.rb +90 -28
- data/modules/mu/clouds/aws.rb +449 -218
- data/modules/mu/clouds/aws/alarm.rb +29 -17
- data/modules/mu/clouds/aws/cache_cluster.rb +78 -64
- data/modules/mu/clouds/aws/collection.rb +25 -18
- data/modules/mu/clouds/aws/container_cluster.rb +73 -66
- data/modules/mu/clouds/aws/database.rb +124 -116
- data/modules/mu/clouds/aws/dnszone.rb +27 -20
- data/modules/mu/clouds/aws/firewall_rule.rb +30 -22
- data/modules/mu/clouds/aws/folder.rb +18 -3
- data/modules/mu/clouds/aws/function.rb +77 -23
- data/modules/mu/clouds/aws/group.rb +19 -12
- data/modules/mu/clouds/aws/habitat.rb +153 -0
- data/modules/mu/clouds/aws/loadbalancer.rb +59 -52
- data/modules/mu/clouds/aws/log.rb +30 -23
- data/modules/mu/clouds/aws/msg_queue.rb +29 -20
- data/modules/mu/clouds/aws/notifier.rb +222 -0
- data/modules/mu/clouds/aws/role.rb +178 -90
- data/modules/mu/clouds/aws/search_domain.rb +40 -24
- data/modules/mu/clouds/aws/server.rb +169 -137
- data/modules/mu/clouds/aws/server_pool.rb +60 -83
- data/modules/mu/clouds/aws/storage_pool.rb +59 -31
- data/modules/mu/clouds/aws/user.rb +36 -27
- data/modules/mu/clouds/aws/userdata/linux.erb +101 -93
- data/modules/mu/clouds/aws/vpc.rb +250 -189
- data/modules/mu/clouds/azure.rb +132 -0
- data/modules/mu/clouds/cloudformation.rb +65 -1
- data/modules/mu/clouds/cloudformation/alarm.rb +8 -0
- data/modules/mu/clouds/cloudformation/cache_cluster.rb +7 -0
- data/modules/mu/clouds/cloudformation/collection.rb +7 -0
- data/modules/mu/clouds/cloudformation/database.rb +7 -0
- data/modules/mu/clouds/cloudformation/dnszone.rb +7 -0
- data/modules/mu/clouds/cloudformation/firewall_rule.rb +9 -2
- data/modules/mu/clouds/cloudformation/loadbalancer.rb +7 -0
- data/modules/mu/clouds/cloudformation/log.rb +7 -0
- data/modules/mu/clouds/cloudformation/server.rb +7 -0
- data/modules/mu/clouds/cloudformation/server_pool.rb +7 -0
- data/modules/mu/clouds/cloudformation/vpc.rb +7 -0
- data/modules/mu/clouds/google.rb +214 -110
- data/modules/mu/clouds/google/container_cluster.rb +42 -24
- data/modules/mu/clouds/google/database.rb +15 -6
- data/modules/mu/clouds/google/firewall_rule.rb +17 -25
- data/modules/mu/clouds/google/group.rb +13 -5
- data/modules/mu/clouds/google/habitat.rb +105 -0
- data/modules/mu/clouds/google/loadbalancer.rb +28 -20
- data/modules/mu/clouds/google/server.rb +93 -354
- data/modules/mu/clouds/google/server_pool.rb +18 -10
- data/modules/mu/clouds/google/user.rb +22 -14
- data/modules/mu/clouds/google/vpc.rb +97 -69
- data/modules/mu/config.rb +133 -38
- data/modules/mu/config/alarm.rb +25 -0
- data/modules/mu/config/cache_cluster.rb +5 -3
- data/modules/mu/config/cache_cluster.yml +23 -0
- data/modules/mu/config/database.rb +25 -16
- data/modules/mu/config/database.yml +3 -3
- data/modules/mu/config/function.rb +1 -2
- data/modules/mu/config/{project.rb → habitat.rb} +10 -10
- data/modules/mu/config/notifier.rb +85 -0
- data/modules/mu/config/notifier.yml +9 -0
- data/modules/mu/config/role.rb +1 -1
- data/modules/mu/config/search_domain.yml +2 -2
- data/modules/mu/config/server.rb +13 -1
- data/modules/mu/config/server.yml +3 -3
- data/modules/mu/config/server_pool.rb +3 -1
- data/modules/mu/config/storage_pool.rb +3 -1
- data/modules/mu/config/storage_pool.yml +19 -0
- data/modules/mu/config/vpc.rb +70 -8
- data/modules/mu/groomers/chef.rb +2 -3
- data/modules/mu/kittens.rb +500 -122
- data/modules/mu/master.rb +5 -5
- data/modules/mu/mommacat.rb +151 -91
- data/modules/tests/super_complex_bok.yml +12 -0
- data/modules/tests/super_simple_bok.yml +12 -0
- data/spec/mu/clouds/azure_spec.rb +82 -0
- data/spec/spec_helper.rb +105 -0
- metadata +26 -5
- data/modules/mu/clouds/aws/notification.rb +0 -139
- data/modules/mu/config/notification.rb +0 -44
data/bin/mu-gcp-setup
CHANGED
@@ -45,7 +45,24 @@ Usage:
|
|
45
45
|
opt :uploadlogs, "Push today's log files to the Cloud Storage bucket created by the -l option.", :require => false, :default => false, :type => :boolean
|
46
46
|
end
|
47
47
|
|
48
|
-
if MU::Cloud::Google.hosted
|
48
|
+
if MU::Cloud::Google.hosted? and !$MU_CFG['google']
|
49
|
+
new_cfg = $MU_CFG.dup
|
50
|
+
cfg_blob = MU::Cloud::Google.hosted_config
|
51
|
+
if cfg_blob
|
52
|
+
cfg_blob['log_bucket_name'] ||= $MU_CFG['hostname']
|
53
|
+
new_cfg["google"] = { "default" => cfg_blob }
|
54
|
+
MU.log "Adding auto-detected Google stanza to #{cfgPath}", MU::NOTICE
|
55
|
+
if new_cfg != $MU_CFG or !cfgExists?
|
56
|
+
MU.log "Generating #{cfgPath}"
|
57
|
+
saveMuConfig(new_cfg)
|
58
|
+
$MU_CFG = new_cfg
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
my_instance_id = MU::Cloud::AWS.getAWSMetaData("instance-id")
|
64
|
+
|
65
|
+
if MU::Cloud::Google.hosted?
|
49
66
|
instance = MU.myCloudDescriptor
|
50
67
|
admin_sg_name = "mu-master-"+MU.myInstanceId+"-ingress-allow"
|
51
68
|
if !instance.tags.items or !instance.tags.items.include?(admin_sg_name)
|
@@ -110,74 +127,79 @@ if $opts[:sg]
|
|
110
127
|
|
111
128
|
end
|
112
129
|
|
113
|
-
$bucketname =
|
130
|
+
$bucketname = MU::Cloud::Google.adminBucketName
|
114
131
|
|
115
132
|
if $opts[:logs]
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
bucket =
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
133
|
+
MU::Cloud::Google.listCredentials.each { |credset|
|
134
|
+
bucketname = MU::Cloud::Google.adminBucketName(credset)
|
135
|
+
exists = false
|
136
|
+
|
137
|
+
MU.log "Configuring log and secret Google Cloud Storage bucket '#{bucketname}'"
|
138
|
+
|
139
|
+
bucket = nil
|
140
|
+
begin
|
141
|
+
bucket = MU::Cloud::Google.storage(credentials: credset).get_bucket(bucketname)
|
142
|
+
rescue ::Google::Apis::ClientError => e
|
143
|
+
if e.message.match(/notFound:/)
|
144
|
+
MU.log "Creating #{bucketname} bucket"
|
145
|
+
bucketobj = MU::Cloud::Google.storage(:Bucket).new(
|
146
|
+
name: bucketname,
|
147
|
+
location: "US", # XXX why is this needed?
|
148
|
+
versioning: MU::Cloud::Google.storage(:Bucket)::Versioning.new(
|
149
|
+
enabled: true
|
150
|
+
),
|
151
|
+
lifecycle: MU::Cloud::Google.storage(:Bucket)::Lifecycle.new(
|
152
|
+
rule: [ MU::Cloud::Google.storage(:Bucket)::Lifecycle::Rule.new(
|
153
|
+
action: MU::Cloud::Google.storage(:Bucket)::Lifecycle::Rule::Action.new(
|
154
|
+
type: "SetStorageClass",
|
155
|
+
storage_class: "DURABLE_REDUCED_AVAILABILITY"
|
156
|
+
),
|
157
|
+
condition: MU::Cloud::Google.storage(:Bucket)::Lifecycle::Rule::Condition.new(
|
158
|
+
age: 180
|
159
|
+
)
|
160
|
+
)]
|
161
|
+
)
|
142
162
|
)
|
143
|
-
|
144
|
-
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
163
|
+
bucket = MU::Cloud::Google.storage(credentials: credset).insert_bucket(
|
164
|
+
MU::Cloud::Google.defaultProject(credset),
|
165
|
+
bucketobj
|
166
|
+
)
|
167
|
+
else
|
168
|
+
pp e.backtrace
|
169
|
+
raise MU::MuError, e.inspect
|
170
|
+
end
|
150
171
|
end
|
151
|
-
end
|
152
172
|
|
153
|
-
|
154
|
-
|
155
|
-
|
156
|
-
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
173
|
+
ebs_key = nil
|
174
|
+
|
175
|
+
begin
|
176
|
+
ebs_key = MU::Cloud::Google.storage(credentials: credset).get_object(bucketname, "log_vol_ebs_key")
|
177
|
+
rescue ::Google::Apis::ClientError => e
|
178
|
+
if e.message.match(/notFound:/)
|
179
|
+
# XXX this may not be useful outside of AWS
|
180
|
+
MU.log "Creating new key for encrypted log volume"
|
181
|
+
key = SecureRandom.random_bytes(32)
|
182
|
+
f = Tempfile.new("logvolkey") # XXX this is insecure and stupid
|
183
|
+
f.write key
|
184
|
+
f.close
|
185
|
+
objectobj = MU::Cloud::Google.storage(:Object).new(
|
186
|
+
bucket: bucketname,
|
187
|
+
name: "log_vol_ebs_key"
|
188
|
+
)
|
189
|
+
ebs_key = MU::Cloud::Google.storage(credentials: credset).insert_object(
|
190
|
+
bucketname,
|
191
|
+
objectobj,
|
192
|
+
upload_source: f.path
|
193
|
+
)
|
194
|
+
f.unlink
|
195
|
+
else
|
196
|
+
raise MuError, e.inspect
|
197
|
+
end
|
177
198
|
end
|
178
|
-
|
199
|
+
# XXX stop doing this per-bucket, chowderhead
|
200
|
+
MU::Master.disk("/dev/xvdl", "/Mu_Logs", 50, "log_vol_ebs_key", "ram7")
|
201
|
+
}
|
179
202
|
|
180
|
-
MU::Master.disk("/dev/xvdl", "/Mu_Logs", 50, "log_vol_ebs_key", "ram7")
|
181
203
|
end
|
182
204
|
|
183
205
|
if $opts[:dns]
|
data/bin/mu-load-config.rb
CHANGED
@@ -18,6 +18,46 @@ require 'json'
|
|
18
18
|
require 'erubis'
|
19
19
|
require 'socket'
|
20
20
|
|
21
|
+
# Make sure things make sense in our various cloud subsections, which are more
|
22
|
+
# complicated than the rest. May alter the hash it's passed.
|
23
|
+
def validateClouds(cfg)
|
24
|
+
ok = true
|
25
|
+
|
26
|
+
['aws', 'google', 'azure'].each { |cloud|
|
27
|
+
if cfg[cloud]
|
28
|
+
found_default = false
|
29
|
+
# Muddle up old-style single-account cloud configs into an array of
|
30
|
+
# named accounts, which is what we're expecting to see nowadays.
|
31
|
+
if cfg[cloud] and cfg[cloud].values.any? { |h| !h.is_a?(Hash) }
|
32
|
+
puts "Converting single #{cloud} #{cfgPath} account entry to default alias"
|
33
|
+
cfg[cloud] = {
|
34
|
+
"default" => cfg[cloud]
|
35
|
+
}
|
36
|
+
cfg[cloud]["default"]["default"] = true
|
37
|
+
found_default = true
|
38
|
+
else
|
39
|
+
missing_alias = false
|
40
|
+
cfg[cloud].each_pair { |acctalias, acct|
|
41
|
+
if acct["default"]
|
42
|
+
if found_default
|
43
|
+
puts "Multiple accounts have 'default' set in #{cloud}"
|
44
|
+
ok = false
|
45
|
+
end
|
46
|
+
found_default = true
|
47
|
+
end
|
48
|
+
}
|
49
|
+
end
|
50
|
+
if !found_default
|
51
|
+
first = cfg[cloud].keys.first
|
52
|
+
puts "No default #{cloud} credentials specified in #{cfgPath}, arbitrarily designating '#{first}'"
|
53
|
+
cfg[cloud][first]["default"] = true
|
54
|
+
end
|
55
|
+
end
|
56
|
+
}
|
57
|
+
|
58
|
+
ok
|
59
|
+
end
|
60
|
+
|
21
61
|
# Locate and load the Mu Master's configuration, typically stored in
|
22
62
|
# /opt/mu/etc/mu.yaml. If ~/.mu.yaml exists, load that too and allow it to
|
23
63
|
# override values from the global config. Also puts Mu's /modules directory
|
@@ -94,7 +134,7 @@ def loadMuConfig(default_cfg_overrides = nil)
|
|
94
134
|
if !global_cfg.has_key?("installdir")
|
95
135
|
if ENV['MU_INSTALLDIR']
|
96
136
|
global_cfg["installdir"] = ENV['MU_INSTALLDIR']
|
97
|
-
elsif Gem.paths and Gem.paths.home
|
137
|
+
elsif Gem.paths and Gem.paths.home and !Dir.exists?("/opt/mu/lib")
|
98
138
|
global_cfg["installdir"] = File.realpath(File.expand_path(File.dirname(Gem.paths.home))+"/../../../")
|
99
139
|
else
|
100
140
|
global_cfg["installdir"] = "/opt/mu"
|
@@ -117,10 +157,13 @@ def loadMuConfig(default_cfg_overrides = nil)
|
|
117
157
|
end
|
118
158
|
end
|
119
159
|
|
160
|
+
exit 1 if !validateClouds(global_cfg)
|
161
|
+
|
120
162
|
$LOAD_PATH << "#{global_cfg["libdir"]}/modules"
|
121
163
|
return default_cfg.merge(global_cfg).freeze
|
122
164
|
end
|
123
165
|
|
166
|
+
# Shorthand for locating the path to mu.yaml
|
124
167
|
def cfgPath
|
125
168
|
home = Etc.getpwuid(Process.uid).dir
|
126
169
|
username = Etc.getpwuid(Process.uid).name
|
@@ -128,7 +171,7 @@ def cfgPath
|
|
128
171
|
if ENV.include?('MU_INSTALLDIR')
|
129
172
|
ENV['MU_INSTALLDIR']+"/etc/mu.yaml"
|
130
173
|
elsif Dir.exists?("/opt/mu")
|
131
|
-
|
174
|
+
"/opt/mu/etc/mu.yaml"
|
132
175
|
else
|
133
176
|
"#{home}/.mu.yaml"
|
134
177
|
end
|
@@ -146,6 +189,7 @@ end
|
|
146
189
|
# @param cfg [Hash]: The configuration to dump
|
147
190
|
# @param comment [Hash]: A configuration blob that will be appended as a commented block
|
148
191
|
def saveMuConfig(cfg, comment = nil)
|
192
|
+
exit 1 if !validateClouds(cfg)
|
149
193
|
puts "**** Saving master config to #{cfgPath} *****"
|
150
194
|
File.open(cfgPath, File::CREAT|File::TRUNC|File::RDWR, 0644){ |f|
|
151
195
|
f.puts cfg.to_yaml
|
data/bin/mu-self-update
CHANGED
@@ -168,15 +168,6 @@ elif [ "`diff -r $MU_LIBDIR/Berksfile.lock $MU_DATADIR/tmp/berks_changes.$$/Berk
|
|
168
168
|
set -- "-u" "$@"
|
169
169
|
fi
|
170
170
|
|
171
|
-
/bin/rm -rf $MU_DATADIR/tmp/cookbook_changes.$$
|
172
|
-
/bin/rm -rf $MU_DATADIR/tmp/berks_changes.$$
|
173
|
-
|
174
|
-
if [ "$rebuild_chef_artifacts" == "1" ];then
|
175
|
-
/bin/rm -rf /root/.berkshelf/cookbooks
|
176
|
-
$bindir/mu-upload-chef-artifacts -p
|
177
|
-
else
|
178
|
-
$bindir/mu-upload-chef-artifacts -r mu
|
179
|
-
fi
|
180
171
|
|
181
172
|
set +e
|
182
173
|
/sbin/service nagios stop
|
@@ -203,7 +194,18 @@ if [ "$chef_major" == "12" ];then
|
|
203
194
|
fi
|
204
195
|
|
205
196
|
/opt/chef/bin/chef-apply $MU_LIBDIR/cookbooks/mu-master/recipes/init.rb
|
197
|
+
|
198
|
+
/bin/rm -rf $MU_DATADIR/tmp/cookbook_changes.$$
|
199
|
+
/bin/rm -rf $MU_DATADIR/tmp/berks_changes.$$
|
200
|
+
|
201
|
+
if [ "$rebuild_chef_artifacts" == "1" ];then
|
202
|
+
/bin/rm -rf /root/.berkshelf/cookbooks
|
203
|
+
$bindir/mu-upload-chef-artifacts -p
|
204
|
+
else
|
205
|
+
$bindir/mu-upload-chef-artifacts -r mu
|
206
|
+
fi
|
206
207
|
$bindir/mu-configure -n
|
208
|
+
|
207
209
|
for dir in $MU_LIBDIR /opt/chef/embedded /opt/opscode/embedded /usr/local/ruby-current/;do
|
208
210
|
echo "${GREEN}Sanitizing permissions in ${BOLD}$dir${NORM}${GREEN}${NORM}"
|
209
211
|
for tree in `ls -1 $dir/`;do
|
@@ -44,10 +44,10 @@ real_datadir="$MU_DATADIR"
|
|
44
44
|
|
45
45
|
|
46
46
|
source $MU_INSTALLDIR/lib/install/deprecated-bash-library.sh
|
47
|
-
if [ -x $MU_INSTALLDIR/lib/bin/mu-gen-env ];then
|
48
|
-
|
49
|
-
|
50
|
-
fi
|
47
|
+
# if [ -x $MU_INSTALLDIR/lib/bin/mu-gen-env ];then
|
48
|
+
# $MU_INSTALLDIR/lib/bin/mu-gen-env > $HOMEDIR/.murc
|
49
|
+
# source $HOMEDIR/.murc
|
50
|
+
# fi
|
51
51
|
export MU_DATADIR="$real_datadir"
|
52
52
|
|
53
53
|
cd $MU_CHEF_CACHE
|
@@ -17,7 +17,7 @@ end
|
|
17
17
|
|
18
18
|
Gem::Specification.new do |s|
|
19
19
|
s.name = 'cloud-mu'
|
20
|
-
s.version = '
|
20
|
+
s.version = '2.0.0-alpha'
|
21
21
|
s.date = '2018-12-11'
|
22
22
|
s.require_paths = ['modules']
|
23
23
|
s.required_ruby_version = '>= 2.4'
|
@@ -34,7 +34,7 @@ EOF
|
|
34
34
|
s.authors = ["John Stange", "Robert Patt-Corner", "Ryan Bolyard", "Clara Bridges", "Zach Rowe"]
|
35
35
|
s.email = 'eGTLabs@eglobaltech.com'
|
36
36
|
s.files = build_file_list(whereami)
|
37
|
-
s.executables = Dir.entries(whereami+"/bin")
|
37
|
+
s.executables = Dir.entries(whereami+"/bin").reject { |f| File.directory?(f) }
|
38
38
|
s.homepage =
|
39
39
|
'https://github.com/cloudamatic/mu'
|
40
40
|
s.license = 'BSD-3-Clause-Attribution'
|
@@ -0,0 +1,14 @@
|
|
1
|
+
source 'https://supermarket.chef.io'
|
2
|
+
source chef_repo: ".."
|
3
|
+
|
4
|
+
metadata
|
5
|
+
|
6
|
+
# Mu Cookbooks
|
7
|
+
cookbook 'mu-master'
|
8
|
+
cookbook 'mu-utility'
|
9
|
+
cookbook 'mu-tools'
|
10
|
+
|
11
|
+
# Supermarket Cookbooks
|
12
|
+
cookbook 'java', '~> 2.2.0'
|
13
|
+
cookbook 'jenkins', '~> 6.2.0'
|
14
|
+
cookbook 'chef-vault', '~> 3.1.1'
|
@@ -0,0 +1,23 @@
|
|
1
|
+
source 'https://supermarket.chef.io'
|
2
|
+
source chef_repo: ".."
|
3
|
+
|
4
|
+
metadata
|
5
|
+
|
6
|
+
# Mu Cookbooks
|
7
|
+
cookbook 'nagios'
|
8
|
+
cookbook 'mu-utility'
|
9
|
+
cookbook 'mu-tools'
|
10
|
+
cookbook 'mu-firewall'
|
11
|
+
cookbook 'mu-activedirectory'
|
12
|
+
cookbook 's3fs'
|
13
|
+
|
14
|
+
# Supermarket Cookbooks
|
15
|
+
cookbook 'nrpe', '~> 2.0.3'
|
16
|
+
cookbook 'postfix', '~> 5.3.1'
|
17
|
+
cookbook 'bind', '~> 2.2.0'
|
18
|
+
cookbook 'bind9-ng', '~> 0.1.0'
|
19
|
+
cookbook 'vault-cluster', '~> 2.1.0'
|
20
|
+
cookbook 'consul-cluster', '~> 2.0.0'
|
21
|
+
cookbook 'hostsfile', '~> 3.0.1'
|
22
|
+
cookbook 'chef-vault', '~> 3.1.1'
|
23
|
+
cookbook 'apache2', '< 4.0'
|
@@ -77,7 +77,7 @@ default['nagios']['host_name_attribute'] = 'chef_node_name'
|
|
77
77
|
default['application_attributes']['logs']['volume_size_gb'] = 50
|
78
78
|
default['application_attributes']['logs']['mount_device'] = "/dev/xvdl"
|
79
79
|
default['application_attributes']['logs']['label'] = "#{node['hostname']} /Mu_Logs"
|
80
|
-
default['application_attributes']['logs']['secure_location'] = MU.adminBucketName
|
80
|
+
#default['application_attributes']['logs']['secure_location'] = MU.adminBucketName
|
81
81
|
default['application_attributes']['logs']['ebs_keyfile'] = "log_vol_ebs_key"
|
82
82
|
default['application_attributes']['logs']['mount_directory'] = "/Mu_Logs"
|
83
83
|
|
@@ -7,7 +7,7 @@ long_description IO.read(File.join(File.dirname(__FILE__), 'README.md'))
|
|
7
7
|
source_url 'https://github.com/cloudamatic/mu'
|
8
8
|
issues_url 'https://github.com/cloudamatic/mu/issues'
|
9
9
|
chef_version '>= 12.1' if respond_to?(:chef_version)
|
10
|
-
version '0.9.
|
10
|
+
version '0.9.2'
|
11
11
|
|
12
12
|
%w( centos ).each do |os|
|
13
13
|
supports os
|
@@ -18,7 +18,7 @@ depends 'nrpe', '~> 2.0.3'
|
|
18
18
|
depends 'mu-utility'
|
19
19
|
depends 'mu-tools'
|
20
20
|
depends 'mu-activedirectory'
|
21
|
-
depends 's3fs'
|
21
|
+
depends 's3fs'
|
22
22
|
depends 'postfix', '~> 5.3.1'
|
23
23
|
depends 'bind', '~> 2.2.0'
|
24
24
|
depends 'bind9-ng', '~> 0.1.0'
|
@@ -27,7 +27,7 @@ include_recipe 'mu-master::firewall-holes'
|
|
27
27
|
include_recipe 'mu-master::ssl-certs'
|
28
28
|
include_recipe 'mu-master::vault'
|
29
29
|
include_recipe 'mu-tools::gcloud'
|
30
|
-
include_recipe 'mu-master::eks-kubectl'
|
30
|
+
#include_recipe 'mu-master::eks-kubectl'
|
31
31
|
|
32
32
|
master_ips = get_mu_master_ips
|
33
33
|
master_ips << "127.0.0.1"
|