fhcap-cli 0.4.12 → 0.4.13

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -1
  3. data/lib/cookbooks/provision/recipes/cluster_bootstrap_instances.rb +2 -1
  4. data/lib/fhcap/cluster.rb +17 -2
  5. data/lib/fhcap/component.rb +2 -2
  6. data/lib/fhcap/config.rb +1 -1
  7. data/lib/fhcap/provider.rb +2 -1
  8. data/lib/fhcap/repos_helper.rb +7 -1
  9. data/lib/fhcap/tasks/chef/cookbook/update_artifact.rb +13 -1
  10. data/lib/fhcap/tasks/chef/cookbook/update_config.rb +5 -0
  11. data/lib/fhcap/tasks/chef/environments/update_attributes.rb +47 -0
  12. data/lib/fhcap/tasks/chef/server/info.rb +12 -2
  13. data/lib/fhcap/tasks/cluster/create_dns_records.rb +4 -3
  14. data/lib/fhcap/tasks/cluster/create_environment.rb +2 -2
  15. data/lib/fhcap/tasks/cluster/generate.rb +2 -1
  16. data/lib/fhcap/tasks/cluster/info.rb +36 -9
  17. data/lib/fhcap/tasks/cluster/update_environment_attributes.rb +19 -0
  18. data/lib/fhcap/tasks/knife/add.rb +1 -1
  19. data/lib/fhcap/tasks/knife/remove.rb +1 -1
  20. data/lib/fhcap/tasks/provider/add.rb +3 -1
  21. data/lib/fhcap/tasks/provider/remove.rb +1 -1
  22. data/lib/fhcap/tasks/repo/add.rb +1 -1
  23. data/lib/fhcap/tasks/repo/checkout.rb +2 -1
  24. data/lib/fhcap/tasks/repo/remove.rb +1 -1
  25. data/lib/fhcap/tasks/setup.rb +1 -1
  26. data/lib/fhcap/version.rb +1 -1
  27. data/lib/fhcap.rb +1 -1
  28. data/spec/fhcap/tasks/chef/cookbook/update_artifact_spec.rb +1 -1
  29. data/spec/fhcap/tasks/chef/environments/update_attributes_spec.rb +33 -0
  30. data/spec/fhcap/tasks/cluster/update_environment_attributes_spec.rb +40 -0
  31. data/spec/fhcap/tasks/provider/add_spec.rb +24 -0
  32. data/templates/chef/environment_core.json.erb +2 -2
  33. data/templates/chef/{environment_ose-multi-node.json.erb → environment_oscp.json.erb} +5 -1
  34. data/templates/chef/environment_ose-single.json.erb +3 -2
  35. data/templates/chef/environment_single.json.erb +3 -3
  36. data/templates/cluster/aws/common.json.erb +1 -0
  37. data/templates/cluster/aws/{ose-multi-node.json.erb → oscp-5node.json.erb} +78 -36
  38. data/templates/cluster/aws/oscp-7node.json.erb +352 -0
  39. data/templates/cluster/aws/ose-single.json.erb +1 -0
  40. data/templates/cluster/openstack/common.json.erb +2 -1
  41. data/templates/cluster/openstack/oscp-5node.json.erb +68 -0
  42. data/templates/cluster/openstack/oscp-7node.json.erb +91 -0
  43. data/templates/cluster/oscp-5node.json.erb +8 -0
  44. data/templates/cluster/oscp-7node.json.erb +8 -0
  45. data/templates/kitchen/kitchen.aws.yml.erb +4 -0
  46. metadata +15 -6
  47. data/templates/cluster/openstack/ose-multi-node.json.erb +0 -30
  48. data/templates/cluster/ose-multi-node.json.erb +0 -8
@@ -30,6 +30,7 @@ describe Fhcap::Tasks::Provider::Add do
30
30
  specify { expect(subject.type).to eq(options[:type]) }
31
31
  specify { expect(subject.credentials).to eq(options[:credentials]) }
32
32
  specify { expect(subject.instance_variable_get(:@required_credentials)).to eq(%w{aws-access-key aws-secret-key}) }
33
+ specify { expect(subject.instance_variable_get(:@options_provider_config)).to eq({}) }
33
34
  end
34
35
  end
35
36
 
@@ -55,6 +56,29 @@ describe Fhcap::Tasks::Provider::Add do
55
56
  specify { expect(subject.type).to eq(options[:type]) }
56
57
  specify { expect(subject.credentials).to eq(options[:credentials]) }
