vcloud-edge_gateway 0.5.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,221 @@
1
+ require 'spec_helper'
2
+
3
+ class CommandRun
4
+ attr_accessor :stdout, :stderr, :exitstatus
5
+
6
+ def initialize(args)
7
+ out = StringIO.new
8
+ err = StringIO.new
9
+
10
+ $stdout = out
11
+ $stderr = err
12
+
13
+ begin
14
+ Vcloud::EdgeGateway::Cli.new(args).run
15
+ @exitstatus = 0
16
+ rescue SystemExit => e
17
+ # Capture exit(n) value.
18
+ @exitstatus = e.status
19
+ end
20
+
21
+ @stdout = out.string.strip
22
+ @stderr = err.string.strip
23
+
24
+ $stdout = STDOUT
25
+ $stderr = STDERR
26
+ end
27
+ end
28
+
29
+ describe Vcloud::EdgeGateway::Cli do
30
+ subject { CommandRun.new(args) }
31
+
32
+ describe "normal usage" do
33
+ let(:mock_configure) {
34
+ double(:configure, :update => {})
35
+ }
36
+
37
+ context "when given a single config file" do
38
+ let(:args) { %w{config.yaml} }
39
+
40
+ it "should pass single argument, call update without any args, and exit normally" do
41
+ expect(Vcloud::EdgeGateway::Configure).to receive(:new).
42
+ with('config.yaml').and_return(mock_configure)
43
+ expect(mock_configure).to receive(:update).with(no_args)
44
+ expect(subject.exitstatus).to eq(0)
45
+ end
46
+ end
47
+
48
+ context "when given --template-vars and config file" do
49
+ let(:args) { %w{--template-vars vars.yaml config.yaml} }
50
+
51
+ it "should pass two arguments and exit normally" do
52
+ expect(Vcloud::EdgeGateway::Configure).to receive(:new).
53
+ with('config.yaml', 'vars.yaml').and_return(mock_configure)
54
+ expect(mock_configure).to receive(:update)
55
+ expect(subject.exitstatus).to eq(0)
56
+ end
57
+ end
58
+
59
+ context "when given --dry-run and config file" do
60
+ let(:args) { %w{--dry-run config.yaml} }
61
+
62
+ it "should call update(true) and exit normally" do
63
+ expect(Vcloud::EdgeGateway::Configure).to receive(:new).
64
+ with('config.yaml').and_return(mock_configure)
65
+ expect(mock_configure).to receive(:update).with(true)
66
+ expect(subject.exitstatus).to eq(0)
67
+ end
68
+ end
69
+
70
+ context "when asked to display version" do
71
+ let(:args) { %w{--version} }
72
+
73
+ it "should not call Configure" do
74
+ expect(Vcloud::EdgeGateway::Configure).not_to receive(:new)
75
+ end
76
+
77
+ it "should print version and exit normally" do
78
+ expect(subject.stdout).to eq(Vcloud::EdgeGateway::VERSION)
79
+ expect(subject.exitstatus).to eq(0)
80
+ end
81
+ end
82
+
83
+ context "when asked to display help" do
84
+ let(:args) { %w{--help} }
85
+
86
+ it "should not call Configure" do
87
+ expect(Vcloud::EdgeGateway::Configure).not_to receive(:new)
88
+ end
89
+
90
+ it "should print usage and exit normally" do
91
+ expect(subject.stderr).to match(/\AUsage: \S+ \[options\] config_file\n/)
92
+ expect(subject.exitstatus).to eq(0)
93
+ end
94
+ end
95
+ end
96
+
97
+ describe "diff output" do
98
+ shared_examples "diff with stdout contents" do |expected_stdout|
99
+ it "should output diff to stdout" do
100
+ expect(Vcloud::EdgeGateway::Configure).to receive(:new).
101
+ with('config.yaml').and_return(mock_configure)
102
+ expect(subject.stdout).to eq(expected_stdout.chomp)
103
+ expect(subject.exitstatus).to eq(0)
104
+ end
105
+ end
106
+
107
+ context "when diff is empty" do
108
+ let(:mock_configure) {
109
+ double(:configure, :update => {})
110
+ }
111
+
112
+ context "when given config (colour doesn't matter)" do
113
+ let(:args) { %w{config.yaml} }
114
+
115
+ it_behaves_like "diff with stdout contents", ""
116
+ end
117
+ end
118
+
119
+ context "when diff contains two services with three types of changes" do
120
+ shared_examples "diff with colour output" do
121
+ include_examples "diff with stdout contents", <<-EOS.chomp
122
+ \033[31m- FirewallService.IsEnabled: true\033[0m
123
+ \033[32m+ FirewallService.LogDefaultAction: false\033[0m
124
+ \033[31m- NatService.IsEnabled: true\033[0m
125
+ \033[32m+ NatService.IsEnabled: false\033[0m
126
+ EOS
127
+ end
128
+
129
+ shared_examples "diff without colour output" do
130
+ include_examples "diff with stdout contents", <<-EOS.chomp
131
+ - FirewallService.IsEnabled: true
132
+ + FirewallService.LogDefaultAction: false
133
+ - NatService.IsEnabled: true
134
+ + NatService.IsEnabled: false
135
+ EOS
136
+ end
137
+
138
+ let(:mock_configure) {
139
+ double(:configure, :update => {
140
+ :FirewallService => [
141
+ ["-", "IsEnabled", "true"],
142
+ ["+", "LogDefaultAction", "false"],
143
+ ],
144
+ :NatService => [
145
+ ["~", "IsEnabled", "true", "false"],
146
+ ],
147
+ })
148
+ }
149
+
150
+ context "STDOUT is not redirected" do
151
+ before(:each) {
152
+ STDOUT.stub(:tty?).and_return(true)
153
+ }
154
+
155
+ context "when colour argument is not specified" do
156
+ let(:args) { %w{config.yaml} }
157
+
158
+ it_behaves_like "diff with colour output"
159
+ end
160
+
161
+ context "when given --no-colour" do
162
+ let(:args) { %w{--no-colour config.yaml} }
163
+
164
+ it_behaves_like "diff without colour output"
165
+ end
166
+ end
167
+
168
+ context "STDOUT is redirected" do
169
+ before(:each) {
170
+ STDOUT.stub(:tty?).and_return(false)
171
+ }
172
+
173
+ context "when colour argument is not specified" do
174
+ let(:args) { %w{config.yaml} }
175
+
176
+ it_behaves_like "diff without colour output"
177
+ end
178
+
179
+ context "when given --colour" do
180
+ let(:args) { %w{--colour config.yaml} }
181
+
182
+ it_behaves_like "diff with colour output"
183
+ end
184
+ end
185
+ end
186
+ end
187
+
188
+ describe "incorrect usage" do
189
+ shared_examples "print usage and exit abnormally" do |error|
190
+ it "should not call Configure" do
191
+ expect(Vcloud::EdgeGateway::Configure).not_to receive(:new)
192
+ end
193
+
194
+ it "should print error message and usage" do
195
+ expect(subject.stderr).to match(/\A\S+: #{error}\nUsage: \S+/)
196
+ end
197
+
198
+ it "should exit abnormally for incorrect usage" do
199
+ expect(subject.exitstatus).to eq(2)
200
+ end
201
+ end
202
+
203
+ context "when run without any arguments" do
204
+ let(:args) { %w{} }
205
+
206
+ it_behaves_like "print usage and exit abnormally", "must supply config_file"
207
+ end
208
+
209
+ context "when given a multiple config files" do
210
+ let(:args) { %w{one.yaml two.yaml} }
211
+
212
+ it_behaves_like "print usage and exit abnormally", "must supply config_file"
213
+ end
214
+
215
+ context "when given an unrecognised argument" do
216
+ let(:args) { %w{--this-is-garbage} }
217
+
218
+ it_behaves_like "print usage and exit abnormally", "invalid option: --this-is-garbage"
219
+ end
220
+ end
221
+ end
@@ -0,0 +1,81 @@
1
+ require 'spec_helper'
2
+
3
+ describe Vcloud::EdgeGateway::Configure do
4
+ describe 'dry_run' do
5
+ let(:expected_log_message) {
6
+ /: Dry run\. Skipping\.$/
7
+ }
8
+ let(:mock_edgegateway) {
9
+ double(:edgegateway,
10
+ :interfaces => 'chocolate cake',
11
+ :vcloud_attributes => {
12
+ :Configuration => {
13
+ :EdgeGatewayServiceConfiguration => 'ice cream cone',
14
+ }
15
+ }
16
+ )
17
+ }
18
+
19
+ before(:each) {
20
+ Vcloud::Core::EdgeGateway.stub(:get_by_name).and_return(mock_edgegateway)
21
+
22
+ mock_configloader = double(:configloader,
23
+ :load_config => { :gateway => 'pickle' }
24
+ )
25
+ Vcloud::Core::ConfigLoader.stub(:new).and_return(mock_configloader)
26
+
27
+ mock_configuration = double(:configuration,
28
+ :update_required? => true,
29
+ :config => 'slice of swiss cheese',
30
+ :diff => ['slice of salami'],
31
+ )
32
+ Vcloud::EdgeGateway::EdgeGatewayConfiguration.stub(:new).and_return(mock_configuration)
33
+ }
34
+
35
+ context "when false (default)" do
36
+ let(:subject) {
37
+ Vcloud::EdgeGateway::Configure.new('lollipop.yaml').update
38
+ }
39
+
40
+ it "should call update_configuration" do
41
+ expect(mock_edgegateway).to receive(:update_configuration).with('slice of swiss cheese')
42
+ subject
43
+ end
44
+
45
+ it "should not log message about dry run" do
46
+ mock_edgegateway.stub(:update_configuration)
47
+ expect(Vcloud::Core.logger).not_to receive(:info).with(expected_log_message)
48
+ subject
49
+ end
50
+
51
+ it "should return diff" do
52
+ mock_edgegateway.stub(:update_configuration)
53
+ expect(subject).to eq(['slice of salami'])
54
+ end
55
+ end
56
+
57
+ context "when true" do
58
+ let(:subject) {
59
+ Vcloud::EdgeGateway::Configure.new('lollipop.yaml').update(true)
60
+ }
61
+
62
+ it "should not call update_configuration" do
63
+ Vcloud::Core.logger.stub(:info)
64
+ expect(mock_edgegateway).not_to receive(:update_configuration)
65
+ subject
66
+ end
67
+
68
+ it "should log message about dry run" do
69
+ mock_edgegateway.stub(:update_configuration)
70
+ expect(Vcloud::Core.logger).to receive(:info).with(expected_log_message)
71
+ subject
72
+ end
73
+
74
+ it "should return diff" do
75
+ Vcloud::Core.logger.stub(:info)
76
+ mock_edgegateway.stub(:update_configuration)
77
+ expect(subject).to eq(['slice of salami'])
78
+ end
79
+ end
80
+ end
81
+ end
@@ -83,6 +83,14 @@ module Vcloud
83
83
  expect(proposed_load_balancer_config).to eq(expected_load_balancer_config)
84
84
  end
85
85
 
86
+ it "proposed diff contains changes for all services" do
87
+ diff = @proposed_config.diff
88
+ expect(diff.keys).to eq([:FirewallService, :NatService, :LoadBalancerService])
89
+ expect(diff[:FirewallService]).to have_at_least(1).items
90
+ expect(diff[:NatService]).to have_at_least(1).items
91
+ expect(diff[:LoadBalancerService]).to have_at_least(1).items
92
+ end
93
+
86
94
  end
87
95
 
88
96
  context "firewall config has changed and nat has not, load_balancer absent" do
@@ -121,6 +129,12 @@ module Vcloud
121
129
  expect(@proposed_config.config.key?(:LoadBalancerService)).to be(false)
122
130
  end
123
131
 
132
+ it "proposed diff contains changes for firewall service" do
133
+ diff = @proposed_config.diff
134
+ expect(diff.keys).to eq([:FirewallService])
135
+ expect(diff[:FirewallService]).to have_at_least(1).items
136
+ end
137
+
124
138
  end
125
139
 
126
140
  context "firewall config has changed and nat & load_balancer configs are absent" do
@@ -159,6 +173,12 @@ module Vcloud
159
173
  expect(@proposed_config.config.key?(:LoadBalancerService)).to be(false)
160
174
  end
161
175
 
176
+ it "proposed diff contains changes for firewall service" do
177
+ diff = @proposed_config.diff
178
+ expect(diff.keys).to eq([:FirewallService])
179
+ expect(diff[:FirewallService]).to have_at_least(1).items
180
+ end
181
+
162
182
  end
163
183
 
164
184
  context "load_balancer config has changed and firewall & nat have not" do
@@ -199,6 +219,12 @@ module Vcloud
199
219
  expect(@proposed_config.config.key?(:FirewallService)).to be(false)
200
220
  end
201
221
 
222
+ it "proposed diff contains changes for load balancer service" do
223
+ diff = @proposed_config.diff
224
+ expect(diff.keys).to eq([:LoadBalancerService])
225
+ expect(diff[:LoadBalancerService]).to have_at_least(1).items
226
+ end
227
+
202
228
  end
203
229
 
204
230
  context "load_balancer & firewall config have changed and nat has not" do
@@ -240,6 +266,13 @@ module Vcloud
240
266
  expect(proposed_firewall_config).to eq(expected_firewall_config)
241
267
  end
242
268
 
269
+ it "proposed diff contains changes for firewall and load balancer services" do
270
+ diff = @proposed_config.diff
271
+ expect(diff.keys).to eq([:FirewallService, :LoadBalancerService])
272
+ expect(diff[:FirewallService]).to have_at_least(1).items
273
+ expect(diff[:LoadBalancerService]).to have_at_least(1).items
274
+ end
275
+
243
276
  end
244
277
 
245
278
 
@@ -279,6 +312,12 @@ module Vcloud
279
312
  expect(@proposed_config.config.key?(:FirewallService)).to be(false)
280
313
  end
281
314
 
315
+ it "proposed diff contains changes for load balancer service" do
316
+ diff = @proposed_config.diff
317
+ expect(diff.keys).to eq([:LoadBalancerService])
318
+ expect(diff[:LoadBalancerService]).to have_at_least(1).items
319
+ end
320
+
282
321
  end
283
322
 
284
323
  context "all configs are present but haven't changed" do
@@ -310,6 +349,10 @@ module Vcloud
310
349
  expect(@proposed_config.config.empty?).to be(true)
311
350
  end
312
351
 
352
+ it "proposed diff contains no changes" do
353
+ expect(@proposed_config.diff).to eq({})
354
+ end
355
+
313
356
  end
314
357
 
315
358
  context "firewall config has not changed and nat & load_balancer config is absent" do
@@ -339,6 +382,10 @@ module Vcloud
339
382
  expect(@proposed_config.config.empty?).to be(true)
340
383
  end
341
384
 
385
+ it "proposed diff contains no changes" do
386
+ expect(@proposed_config.diff).to eq({})
387
+ end
388
+
342
389
  end
343
390
 
344
391
  context "no service config is present" do
@@ -367,6 +414,10 @@ module Vcloud
367
414
  expect(@proposed_config.config.empty?).to be(true)
368
415
  end
369
416
 
417
+ it "proposed diff contains no changes" do
418
+ expect(@proposed_config.diff).to eq({})
419
+ end
420
+
370
421
  end
371
422
 
372
423
  context "when there is a missing remote LoadBalancerService, we can still update NatService" do
@@ -404,6 +455,12 @@ module Vcloud
404
455
  expect(@proposed_config.config.key?(:FirewallService)).to be(false)
405
456
  end
406
457
 
458
+ it "proposed diff contains changes for nat service" do
459
+ diff = @proposed_config.diff
460
+ expect(diff.keys).to eq([:NatService])
461
+ expect(diff[:NatService]).to have_at_least(1).items
462
+ end
463
+
407
464
  end
408
465
 
409
466
  context "there is no remote FirewallService config, but we are trying to update it" do
@@ -441,6 +498,12 @@ module Vcloud
441
498
  expect(@proposed_config.config.key?(:NatService)).to be(false)
442
499
  end
443
500
 
501
+ it "proposed diff contains changes for firewall service" do
502
+ diff = @proposed_config.diff
503
+ expect(diff.keys).to eq([:FirewallService])
504
+ expect(diff[:FirewallService]).to have_at_least(1).items
505
+ end
506
+
444
507
  end
445
508
 
446
509
  context "there is no remote NatService config, but we are trying to update it" do
@@ -478,6 +541,12 @@ module Vcloud
478
541
  expect(@proposed_config.config.key?(:FirewallService)).to be(false)
479
542
  end
480
543
 
544
+ it "proposed diff contains changes for nat service" do
545
+ diff = @proposed_config.diff
546
+ expect(diff.keys).to eq([:NatService])
547
+ expect(diff[:NatService]).to have_at_least(1).items
548
+ end
549
+
481
550
  end
482
551
 
483
552
  context "there is no remote LoadBalancer config, but we are trying to update it" do
@@ -515,6 +584,12 @@ module Vcloud
515
584
  expect(@proposed_config.config.key?(:FirewallService)).to be(false)
516
585
  end
517
586
 
587
+ it "proposed diff contains changes for load balancer service" do
588
+ diff = @proposed_config.diff
589
+ expect(diff.keys).to eq([:LoadBalancerService])
590
+ expect(diff[:LoadBalancerService]).to have_at_least(1).items
591
+ end
592
+
518
593
  end
519
594
 
520
595
  def test_firewall_config
@@ -24,10 +24,12 @@ Gem::Specification.new do |s|
24
24
  s.add_runtime_dependency 'fog', '>= 1.21.0'
25
25
  s.add_runtime_dependency 'vcloud-core', '~> 0.2.0'
26
26
  s.add_runtime_dependency 'hashdiff'
27
+ s.add_development_dependency 'pry'
27
28
  s.add_development_dependency 'rake'
28
29
  s.add_development_dependency 'rspec', '~> 2.14.1'
29
- s.add_development_dependency 'rubocop'
30
+ s.add_development_dependency 'rubocop', '~> 0.23.0'
30
31
  s.add_development_dependency 'simplecov', '~> 0.8.2'
31
32
  s.add_development_dependency 'gem_publisher', '1.2.0'
33
+ s.add_development_dependency 'vcloud-tools-tester', '0.0.5'
32
34
  end
33
35
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: vcloud-edge_gateway
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.0
4
+ version: 1.0.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-05-16 00:00:00.000000000 Z
12
+ date: 2014-06-04 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: fog
@@ -59,6 +59,22 @@ dependencies:
59
59
  - - ! '>='
60
60
  - !ruby/object:Gem::Version
61
61
  version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: pry
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
62
78
  - !ruby/object:Gem::Dependency
63
79
  name: rake
64
80
  requirement: !ruby/object:Gem::Requirement
@@ -96,17 +112,17 @@ dependencies:
96
112
  requirement: !ruby/object:Gem::Requirement
97
113
  none: false
98
114
  requirements:
99
- - - ! '>='
115
+ - - ~>
100
116
  - !ruby/object:Gem::Version
101
- version: '0'
117
+ version: 0.23.0
102
118
  type: :development
103
119
  prerelease: false
104
120
  version_requirements: !ruby/object:Gem::Requirement
105
121
  none: false
106
122
  requirements:
107
- - - ! '>='
123
+ - - ~>
108
124
  - !ruby/object:Gem::Version
109
- version: '0'
125
+ version: 0.23.0
110
126
  - !ruby/object:Gem::Dependency
111
127
  name: simplecov
112
128
  requirement: !ruby/object:Gem::Requirement
@@ -139,22 +155,41 @@ dependencies:
139
155
  - - '='
140
156
  - !ruby/object:Gem::Version
141
157
  version: 1.2.0
158
+ - !ruby/object:Gem::Dependency
159
+ name: vcloud-tools-tester
160
+ requirement: !ruby/object:Gem::Requirement
161
+ none: false
162
+ requirements:
163
+ - - '='
164
+ - !ruby/object:Gem::Version
165
+ version: 0.0.5
166
+ type: :development
167
+ prerelease: false
168
+ version_requirements: !ruby/object:Gem::Requirement
169
+ none: false
170
+ requirements:
171
+ - - '='
172
+ - !ruby/object:Gem::Version
173
+ version: 0.0.5
142
174
  description: Tool to configure a VMware vCloud Edge Gateway. Uses vcloud-core.
143
175
  email:
144
176
  - anna.shipman@digital.cabinet-office.gov.uk
145
177
  executables:
146
178
  - vcloud-configure-edge
179
+ - vcloud-edge-configure
147
180
  extensions: []
148
181
  extra_rdoc_files: []
149
182
  files:
150
183
  - .gitignore
151
184
  - .travis.yml
152
185
  - CHANGELOG.md
186
+ - CONTRIBUTING.md
153
187
  - Gemfile
154
188
  - LICENSE.txt
155
189
  - README.md
156
190
  - Rakefile
157
191
  - bin/vcloud-configure-edge
192
+ - bin/vcloud-edge-configure
158
193
  - examples/vcloud-configure-edge/firewall-rules.yaml
159
194
  - examples/vcloud-configure-edge/loadbalancer-rules.yaml
160
195
  - examples/vcloud-configure-edge/nat-rules.yaml
@@ -164,6 +199,7 @@ files:
164
199
  - jenkins.sh
165
200
  - jenkins_integration_tests.sh
166
201
  - lib/vcloud/edge_gateway.rb
202
+ - lib/vcloud/edge_gateway/cli.rb
167
203
  - lib/vcloud/edge_gateway/configuration_differ.rb
168
204
  - lib/vcloud/edge_gateway/configuration_generator/firewall_service.rb
169
205
  - lib/vcloud/edge_gateway/configuration_generator/id_ranges.rb
@@ -179,6 +215,11 @@ files:
179
215
  - lib/vcloud/edge_gateway/schema/load_balancer_service.rb
180
216
  - lib/vcloud/edge_gateway/schema/nat_service.rb
181
217
  - lib/vcloud/edge_gateway/version.rb
218
+ - spec/integration/README.md
219
+ - spec/integration/edge_gateway/configure_firewall_spec.rb
220
+ - spec/integration/edge_gateway/configure_load_balancer_spec.rb
221
+ - spec/integration/edge_gateway/configure_nat_spec.rb
222
+ - spec/integration/edge_gateway/configure_services_spec.rb
182
223
  - spec/integration/edge_gateway/data/firewall_config.yaml.mustache
183
224
  - spec/integration/edge_gateway/data/firewall_config_updated_rule.yaml.mustache
184
225
  - spec/integration/edge_gateway/data/firewall_rule_order_test.yaml.mustache
@@ -192,12 +233,10 @@ files:
192
233
  - spec/integration/edge_gateway/data/nat_and_firewall_config.yaml.mustache
193
234
  - spec/integration/edge_gateway/data/nat_and_firewall_plus_load_balancer_config.yaml.mustache
194
235
  - spec/integration/edge_gateway/data/nat_config.yaml.mustache
195
- - spec/integration/edge_gateway/edge_gateway_services_spec.rb
196
- - spec/integration/edge_gateway/firewall_service_spec.rb
197
- - spec/integration/edge_gateway/load_balancer_service_spec.rb
198
- - spec/integration/edge_gateway/nat_service_spec.rb
236
+ - spec/integration/vcloud_tools_testing_config.yaml.template
199
237
  - spec/spec_helper.rb
200
238
  - spec/support/integration_helper.rb
239
+ - spec/vcloud/edge_gateway/cli_spec.rb
201
240
  - spec/vcloud/edge_gateway/configuration_differ_shared_examples.rb
202
241
  - spec/vcloud/edge_gateway/configuration_differ_spec.rb
203
242
  - spec/vcloud/edge_gateway/configuration_generator/data/load_balancer_http-input.yaml
@@ -212,6 +251,7 @@ files:
212
251
  - spec/vcloud/edge_gateway/configuration_generator/firewall_service_spec.rb
213
252
  - spec/vcloud/edge_gateway/configuration_generator/load_balancer_service_spec.rb
214
253
  - spec/vcloud/edge_gateway/configuration_generator/nat_service_spec.rb
254
+ - spec/vcloud/edge_gateway/configure_spec.rb
215
255
  - spec/vcloud/edge_gateway/edge_gateway_configuration_spec.rb
216
256
  - spec/vcloud/edge_gateway/firewall_configuration_differ_spec.rb
217
257
  - spec/vcloud/edge_gateway/firewall_schema_validation_spec.rb
@@ -242,7 +282,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
242
282
  version: '0'
243
283
  segments:
244
284
  - 0
245
- hash: -1385962529695170701
285
+ hash: -2937222901484224799
246
286
  requirements: []
247
287
  rubyforge_project:
248
288
  rubygems_version: 1.8.23
@@ -250,6 +290,11 @@ signing_key:
250
290
  specification_version: 3
251
291
  summary: Tool to configure a VMware vCloud Edge Gateway
252
292
  test_files:
293
+ - spec/integration/README.md
294
+ - spec/integration/edge_gateway/configure_firewall_spec.rb
295
+ - spec/integration/edge_gateway/configure_load_balancer_spec.rb
296
+ - spec/integration/edge_gateway/configure_nat_spec.rb
297
+ - spec/integration/edge_gateway/configure_services_spec.rb
253
298
  - spec/integration/edge_gateway/data/firewall_config.yaml.mustache
254
299
  - spec/integration/edge_gateway/data/firewall_config_updated_rule.yaml.mustache
255
300
  - spec/integration/edge_gateway/data/firewall_rule_order_test.yaml.mustache
@@ -263,12 +308,10 @@ test_files:
263
308
  - spec/integration/edge_gateway/data/nat_and_firewall_config.yaml.mustache
264
309
  - spec/integration/edge_gateway/data/nat_and_firewall_plus_load_balancer_config.yaml.mustache
265
310
  - spec/integration/edge_gateway/data/nat_config.yaml.mustache
266
- - spec/integration/edge_gateway/edge_gateway_services_spec.rb
267
- - spec/integration/edge_gateway/firewall_service_spec.rb
268
- - spec/integration/edge_gateway/load_balancer_service_spec.rb
269
- - spec/integration/edge_gateway/nat_service_spec.rb
311
+ - spec/integration/vcloud_tools_testing_config.yaml.template
270
312
  - spec/spec_helper.rb
271
313
  - spec/support/integration_helper.rb
314
+ - spec/vcloud/edge_gateway/cli_spec.rb
272
315
  - spec/vcloud/edge_gateway/configuration_differ_shared_examples.rb
273
316
  - spec/vcloud/edge_gateway/configuration_differ_spec.rb
274
317
  - spec/vcloud/edge_gateway/configuration_generator/data/load_balancer_http-input.yaml
@@ -283,6 +326,7 @@ test_files:
283
326
  - spec/vcloud/edge_gateway/configuration_generator/firewall_service_spec.rb
284
327
  - spec/vcloud/edge_gateway/configuration_generator/load_balancer_service_spec.rb
285
328
  - spec/vcloud/edge_gateway/configuration_generator/nat_service_spec.rb
329
+ - spec/vcloud/edge_gateway/configure_spec.rb
286
330
  - spec/vcloud/edge_gateway/edge_gateway_configuration_spec.rb
287
331
  - spec/vcloud/edge_gateway/firewall_configuration_differ_spec.rb
288
332
  - spec/vcloud/edge_gateway/firewall_schema_validation_spec.rb