ops_manager_ui_drivers 1.0.0 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/ops_manager_ui_drivers/version.rb +1 -1
- data/lib/ops_manager_ui_drivers/version15/ops_manager_director.rb +19 -21
- data/lib/ops_manager_ui_drivers/version15/sections/advanced_infrastructure_config.rb +18 -0
- data/lib/ops_manager_ui_drivers/version15/sections/availability_zones.rb +29 -0
- data/lib/ops_manager_ui_drivers/version15/sections/iaas_configuration.rb +17 -0
- data/lib/ops_manager_ui_drivers/version15/sections/microbosh_form_section.rb +39 -0
- data/lib/ops_manager_ui_drivers/version15/sections/networks.rb +51 -0
- data/lib/ops_manager_ui_drivers/version15/settings.rb +20 -4
- data/lib/ops_manager_ui_drivers/version16/ops_manager_director.rb +19 -21
- data/lib/ops_manager_ui_drivers/version16/sections/advanced_infrastructure_config.rb +18 -0
- data/lib/ops_manager_ui_drivers/version16/sections/availability_zones.rb +29 -0
- data/lib/ops_manager_ui_drivers/version16/sections/iaas_configuration.rb +17 -0
- data/lib/ops_manager_ui_drivers/version16/sections/microbosh_form_section.rb +39 -0
- data/lib/ops_manager_ui_drivers/version16/sections/networks.rb +51 -0
- data/lib/ops_manager_ui_drivers/version16/settings.rb +20 -4
- metadata +12 -8
- data/lib/ops_manager_ui_drivers/version15/availability_zones.rb +0 -54
- data/lib/ops_manager_ui_drivers/version15/iaas_configuration.rb +0 -28
- data/lib/ops_manager_ui_drivers/version15/networks.rb +0 -55
- data/lib/ops_manager_ui_drivers/version16/availability_zones.rb +0 -54
- data/lib/ops_manager_ui_drivers/version16/iaas_configuration.rb +0 -28
- data/lib/ops_manager_ui_drivers/version16/networks.rb +0 -55
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a2adace82508594ca66b825dcf12f2d24ed869b2
|
4
|
+
data.tar.gz: eaa72f99892cf8920b5834de16824a787ca9acdc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 11379c79012607f75fa406cc10e4497af8fbfa82d2b9786f15059452c2cdfad7864bab239ac494be989210e77e0861e09ee9bfca3e0ab814e0bfb91a780d986d
|
7
|
+
data.tar.gz: 481e62fde74bb1fd12aba3f57497e757da83267c0cef96b8f1d0796073e5b1202ed1a16beec434d52453a6ac5ca7ba32ac84b4b59dc1df2a1d6d424fa475712a
|
@@ -1,7 +1,7 @@
|
|
1
1
|
module OpsManagerUiDrivers
|
2
2
|
module Version15
|
3
3
|
class OpsManagerDirector
|
4
|
-
def initialize(browser:, iaas_configuration: Version15::IaasConfiguration.new(browser: browser))
|
4
|
+
def initialize(browser:, iaas_configuration: Version15::Sections::IaasConfiguration.new(browser: browser))
|
5
5
|
@browser = browser
|
6
6
|
@iaas_configuration = iaas_configuration
|
7
7
|
end
|
@@ -23,12 +23,11 @@ module OpsManagerUiDrivers
|
|
23
23
|
end
|
24
24
|
|
25
25
|
def configure_iaas(test_settings)
|
26
|
-
iaas_configuration.open_form
|
27
26
|
iaas_settings = Settings.for(test_settings)
|
28
|
-
iaas_settings.
|
29
|
-
|
30
|
-
|
31
|
-
|
27
|
+
iaas_specific_fields = iaas_settings.iaas_configuration_fields
|
28
|
+
advanced_infrastructure_config_fields = iaas_settings.advanced_infrastructure_config_fields
|
29
|
+
iaas_configuration.fill_iaas_settings(iaas_specific_fields)
|
30
|
+
advanced_infrastructure_config.fill_advanced_infrastructure_config_settings(advanced_infrastructure_config_fields)
|
32
31
|
end
|
33
32
|
|
34
33
|
def add_availability_zones(iaas_type, iaas_availability_zones)
|
@@ -49,20 +48,15 @@ module OpsManagerUiDrivers
|
|
49
48
|
case test_settings.iaas_type
|
50
49
|
when OpsManagerUiDrivers::AWS_IAAS_TYPE, OpsManagerUiDrivers::OPENSTACK_IAAS_TYPE
|
51
50
|
first_network = iaas_networks.first
|
52
|
-
browser.click_on 'show-network-action'
|
53
|
-
browser.fill_in 'network[networks][][name]', with: first_network['name']
|
54
|
-
browser.fill_in 'network[networks][][iaas_network_identifier]', with: first_network['identifier']
|
55
|
-
browser.fill_in 'network[networks][][subnet]', with: first_network['subnet']
|
56
|
-
browser.fill_in 'network[networks][][reserved_ip_ranges]', with: first_network['reserved_ips']
|
57
|
-
browser.fill_in 'network[networks][][dns]', with: first_network['dns']
|
58
|
-
browser.fill_in 'network[networks][][gateway]', with: first_network['gateway']
|
59
|
-
browser.click_on 'Save'
|
60
|
-
flash_errors = browser.all('.flash-message.error ul.message li').to_a
|
61
|
-
flash_errors.reject! { |node| node.text =~ /cannot reach gateway/i }
|
62
51
|
|
63
|
-
|
64
|
-
|
65
|
-
|
52
|
+
networks.add_single_network(
|
53
|
+
name: first_network['name'],
|
54
|
+
iaas_network_identifier: first_network['identifier'],
|
55
|
+
subnet: first_network['subnet'],
|
56
|
+
reserved_ip_ranges: first_network['reserved_ips'],
|
57
|
+
dns: first_network['dns'],
|
58
|
+
gateway: first_network['gateway'],
|
59
|
+
)
|
66
60
|
else
|
67
61
|
iaas_networks && iaas_networks.each do |network|
|
68
62
|
networks.add_network(
|
@@ -179,11 +173,15 @@ module OpsManagerUiDrivers
|
|
179
173
|
|
180
174
|
|
181
175
|
def availability_zones
|
182
|
-
@availability_zones ||= Version15::AvailabilityZones.new(browser: browser)
|
176
|
+
@availability_zones ||= Version15::Sections::AvailabilityZones.new(browser: browser)
|
183
177
|
end
|
184
178
|
|
185
179
|
def networks
|
186
|
-
@networks ||= Version15::Networks.new(browser: browser)
|
180
|
+
@networks ||= Version15::Sections::Networks.new(browser: browser)
|
181
|
+
end
|
182
|
+
|
183
|
+
def advanced_infrastructure_config
|
184
|
+
@advanced_infrastructure_config ||= Version15::Sections::AdvancedInfrastructureConfig.new(browser: browser)
|
187
185
|
end
|
188
186
|
end
|
189
187
|
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version15
|
3
|
+
module Sections
|
4
|
+
class AdvancedInfrastructureConfig
|
5
|
+
def initialize(browser:)
|
6
|
+
@microbosh_form_section = MicroboshFormSection.new(browser, 'advanced_infrastructure_config')
|
7
|
+
end
|
8
|
+
|
9
|
+
def fill_advanced_infrastructure_config_settings(fields)
|
10
|
+
return if fields.empty?
|
11
|
+
@microbosh_form_section.open_form('advanced_infrastructure_config')
|
12
|
+
@microbosh_form_section.set_fields(fields)
|
13
|
+
@microbosh_form_section.save_form
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version15
|
3
|
+
module Sections
|
4
|
+
class AvailabilityZones
|
5
|
+
def initialize(browser:)
|
6
|
+
@browser = browser
|
7
|
+
@microbosh_form_section = MicroboshFormSection.new(browser, 'availability_zones[availability_zones][]')
|
8
|
+
end
|
9
|
+
|
10
|
+
def add_single_az(iaas_identifier)
|
11
|
+
@microbosh_form_section.open_form('availability_zones')
|
12
|
+
@microbosh_form_section.set_fields('iaas_identifier' => iaas_identifier)
|
13
|
+
@microbosh_form_section.save_form
|
14
|
+
end
|
15
|
+
|
16
|
+
def add_az(fields)
|
17
|
+
@microbosh_form_section.open_form('availability_zones')
|
18
|
+
browser.click_on 'Add'
|
19
|
+
@microbosh_form_section.set_fields(fields)
|
20
|
+
@microbosh_form_section.save_form
|
21
|
+
end
|
22
|
+
|
23
|
+
private
|
24
|
+
|
25
|
+
attr_reader :browser
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version15
|
3
|
+
module Sections
|
4
|
+
class IaasConfiguration
|
5
|
+
def initialize(browser:)
|
6
|
+
@microbosh_form_section = MicroboshFormSection.new(browser, 'iaas_configuration')
|
7
|
+
end
|
8
|
+
|
9
|
+
def fill_iaas_settings(fields)
|
10
|
+
@microbosh_form_section.open_form('iaas_configuration')
|
11
|
+
@microbosh_form_section.set_fields(fields)
|
12
|
+
@microbosh_form_section.save_form
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version15
|
3
|
+
module Sections
|
4
|
+
class MicroboshFormSection
|
5
|
+
def initialize(browser, field_prefix)
|
6
|
+
@browser = browser
|
7
|
+
@field_prefix = field_prefix
|
8
|
+
end
|
9
|
+
|
10
|
+
def open_form(form_name)
|
11
|
+
@browser.visit '/'
|
12
|
+
@browser.click_on 'show-microbosh-configure-action'
|
13
|
+
@browser.click_on "show-#{form_name}-action"
|
14
|
+
end
|
15
|
+
|
16
|
+
def save_form
|
17
|
+
@browser.click_on 'Save'
|
18
|
+
@browser.expect(@browser.page).to @browser.have_css('.flash-message.success')
|
19
|
+
end
|
20
|
+
|
21
|
+
def set_fields(fields)
|
22
|
+
fields.each do |field, value|
|
23
|
+
set_field(field, value)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
|
29
|
+
def set_field(field, value)
|
30
|
+
last_field(field).set(value)
|
31
|
+
end
|
32
|
+
|
33
|
+
def last_field(field)
|
34
|
+
@browser.all(:field, "#{@field_prefix}[#{field}]").last
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version15
|
3
|
+
module Sections
|
4
|
+
class Networks
|
5
|
+
def initialize(browser:)
|
6
|
+
@browser = browser
|
7
|
+
@microbosh_form_section = MicroboshFormSection.new(browser, 'network[networks][]')
|
8
|
+
end
|
9
|
+
|
10
|
+
def add_single_network(name:, iaas_network_identifier:, subnet:, dns:, gateway:, reserved_ip_ranges:)
|
11
|
+
@microbosh_form_section.open_form('network')
|
12
|
+
|
13
|
+
@microbosh_form_section.set_fields(
|
14
|
+
'name' => name,
|
15
|
+
'iaas_network_identifier' => iaas_network_identifier,
|
16
|
+
'subnet' => subnet,
|
17
|
+
'dns' => dns,
|
18
|
+
'gateway' => gateway,
|
19
|
+
'reserved_ip_ranges' => reserved_ip_ranges,
|
20
|
+
)
|
21
|
+
browser.click_on 'Save'
|
22
|
+
flash_errors = browser.all('.flash-message.error ul.message li').to_a
|
23
|
+
flash_errors.reject! { |node| node.text =~ /cannot reach gateway/i }
|
24
|
+
|
25
|
+
if (flash_errors.length > 0)
|
26
|
+
fail flash_errors.collect(&:text).inspect
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def add_network(name:, iaas_network_identifier:, subnet:, dns:, gateway:, reserved_ip_ranges:)
|
31
|
+
@microbosh_form_section.open_form('network')
|
32
|
+
|
33
|
+
browser.click_on 'Add'
|
34
|
+
@microbosh_form_section.set_fields(
|
35
|
+
'name' => name,
|
36
|
+
'iaas_network_identifier' => iaas_network_identifier,
|
37
|
+
'subnet' => subnet,
|
38
|
+
'dns' => dns,
|
39
|
+
'gateway' => gateway,
|
40
|
+
'reserved_ip_ranges' => reserved_ip_ranges,
|
41
|
+
)
|
42
|
+
@microbosh_form_section.save_form
|
43
|
+
end
|
44
|
+
|
45
|
+
private
|
46
|
+
|
47
|
+
attr_reader :browser
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -17,7 +17,7 @@ module OpsManagerUiDrivers
|
|
17
17
|
@test_settings = test_settings
|
18
18
|
end
|
19
19
|
|
20
|
-
def
|
20
|
+
def iaas_configuration_fields
|
21
21
|
{
|
22
22
|
'vcd_url' => test_settings.ops_manager.vcloud.creds.url,
|
23
23
|
'organization' => test_settings.ops_manager.vcloud.creds.organization,
|
@@ -29,6 +29,10 @@ module OpsManagerUiDrivers
|
|
29
29
|
}
|
30
30
|
end
|
31
31
|
|
32
|
+
def advanced_infrastructure_config_fields
|
33
|
+
{ }
|
34
|
+
end
|
35
|
+
|
32
36
|
private
|
33
37
|
|
34
38
|
attr_reader :test_settings
|
@@ -43,7 +47,7 @@ module OpsManagerUiDrivers
|
|
43
47
|
@test_settings = test_settings
|
44
48
|
end
|
45
49
|
|
46
|
-
def
|
50
|
+
def iaas_configuration_fields
|
47
51
|
{
|
48
52
|
'vcenter_ip' => test_settings.ops_manager.vcenter.creds.ip,
|
49
53
|
'vcenter_username' => test_settings.ops_manager.vcenter.creds.username,
|
@@ -56,6 +60,10 @@ module OpsManagerUiDrivers
|
|
56
60
|
}
|
57
61
|
end
|
58
62
|
|
63
|
+
def advanced_infrastructure_config_fields
|
64
|
+
{ }
|
65
|
+
end
|
66
|
+
|
59
67
|
private
|
60
68
|
|
61
69
|
attr_reader :test_settings
|
@@ -70,7 +78,7 @@ module OpsManagerUiDrivers
|
|
70
78
|
@test_settings = test_settings
|
71
79
|
end
|
72
80
|
|
73
|
-
def
|
81
|
+
def iaas_configuration_fields
|
74
82
|
{
|
75
83
|
'access_key_id' => test_settings.ops_manager.aws.aws_access_key,
|
76
84
|
'secret_access_key' => test_settings.ops_manager.aws.aws_secret_key,
|
@@ -82,6 +90,10 @@ module OpsManagerUiDrivers
|
|
82
90
|
}
|
83
91
|
end
|
84
92
|
|
93
|
+
def advanced_infrastructure_config_fields
|
94
|
+
{ }
|
95
|
+
end
|
96
|
+
|
85
97
|
private
|
86
98
|
|
87
99
|
attr_reader :test_settings
|
@@ -96,7 +108,7 @@ module OpsManagerUiDrivers
|
|
96
108
|
@test_settings = test_settings
|
97
109
|
end
|
98
110
|
|
99
|
-
def
|
111
|
+
def iaas_configuration_fields
|
100
112
|
{
|
101
113
|
'identity_endpoint' => test_settings.ops_manager.openstack.identity_endpoint,
|
102
114
|
'username' => test_settings.ops_manager.openstack.username,
|
@@ -110,6 +122,10 @@ module OpsManagerUiDrivers
|
|
110
122
|
}
|
111
123
|
end
|
112
124
|
|
125
|
+
def advanced_infrastructure_config_fields
|
126
|
+
{ 'connection_options' => test_settings.ops_manager.openstack.connection_options }
|
127
|
+
end
|
128
|
+
|
113
129
|
private
|
114
130
|
|
115
131
|
attr_reader :test_settings
|
@@ -1,7 +1,7 @@
|
|
1
1
|
module OpsManagerUiDrivers
|
2
2
|
module Version16
|
3
3
|
class OpsManagerDirector
|
4
|
-
def initialize(browser:, iaas_configuration: Version16::IaasConfiguration.new(browser: browser))
|
4
|
+
def initialize(browser:, iaas_configuration: Version16::Sections::IaasConfiguration.new(browser: browser))
|
5
5
|
@browser = browser
|
6
6
|
@iaas_configuration = iaas_configuration
|
7
7
|
end
|
@@ -23,12 +23,11 @@ module OpsManagerUiDrivers
|
|
23
23
|
end
|
24
24
|
|
25
25
|
def configure_iaas(test_settings)
|
26
|
-
iaas_configuration.open_form
|
27
26
|
iaas_settings = Settings.for(test_settings)
|
28
|
-
iaas_settings.
|
29
|
-
|
30
|
-
|
31
|
-
|
27
|
+
iaas_specific_fields = iaas_settings.iaas_configuration_fields
|
28
|
+
advanced_infrastructure_config_fields = iaas_settings.advanced_infrastructure_config_fields
|
29
|
+
iaas_configuration.fill_iaas_settings(iaas_specific_fields)
|
30
|
+
advanced_infrastructure_config.fill_advanced_infrastructure_config_settings(advanced_infrastructure_config_fields)
|
32
31
|
end
|
33
32
|
|
34
33
|
def add_availability_zones(iaas_type, iaas_availability_zones)
|
@@ -49,20 +48,15 @@ module OpsManagerUiDrivers
|
|
49
48
|
case test_settings.iaas_type
|
50
49
|
when OpsManagerUiDrivers::AWS_IAAS_TYPE, OpsManagerUiDrivers::OPENSTACK_IAAS_TYPE
|
51
50
|
first_network = iaas_networks.first
|
52
|
-
browser.click_on 'show-network-action'
|
53
|
-
browser.fill_in 'network[networks][][name]', with: first_network['name']
|
54
|
-
browser.fill_in 'network[networks][][iaas_network_identifier]', with: first_network['identifier']
|
55
|
-
browser.fill_in 'network[networks][][subnet]', with: first_network['subnet']
|
56
|
-
browser.fill_in 'network[networks][][reserved_ip_ranges]', with: first_network['reserved_ips']
|
57
|
-
browser.fill_in 'network[networks][][dns]', with: first_network['dns']
|
58
|
-
browser.fill_in 'network[networks][][gateway]', with: first_network['gateway']
|
59
|
-
browser.click_on 'Save'
|
60
|
-
flash_errors = browser.all('.flash-message.error ul.message li').to_a
|
61
|
-
flash_errors.reject! { |node| node.text =~ /cannot reach gateway/i }
|
62
51
|
|
63
|
-
|
64
|
-
|
65
|
-
|
52
|
+
networks.add_single_network(
|
53
|
+
name: first_network['name'],
|
54
|
+
iaas_network_identifier: first_network['identifier'],
|
55
|
+
subnet: first_network['subnet'],
|
56
|
+
reserved_ip_ranges: first_network['reserved_ips'],
|
57
|
+
dns: first_network['dns'],
|
58
|
+
gateway: first_network['gateway'],
|
59
|
+
)
|
66
60
|
else
|
67
61
|
iaas_networks && iaas_networks.each do |network|
|
68
62
|
networks.add_network(
|
@@ -179,11 +173,15 @@ module OpsManagerUiDrivers
|
|
179
173
|
|
180
174
|
|
181
175
|
def availability_zones
|
182
|
-
@availability_zones ||= Version16::AvailabilityZones.new(browser: browser)
|
176
|
+
@availability_zones ||= Version16::Sections::AvailabilityZones.new(browser: browser)
|
183
177
|
end
|
184
178
|
|
185
179
|
def networks
|
186
|
-
@networks ||= Version16::Networks.new(browser: browser)
|
180
|
+
@networks ||= Version16::Sections::Networks.new(browser: browser)
|
181
|
+
end
|
182
|
+
|
183
|
+
def advanced_infrastructure_config
|
184
|
+
@advanced_infrastructure_config ||= Version16::Sections::AdvancedInfrastructureConfig.new(browser: browser)
|
187
185
|
end
|
188
186
|
end
|
189
187
|
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version16
|
3
|
+
module Sections
|
4
|
+
class AdvancedInfrastructureConfig
|
5
|
+
def initialize(browser:)
|
6
|
+
@microbosh_form_section = MicroboshFormSection.new(browser, 'advanced_infrastructure_config')
|
7
|
+
end
|
8
|
+
|
9
|
+
def fill_advanced_infrastructure_config_settings(fields)
|
10
|
+
return if fields.empty?
|
11
|
+
@microbosh_form_section.open_form('advanced_infrastructure_config')
|
12
|
+
@microbosh_form_section.set_fields(fields)
|
13
|
+
@microbosh_form_section.save_form
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version16
|
3
|
+
module Sections
|
4
|
+
class AvailabilityZones
|
5
|
+
def initialize(browser:)
|
6
|
+
@browser = browser
|
7
|
+
@microbosh_form_section = MicroboshFormSection.new(browser, 'availability_zones[availability_zones][]')
|
8
|
+
end
|
9
|
+
|
10
|
+
def add_single_az(iaas_identifier)
|
11
|
+
@microbosh_form_section.open_form('availability_zones')
|
12
|
+
@microbosh_form_section.set_fields('iaas_identifier' => iaas_identifier)
|
13
|
+
@microbosh_form_section.save_form
|
14
|
+
end
|
15
|
+
|
16
|
+
def add_az(fields)
|
17
|
+
@microbosh_form_section.open_form('availability_zones')
|
18
|
+
browser.click_on 'Add'
|
19
|
+
@microbosh_form_section.set_fields(fields)
|
20
|
+
@microbosh_form_section.save_form
|
21
|
+
end
|
22
|
+
|
23
|
+
private
|
24
|
+
|
25
|
+
attr_reader :browser
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version16
|
3
|
+
module Sections
|
4
|
+
class IaasConfiguration
|
5
|
+
def initialize(browser:)
|
6
|
+
@microbosh_form_section = MicroboshFormSection.new(browser, 'iaas_configuration')
|
7
|
+
end
|
8
|
+
|
9
|
+
def fill_iaas_settings(fields)
|
10
|
+
@microbosh_form_section.open_form('iaas_configuration')
|
11
|
+
@microbosh_form_section.set_fields(fields)
|
12
|
+
@microbosh_form_section.save_form
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version16
|
3
|
+
module Sections
|
4
|
+
class MicroboshFormSection
|
5
|
+
def initialize(browser, field_prefix)
|
6
|
+
@browser = browser
|
7
|
+
@field_prefix = field_prefix
|
8
|
+
end
|
9
|
+
|
10
|
+
def open_form(form_name)
|
11
|
+
@browser.visit '/'
|
12
|
+
@browser.click_on 'show-microbosh-configure-action'
|
13
|
+
@browser.click_on "show-#{form_name}-action"
|
14
|
+
end
|
15
|
+
|
16
|
+
def save_form
|
17
|
+
@browser.click_on 'Save'
|
18
|
+
@browser.expect(@browser.page).to @browser.have_css('.flash-message.success')
|
19
|
+
end
|
20
|
+
|
21
|
+
def set_fields(fields)
|
22
|
+
fields.each do |field, value|
|
23
|
+
set_field(field, value)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
private
|
28
|
+
|
29
|
+
def set_field(field, value)
|
30
|
+
last_field(field).set(value)
|
31
|
+
end
|
32
|
+
|
33
|
+
def last_field(field)
|
34
|
+
@browser.all(:field, "#{@field_prefix}[#{field}]").last
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
@@ -0,0 +1,51 @@
|
|
1
|
+
module OpsManagerUiDrivers
|
2
|
+
module Version16
|
3
|
+
module Sections
|
4
|
+
class Networks
|
5
|
+
def initialize(browser:)
|
6
|
+
@browser = browser
|
7
|
+
@microbosh_form_section = MicroboshFormSection.new(browser, 'network[networks][]')
|
8
|
+
end
|
9
|
+
|
10
|
+
def add_single_network(name:, iaas_network_identifier:, subnet:, dns:, gateway:, reserved_ip_ranges:)
|
11
|
+
@microbosh_form_section.open_form('network')
|
12
|
+
|
13
|
+
@microbosh_form_section.set_fields(
|
14
|
+
'name' => name,
|
15
|
+
'iaas_network_identifier' => iaas_network_identifier,
|
16
|
+
'subnet' => subnet,
|
17
|
+
'dns' => dns,
|
18
|
+
'gateway' => gateway,
|
19
|
+
'reserved_ip_ranges' => reserved_ip_ranges,
|
20
|
+
)
|
21
|
+
browser.click_on 'Save'
|
22
|
+
flash_errors = browser.all('.flash-message.error ul.message li').to_a
|
23
|
+
flash_errors.reject! { |node| node.text =~ /cannot reach gateway/i }
|
24
|
+
|
25
|
+
if (flash_errors.length > 0)
|
26
|
+
fail flash_errors.collect(&:text).inspect
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
def add_network(name:, iaas_network_identifier:, subnet:, dns:, gateway:, reserved_ip_ranges:)
|
31
|
+
@microbosh_form_section.open_form('network')
|
32
|
+
|
33
|
+
browser.click_on 'Add'
|
34
|
+
@microbosh_form_section.set_fields(
|
35
|
+
'name' => name,
|
36
|
+
'iaas_network_identifier' => iaas_network_identifier,
|
37
|
+
'subnet' => subnet,
|
38
|
+
'dns' => dns,
|
39
|
+
'gateway' => gateway,
|
40
|
+
'reserved_ip_ranges' => reserved_ip_ranges,
|
41
|
+
)
|
42
|
+
@microbosh_form_section.save_form
|
43
|
+
end
|
44
|
+
|
45
|
+
private
|
46
|
+
|
47
|
+
attr_reader :browser
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
@@ -17,7 +17,7 @@ module OpsManagerUiDrivers
|
|
17
17
|
@test_settings = test_settings
|
18
18
|
end
|
19
19
|
|
20
|
-
def
|
20
|
+
def iaas_configuration_fields
|
21
21
|
{
|
22
22
|
'vcd_url' => test_settings.ops_manager.vcloud.creds.url,
|
23
23
|
'organization' => test_settings.ops_manager.vcloud.creds.organization,
|
@@ -29,6 +29,10 @@ module OpsManagerUiDrivers
|
|
29
29
|
}
|
30
30
|
end
|
31
31
|
|
32
|
+
def advanced_infrastructure_config_fields
|
33
|
+
{ }
|
34
|
+
end
|
35
|
+
|
32
36
|
private
|
33
37
|
|
34
38
|
attr_reader :test_settings
|
@@ -43,7 +47,7 @@ module OpsManagerUiDrivers
|
|
43
47
|
@test_settings = test_settings
|
44
48
|
end
|
45
49
|
|
46
|
-
def
|
50
|
+
def iaas_configuration_fields
|
47
51
|
{
|
48
52
|
'vcenter_ip' => test_settings.ops_manager.vcenter.creds.ip,
|
49
53
|
'vcenter_username' => test_settings.ops_manager.vcenter.creds.username,
|
@@ -56,6 +60,10 @@ module OpsManagerUiDrivers
|
|
56
60
|
}
|
57
61
|
end
|
58
62
|
|
63
|
+
def advanced_infrastructure_config_fields
|
64
|
+
{ }
|
65
|
+
end
|
66
|
+
|
59
67
|
private
|
60
68
|
|
61
69
|
attr_reader :test_settings
|
@@ -70,7 +78,7 @@ module OpsManagerUiDrivers
|
|
70
78
|
@test_settings = test_settings
|
71
79
|
end
|
72
80
|
|
73
|
-
def
|
81
|
+
def iaas_configuration_fields
|
74
82
|
{
|
75
83
|
'access_key_id' => test_settings.ops_manager.aws.aws_access_key,
|
76
84
|
'secret_access_key' => test_settings.ops_manager.aws.aws_secret_key,
|
@@ -82,6 +90,10 @@ module OpsManagerUiDrivers
|
|
82
90
|
}
|
83
91
|
end
|
84
92
|
|
93
|
+
def advanced_infrastructure_config_fields
|
94
|
+
{ }
|
95
|
+
end
|
96
|
+
|
85
97
|
private
|
86
98
|
|
87
99
|
attr_reader :test_settings
|
@@ -96,7 +108,7 @@ module OpsManagerUiDrivers
|
|
96
108
|
@test_settings = test_settings
|
97
109
|
end
|
98
110
|
|
99
|
-
def
|
111
|
+
def iaas_configuration_fields
|
100
112
|
{
|
101
113
|
'identity_endpoint' => test_settings.ops_manager.openstack.identity_endpoint,
|
102
114
|
'username' => test_settings.ops_manager.openstack.username,
|
@@ -110,6 +122,10 @@ module OpsManagerUiDrivers
|
|
110
122
|
}
|
111
123
|
end
|
112
124
|
|
125
|
+
def advanced_infrastructure_config_fields
|
126
|
+
{ 'connection_options' => test_settings.ops_manager.openstack.connection_options }
|
127
|
+
end
|
128
|
+
|
113
129
|
private
|
114
130
|
|
115
131
|
attr_reader :test_settings
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ops_manager_ui_drivers
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pivotal, Inc.
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-08-
|
11
|
+
date: 2015-08-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: capybara
|
@@ -176,13 +176,10 @@ files:
|
|
176
176
|
- lib/ops_manager_ui_drivers/version14/state_change_progress.rb
|
177
177
|
- lib/ops_manager_ui_drivers/version14/web_ui.rb
|
178
178
|
- lib/ops_manager_ui_drivers/version15/api_1_5.rb
|
179
|
-
- lib/ops_manager_ui_drivers/version15/availability_zones.rb
|
180
179
|
- lib/ops_manager_ui_drivers/version15/available_products.rb
|
181
|
-
- lib/ops_manager_ui_drivers/version15/iaas_configuration.rb
|
182
180
|
- lib/ops_manager_ui_drivers/version15/job_availability_zone_mapping_helper.rb
|
183
181
|
- lib/ops_manager_ui_drivers/version15/job_network_mapping_helper.rb
|
184
182
|
- lib/ops_manager_ui_drivers/version15/job_status_helper.rb
|
185
|
-
- lib/ops_manager_ui_drivers/version15/networks.rb
|
186
183
|
- lib/ops_manager_ui_drivers/version15/ops_manager_director.rb
|
187
184
|
- lib/ops_manager_ui_drivers/version15/product_availability_zones.rb
|
188
185
|
- lib/ops_manager_ui_drivers/version15/product_configuration.rb
|
@@ -191,17 +188,19 @@ files:
|
|
191
188
|
- lib/ops_manager_ui_drivers/version15/product_logs.rb
|
192
189
|
- lib/ops_manager_ui_drivers/version15/product_resource_configuration.rb
|
193
190
|
- lib/ops_manager_ui_drivers/version15/product_status_helper.rb
|
191
|
+
- lib/ops_manager_ui_drivers/version15/sections/advanced_infrastructure_config.rb
|
192
|
+
- lib/ops_manager_ui_drivers/version15/sections/availability_zones.rb
|
193
|
+
- lib/ops_manager_ui_drivers/version15/sections/iaas_configuration.rb
|
194
|
+
- lib/ops_manager_ui_drivers/version15/sections/microbosh_form_section.rb
|
195
|
+
- lib/ops_manager_ui_drivers/version15/sections/networks.rb
|
194
196
|
- lib/ops_manager_ui_drivers/version15/settings.rb
|
195
197
|
- lib/ops_manager_ui_drivers/version15/setup.rb
|
196
198
|
- lib/ops_manager_ui_drivers/version15/state_change_progress.rb
|
197
199
|
- lib/ops_manager_ui_drivers/version15/web_ui.rb
|
198
|
-
- lib/ops_manager_ui_drivers/version16/availability_zones.rb
|
199
200
|
- lib/ops_manager_ui_drivers/version16/available_products.rb
|
200
|
-
- lib/ops_manager_ui_drivers/version16/iaas_configuration.rb
|
201
201
|
- lib/ops_manager_ui_drivers/version16/job_availability_zone_mapping_helper.rb
|
202
202
|
- lib/ops_manager_ui_drivers/version16/job_network_mapping_helper.rb
|
203
203
|
- lib/ops_manager_ui_drivers/version16/job_status_helper.rb
|
204
|
-
- lib/ops_manager_ui_drivers/version16/networks.rb
|
205
204
|
- lib/ops_manager_ui_drivers/version16/ops_manager_director.rb
|
206
205
|
- lib/ops_manager_ui_drivers/version16/product_availability_zones.rb
|
207
206
|
- lib/ops_manager_ui_drivers/version16/product_configuration.rb
|
@@ -210,6 +209,11 @@ files:
|
|
210
209
|
- lib/ops_manager_ui_drivers/version16/product_logs.rb
|
211
210
|
- lib/ops_manager_ui_drivers/version16/product_resource_configuration.rb
|
212
211
|
- lib/ops_manager_ui_drivers/version16/product_status_helper.rb
|
212
|
+
- lib/ops_manager_ui_drivers/version16/sections/advanced_infrastructure_config.rb
|
213
|
+
- lib/ops_manager_ui_drivers/version16/sections/availability_zones.rb
|
214
|
+
- lib/ops_manager_ui_drivers/version16/sections/iaas_configuration.rb
|
215
|
+
- lib/ops_manager_ui_drivers/version16/sections/microbosh_form_section.rb
|
216
|
+
- lib/ops_manager_ui_drivers/version16/sections/networks.rb
|
213
217
|
- lib/ops_manager_ui_drivers/version16/settings.rb
|
214
218
|
- lib/ops_manager_ui_drivers/version16/setup.rb
|
215
219
|
- lib/ops_manager_ui_drivers/version16/state_change_progress.rb
|
@@ -1,54 +0,0 @@
|
|
1
|
-
module OpsManagerUiDrivers
|
2
|
-
module Version15
|
3
|
-
class AvailabilityZones
|
4
|
-
def initialize(browser:)
|
5
|
-
@browser = browser
|
6
|
-
end
|
7
|
-
|
8
|
-
def add_single_az(iaas_identifier)
|
9
|
-
open_form('availability_zones')
|
10
|
-
|
11
|
-
set_fields(fields: {'iaas_identifier' => iaas_identifier})
|
12
|
-
|
13
|
-
save_form
|
14
|
-
end
|
15
|
-
|
16
|
-
def add_az(fields)
|
17
|
-
open_form('availability_zones')
|
18
|
-
|
19
|
-
browser.click_on 'Add'
|
20
|
-
set_fields(fields: fields)
|
21
|
-
save_form
|
22
|
-
end
|
23
|
-
|
24
|
-
private
|
25
|
-
|
26
|
-
attr_reader :browser
|
27
|
-
|
28
|
-
def save_form
|
29
|
-
browser.click_on 'Save'
|
30
|
-
browser.expect(browser.page).to browser.have_css('.flash-message.success')
|
31
|
-
end
|
32
|
-
|
33
|
-
def open_form(form)
|
34
|
-
browser.visit '/'
|
35
|
-
browser.click_on 'show-microbosh-configure-action'
|
36
|
-
browser.click_on "show-#{form}-action"
|
37
|
-
end
|
38
|
-
|
39
|
-
def set_fields(fields:)
|
40
|
-
fields.each do |field, value|
|
41
|
-
set_field(field, value)
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
def set_field(field, value)
|
46
|
-
last_field(field).set(value)
|
47
|
-
end
|
48
|
-
|
49
|
-
def last_field(field)
|
50
|
-
browser.all(:field, "availability_zones[availability_zones][][#{field}]").last
|
51
|
-
end
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
module OpsManagerUiDrivers
|
2
|
-
module Version15
|
3
|
-
class IaasConfiguration
|
4
|
-
def initialize(browser:)
|
5
|
-
@browser = browser
|
6
|
-
end
|
7
|
-
|
8
|
-
def open_form
|
9
|
-
browser.visit '/'
|
10
|
-
browser.click_on 'show-microbosh-configure-action'
|
11
|
-
browser.click_on 'show-iaas_configuration-action'
|
12
|
-
end
|
13
|
-
|
14
|
-
def save_form
|
15
|
-
browser.click_on 'Save'
|
16
|
-
browser.expect(browser.page).to browser.have_css('.flash-message.success')
|
17
|
-
end
|
18
|
-
|
19
|
-
def set_field(field, value)
|
20
|
-
browser.find_field("iaas_configuration[#{field}]").set(value)
|
21
|
-
end
|
22
|
-
|
23
|
-
private
|
24
|
-
|
25
|
-
attr_reader :browser
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,55 +0,0 @@
|
|
1
|
-
module OpsManagerUiDrivers
|
2
|
-
module Version15
|
3
|
-
class Networks
|
4
|
-
def initialize(browser:)
|
5
|
-
@browser = browser
|
6
|
-
end
|
7
|
-
|
8
|
-
def add_network(name:, iaas_network_identifier:, subnet:, dns:, gateway:, reserved_ip_ranges:)
|
9
|
-
open_form('network')
|
10
|
-
|
11
|
-
browser.click_on 'Add'
|
12
|
-
set_fields(
|
13
|
-
fields: {
|
14
|
-
'name' => name,
|
15
|
-
'iaas_network_identifier' => iaas_network_identifier,
|
16
|
-
'subnet' => subnet,
|
17
|
-
'dns' => dns,
|
18
|
-
'gateway' => gateway,
|
19
|
-
'reserved_ip_ranges' => reserved_ip_ranges,
|
20
|
-
}
|
21
|
-
)
|
22
|
-
save_form
|
23
|
-
end
|
24
|
-
|
25
|
-
private
|
26
|
-
|
27
|
-
attr_reader :browser
|
28
|
-
|
29
|
-
def save_form
|
30
|
-
browser.click_on 'Save'
|
31
|
-
browser.expect(browser.page).to browser.have_css('.flash-message.success')
|
32
|
-
end
|
33
|
-
|
34
|
-
def open_form(form)
|
35
|
-
browser.visit '/'
|
36
|
-
browser.click_on 'show-microbosh-configure-action'
|
37
|
-
browser.click_on "show-#{form}-action"
|
38
|
-
end
|
39
|
-
|
40
|
-
def set_fields(fields:)
|
41
|
-
fields.each do |field, value|
|
42
|
-
set_field(field, value)
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
def set_field(field, value)
|
47
|
-
last_field(field).set(value)
|
48
|
-
end
|
49
|
-
|
50
|
-
def last_field(field)
|
51
|
-
browser.all(:field, "network[networks][][#{field}]").last
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
55
|
-
end
|
@@ -1,54 +0,0 @@
|
|
1
|
-
module OpsManagerUiDrivers
|
2
|
-
module Version16
|
3
|
-
class AvailabilityZones
|
4
|
-
def initialize(browser:)
|
5
|
-
@browser = browser
|
6
|
-
end
|
7
|
-
|
8
|
-
def add_single_az(iaas_identifier)
|
9
|
-
open_form('availability_zones')
|
10
|
-
|
11
|
-
set_fields(fields: {'iaas_identifier' => iaas_identifier})
|
12
|
-
|
13
|
-
save_form
|
14
|
-
end
|
15
|
-
|
16
|
-
def add_az(fields)
|
17
|
-
open_form('availability_zones')
|
18
|
-
|
19
|
-
browser.click_on 'Add'
|
20
|
-
set_fields(fields: fields)
|
21
|
-
save_form
|
22
|
-
end
|
23
|
-
|
24
|
-
private
|
25
|
-
|
26
|
-
attr_reader :browser
|
27
|
-
|
28
|
-
def save_form
|
29
|
-
browser.click_on 'Save'
|
30
|
-
browser.expect(browser.page).to browser.have_css('.flash-message.success')
|
31
|
-
end
|
32
|
-
|
33
|
-
def open_form(form)
|
34
|
-
browser.visit '/'
|
35
|
-
browser.click_on 'show-microbosh-configure-action'
|
36
|
-
browser.click_on "show-#{form}-action"
|
37
|
-
end
|
38
|
-
|
39
|
-
def set_fields(fields:)
|
40
|
-
fields.each do |field, value|
|
41
|
-
set_field(field, value)
|
42
|
-
end
|
43
|
-
end
|
44
|
-
|
45
|
-
def set_field(field, value)
|
46
|
-
last_field(field).set(value)
|
47
|
-
end
|
48
|
-
|
49
|
-
def last_field(field)
|
50
|
-
browser.all(:field, "availability_zones[availability_zones][][#{field}]").last
|
51
|
-
end
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
@@ -1,28 +0,0 @@
|
|
1
|
-
module OpsManagerUiDrivers
|
2
|
-
module Version16
|
3
|
-
class IaasConfiguration
|
4
|
-
def initialize(browser:)
|
5
|
-
@browser = browser
|
6
|
-
end
|
7
|
-
|
8
|
-
def open_form
|
9
|
-
browser.visit '/'
|
10
|
-
browser.click_on 'show-microbosh-configure-action'
|
11
|
-
browser.click_on 'show-iaas_configuration-action'
|
12
|
-
end
|
13
|
-
|
14
|
-
def save_form
|
15
|
-
browser.click_on 'Save'
|
16
|
-
browser.expect(browser.page).to browser.have_css('.flash-message.success')
|
17
|
-
end
|
18
|
-
|
19
|
-
def set_field(field, value)
|
20
|
-
browser.find_field("iaas_configuration[#{field}]").set(value)
|
21
|
-
end
|
22
|
-
|
23
|
-
private
|
24
|
-
|
25
|
-
attr_reader :browser
|
26
|
-
end
|
27
|
-
end
|
28
|
-
end
|
@@ -1,55 +0,0 @@
|
|
1
|
-
module OpsManagerUiDrivers
|
2
|
-
module Version16
|
3
|
-
class Networks
|
4
|
-
def initialize(browser:)
|
5
|
-
@browser = browser
|
6
|
-
end
|
7
|
-
|
8
|
-
def add_network(name:, iaas_network_identifier:, subnet:, dns:, gateway:, reserved_ip_ranges:)
|
9
|
-
open_form('network')
|
10
|
-
|
11
|
-
browser.click_on 'Add'
|
12
|
-
set_fields(
|
13
|
-
fields: {
|
14
|
-
'name' => name,
|
15
|
-
'iaas_network_identifier' => iaas_network_identifier,
|
16
|
-
'subnet' => subnet,
|
17
|
-
'dns' => dns,
|
18
|
-
'gateway' => gateway,
|
19
|
-
'reserved_ip_ranges' => reserved_ip_ranges,
|
20
|
-
}
|
21
|
-
)
|
22
|
-
save_form
|
23
|
-
end
|
24
|
-
|
25
|
-
private
|
26
|
-
|
27
|
-
attr_reader :browser
|
28
|
-
|
29
|
-
def save_form
|
30
|
-
browser.click_on 'Save'
|
31
|
-
browser.expect(browser.page).to browser.have_css('.flash-message.success')
|
32
|
-
end
|
33
|
-
|
34
|
-
def open_form(form)
|
35
|
-
browser.visit '/'
|
36
|
-
browser.click_on 'show-microbosh-configure-action'
|
37
|
-
browser.click_on "show-#{form}-action"
|
38
|
-
end
|
39
|
-
|
40
|
-
def set_fields(fields:)
|
41
|
-
fields.each do |field, value|
|
42
|
-
set_field(field, value)
|
43
|
-
end
|
44
|
-
end
|
45
|
-
|
46
|
-
def set_field(field, value)
|
47
|
-
last_field(field).set(value)
|
48
|
-
end
|
49
|
-
|
50
|
-
def last_field(field)
|
51
|
-
browser.all(:field, "network[networks][][#{field}]").last
|
52
|
-
end
|
53
|
-
end
|
54
|
-
end
|
55
|
-
end
|