57
58
  specify { expect(subject.instance_variable_get(:@required_credentials)).to eq(%w{os-auth-url os-tenant-id os-tenant-name os-username os-password}) }
59
+ specify { expect(subject.instance_variable_get(:@options_provider_config)).to eq({}) }
60
+ end
61
+ end
62
+
63
+ context "provider-config" do
64
+
65
+ let(:options) do
66
+ {
67
+ :thor => thor,
68
+ :name => 'testosprovider',
69
+ :type => 'testtype',
70
+ :'provider-config' => {
71
+ :testconfig => 'testconfig'
72
+ }
73
+ }
74
+ end
75
+
76
+ describe "#initialize" do
77
+ specify { expect(subject.name).to eq(options[:name]) }
78
+ specify { expect(subject.type).to eq(options[:type]) }
79
+ specify { expect(subject.credentials).to eq({}) }
80
+ specify { expect(subject.instance_variable_get(:@required_credentials)).to eq(nil) }
81
+ specify { expect(subject.instance_variable_get(:@options_provider_config)).to eq({:testconfig => 'testconfig'}) }
58
82
  end
59
83
  end
60
84
 
@@ -29,13 +29,13 @@ end
29
29
  "apache2": {
30
30
  "buildfarm": {
31
31
  "android": {
32
- "url": "meh1-builder.feedhenry.net"
32
+ "url": "meh2-builder.feedhenry.net"
33
33
  },
34
34
  "windowsphone": {
35
35
  "url": "e103-stg-digman-01.feedhenry.net"
36
36
  },
37
37
  "ios": {
38
- "url": "meh1-builder.feedhenry.net"
38
+ "url": "meh2-builder.feedhenry.net"
39
39
  }
40
40
  }
41
41
  },
@@ -7,7 +7,11 @@
7
7
  "chef_type": "environment",
8
8
  "default_attributes": {
9
9
  "openshift": {
10
- "domain": "<%= config[:domain] %>"
10
+ "domain": "<%= config[:domain] %>",
11
+ "version": "3.4",
12
+ "labels": {
13
+ "region": "default"
14
+ }
11
15
  },
12
16
  "rhsm": {
13
17
  "username": "CHANGEME",
@@ -7,7 +7,8 @@
7
7
  "chef_type": "environment",
8
8
  "default_attributes": {
9
9
  "openshift": {
10
- "domain": "<%= config[:domain] %>"
10
+ "domain": "<%= config[:domain] %>",
11
+ "version": "3.4"
11
12
  },
12
13
  "rhsm": {
13
14
  "username": "CHANGEME",
@@ -27,4 +28,4 @@
27
28
  }
28
29
  }
29
30
  }
30
- }
31
+ }
@@ -24,13 +24,13 @@ end
24
24
  "apache2": {
25
25
  "buildfarm": {
26
26
  "android": {
27
- "url": "meh1-builder.feedhenry.net"
27
+ "url": "meh2-builder.feedhenry.net"
28
28
  },
29
29
  "windowsphone": {
30
30
  "url": "e103-stg-digman-01.feedhenry.net"
31
31
  },
32
32
  "ios": {
33
- "url": "meh1-builder.feedhenry.net"
33
+ "url": "meh2-builder.feedhenry.net"
34
34
  }
35
35
  }
36
36
  },
@@ -297,7 +297,7 @@ end
297
297
  }
298
298
  },
299
299
  "nginx_feedhenry": {
300
- "loadbalancer": "<%= config[:domain].gsub('.', '\\.') %>"
300
+ "loadbalancer": "<%= config[:domain] %>"
301
301
  }
302
302
  },
303
303
  "override_attributes": {
@@ -57,6 +57,7 @@
57
57
  "52.193.17.19",
58
58
  "52.37.106.23",
59
59
  "52.48.49.57",
60
+ "13.112.69.160",
60
61
  "52.50.12.70",
61
62
  "52.51.188.129",
62
63
  "52.62.158.176",
@@ -21,7 +21,7 @@
21
21
  },
22
22
  <%- end -%>
23
23
  "security_groups": {
24
- "<%= config[:environment_name] %>-ose-master": {
24
+ "<%= config[:environment_name] %>-oscp-master": {
25
25
  "authorize_ingress": [
26
26
  {
27
27
  "protocols": [
@@ -30,9 +30,9 @@
30
30
  "start": 0,
31
31
  "end": 65535,
32
32
  "groups": [
33
- "<%= config[:environment_name] %>-ose-master",
34
- "<%= config[:environment_name] %>-ose-node",
35
- "<%= config[:environment_name] %>-ose-nfs"
33
+ "<%= config[:environment_name] %>-oscp-master",
34
+ "<%= config[:environment_name] %>-oscp-node",
35
+ "<%= config[:environment_name] %>-oscp-nfs"
36
36
  ]
37
37
  },
38
38
  {
@@ -42,9 +42,9 @@
42
42
  "start": -1,
43
43
  "end": -1,
44
44
  "groups": [
45
- "<%= config[:environment_name] %>-ose-master",
46
- "<%= config[:environment_name] %>-ose-node",
47
- "<%= config[:environment_name] %>-ose-nfs"
45
+ "<%= config[:environment_name] %>-oscp-master",
46
+ "<%= config[:environment_name] %>-oscp-node",
47
+ "<%= config[:environment_name] %>-oscp-nfs"
48
48
  ]
49
49
  },
50
50
  {
@@ -59,7 +59,7 @@
59
59
  }
60
60
  ]
61
61
  },
62
- "<%= config[:environment_name] %>-ose-node": {
62
+ "<%= config[:environment_name] %>-oscp-node": {
63
63
  "authorize_ingress": [
64
64
  {
65
65
  "protocols": [
@@ -68,10 +68,10 @@
68
68
  "start": 0,
69
69
  "end": 65535,
70
70
  "groups": [
71
- "<%= config[:environment_name] %>-ose-master",
72
- "<%= config[:environment_name] %>-ose-node",
73
- "<%= config[:environment_name] %>-ose-lb",
74
- "<%= config[:environment_name] %>-ose-nfs"
71
+ "<%= config[:environment_name] %>-oscp-master",
72
+ "<%= config[:environment_name] %>-oscp-node",
73
+ "<%= config[:environment_name] %>-oscp-lb",
74
+ "<%= config[:environment_name] %>-oscp-nfs"
75
75
  ]
76
76
  },
77
77
  {
@@ -81,15 +81,15 @@
81
81
  "start": -1,
82
82
  "end": -1,
83
83
  "groups": [
84
- "<%= config[:environment_name] %>-ose-master",
85
- "<%= config[:environment_name] %>-ose-node",
86
- "<%= config[:environment_name] %>-ose-lb",
87
- "<%= config[:environment_name] %>-ose-nfs"
84
+ "<%= config[:environment_name] %>-oscp-master",
85
+ "<%= config[:environment_name] %>-oscp-node",
86
+ "<%= config[:environment_name] %>-oscp-lb",
87
+ "<%= config[:environment_name] %>-oscp-nfs"
88
88
  ]
89
89
  }
90
90
  ]
91
91
  },
92
- "<%= config[:environment_name] %>-ose-lb": {
92
+ "<%= config[:environment_name] %>-oscp-lb": {
93
93
  "authorize_ingress": [
94
94
  {
95
95
  "protocols": [
@@ -103,7 +103,7 @@
103
103
  }
104
104
  ]
105
105
  },
106
- "<%= config[:environment_name] %>-ose-nfs": {
106
+ "<%= config[:environment_name] %>-oscp-nfs": {
107
107
  "authorize_ingress": [
108
108
  {
109
109
  "protocols": [
@@ -112,9 +112,9 @@
112
112
  "start": 0,
113
113
  "end": 65535,
114
114
  "groups": [
115
- "<%= config[:environment_name] %>-ose-master",
116
- "<%= config[:environment_name] %>-ose-node",
117
- "<%= config[:environment_name] %>-ose-nfs"
115
+ "<%= config[:environment_name] %>-oscp-master",
116
+ "<%= config[:environment_name] %>-oscp-node",
117
+ "<%= config[:environment_name] %>-oscp-nfs"
118
118
  ]
119
119
  },
120
120
  {
@@ -124,17 +124,17 @@
124
124
  "start": -1,
125
125
  "end": -1,
126
126
  "groups": [
127
- "<%= config[:environment_name] %>-ose-master",
128
- "<%= config[:environment_name] %>-ose-node",
129
- "<%= config[:environment_name] %>-ose-lb"
127
+ "<%= config[:environment_name] %>-oscp-master",
128
+ "<%= config[:environment_name] %>-oscp-node",
129
+ "<%= config[:environment_name] %>-oscp-lb"
130
130
  ]
131
131
  }
132
132
  ]
133
133
  }
134
134
  },
135
135
  "load_balancers": {
136
- "ose-lb": {
137
- "security_groups": ["<%= config[:environment_name] %>-ose-lb"],
136
+ "oscp-lb": {
137
+ "security_groups": ["<%= config[:environment_name] %>-oscp-lb"],
138
138
  "subnets": ["1a", "1b", "1c"],
139
139
  "scheme": "internet-facing",
140
140
  "listeners": [
@@ -150,9 +150,10 @@
150
150
  "instances": {
151
151
  "master1": {
152
152
  "aws": {
153
+ "instance_type": "m3.large",
153
154
  "security_groups": [
154
155
  "ops-admin",
155
- "<%= config[:environment_name] %>-ose-master"
156
+ "<%= config[:environment_name] %>-oscp-master"
156
157
  ]
157
158
  <%- unless config[:provider_config][:cidr] == "none" -%>
158
159
  ,"private_ip_address": "",
@@ -161,13 +162,21 @@
161
162
  },
162
163
  "run_list": [
163
164
  "role[ose_master_server]"
164
- ]
165
+ ],
166
+ "chef_attributes":{
167
+ "openshift":{
168
+ "labels": {
169
+ "name": "master1"
170
+ }
171
+ }
172
+ }
165
173
  },
166
174
  "node1": {
167
175
  "aws": {
176
+ "instance_type": "m3.xlarge",
168
177
  "security_groups": [
169
178
  "ops-admin",
170
- "<%= config[:environment_name] %>-ose-node"
179
+ "<%= config[:environment_name] %>-oscp-node"
171
180
  ]
172
181
  <%- unless config[:provider_config][:cidr] == "none" -%>
173
182
  ,"private_ip_address": "",
@@ -177,13 +186,22 @@
177
186
  "run_list": [
178
187
  "role[ose_node_server]"
179
188
  ],
180
- "load_balancers": ["ose-lb"]
189
+ "load_balancers": ["oscp-lb"],
190
+ "chef_attributes":{
191
+ "openshift":{
192
+ "labels":{
193
+ "name": "node1",
194
+ "region": "infra"
195
+ }
196
+ }
197
+ }
181
198
  },
182
199
  "node2": {
183
200
  "aws": {
201
+ "instance_type": "m3.xlarge",
184
202
  "security_groups": [
185
203
  "ops-admin",
186
- "<%= config[:environment_name] %>-ose-node"
204
+ "<%= config[:environment_name] %>-oscp-node"
187
205
  ]
188
206
  <%- unless config[:provider_config][:cidr] == "none" -%>
189
207
  ,"private_ip_address": "",
@@ -193,13 +211,22 @@
193
211
  "run_list": [
194
212
  "role[ose_node_server]"
195
213
  ],
196
- "load_balancers": ["ose-lb"]
214
+ "load_balancers": ["oscp-lb"],
215
+ "chef_attributes":{
216
+ "openshift":{
217
+ "labels": {
218
+ "name": "node2",
219
+ "region": "infra"
220
+ }
221
+ }
222
+ }
197
223
  },
198
224
  "node3": {
199
225
  "aws": {
226
+ "instance_type": "m3.xlarge",
200
227
  "security_groups": [
201
228
  "ops-admin",
202
- "<%= config[:environment_name] %>-ose-node"
229
+ "<%= config[:environment_name] %>-oscp-node"
203
230
  ]
204
231
  <%- unless config[:provider_config][:cidr] == "none" -%>
205
232
  ,"private_ip_address": "",
@@ -209,13 +236,21 @@
209
236
  "run_list": [
210
237
  "role[ose_node_server]"
211
238
  ],
212
- "load_balancers": ["ose-lb"]
239
+ "load_balancers": ["oscp-lb"],
240
+ "chef_attributes":{
241
+ "openshift":{
242
+ "labels": {
243
+ "name": "node3",
244
+ "region": "infra"
245
+ }
246
+ }
247
+ }
213
248
  },
214
249
  "nfs1": {
215
250
  "aws": {
216
251
  "security_groups": [
217
252
  "ops-admin",
218
- "<%= config[:environment_name] %>-ose-nfs"
253
+ "<%= config[:environment_name] %>-oscp-nfs"
219
254
  ]
220
255
  <%- unless config[:provider_config][:cidr] == "none" -%>
221
256
  ,"private_ip_address": "",
@@ -224,7 +259,14 @@
224
259
  },
225
260
  "run_list": [
226
261
  "role[ose_storage_server]"
227
- ]
262
+ ],
263
+ "chef_attributes":{
264
+ "openshift":{
265
+ "labels": {
266
+ "name": "nfs1"
267
+ }
268
+ }
269
+ }
228
270
  }
229
271
  }
230
272
  }