opsmgr 0.26.1
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.
- checksums.yaml +7 -0
- data/LEGAL.txt +13 -0
- data/README.md +21 -0
- data/lib/opsmgr.rb +12 -0
- data/lib/opsmgr/api/client.rb +85 -0
- data/lib/opsmgr/api/endpoints_factory.rb +39 -0
- data/lib/opsmgr/api/http_client.rb +204 -0
- data/lib/opsmgr/api/results.rb +257 -0
- data/lib/opsmgr/api/version20/endpoints.rb +93 -0
- data/lib/opsmgr/cmd/bosh_command.rb +213 -0
- data/lib/opsmgr/cmd/ops_manager.rb +100 -0
- data/lib/opsmgr/environments.rb +77 -0
- data/lib/opsmgr/errand_runner.rb +75 -0
- data/lib/opsmgr/log.rb +70 -0
- data/lib/opsmgr/product_upload_wrapper.rb +69 -0
- data/lib/opsmgr/renderer.rb +23 -0
- data/lib/opsmgr/renderer/aws.rb +147 -0
- data/lib/opsmgr/renderer/noop.rb +21 -0
- data/lib/opsmgr/settings/microbosh/installation_settings.rb +84 -0
- data/lib/opsmgr/settings/microbosh/job.rb +54 -0
- data/lib/opsmgr/settings/microbosh/job_list.rb +27 -0
- data/lib/opsmgr/settings/microbosh/network.rb +21 -0
- data/lib/opsmgr/settings/microbosh/product.rb +88 -0
- data/lib/opsmgr/settings/microbosh/product_list.rb +27 -0
- data/lib/opsmgr/settings/microbosh/property.rb +31 -0
- data/lib/opsmgr/settings/microbosh/property_list.rb +27 -0
- data/lib/opsmgr/tasks.rb +16 -0
- data/lib/opsmgr/tasks/bosh.rake +70 -0
- data/lib/opsmgr/tasks/destroy.rake +42 -0
- data/lib/opsmgr/tasks/info.rake +19 -0
- data/lib/opsmgr/tasks/opsmgr.rake +179 -0
- data/lib/opsmgr/tasks/product.rake +53 -0
- data/lib/opsmgr/teapot.rb +51 -0
- data/lib/opsmgr/teapot/app.rb +50 -0
- data/lib/opsmgr/teapot/spec_helper.rb +33 -0
- data/lib/opsmgr/ui_helpers/add_first_user_spec.rb +25 -0
- data/lib/opsmgr/ui_helpers/config_helper.rb +151 -0
- data/lib/opsmgr/ui_helpers/delete_installation_spec.rb +41 -0
- data/lib/opsmgr/ui_helpers/delete_product_if_present_spec.rb +43 -0
- data/lib/opsmgr/ui_helpers/delete_product_spec.rb +39 -0
- data/lib/opsmgr/ui_helpers/export_installation_spec.rb +31 -0
- data/lib/opsmgr/ui_helpers/get_latest_install_log_spec.rb +29 -0
- data/lib/opsmgr/ui_helpers/import_installation_spec.rb +29 -0
- data/lib/opsmgr/ui_helpers/import_stemcell_spec.rb +30 -0
- data/lib/opsmgr/ui_helpers/microbosh/configure_microbosh_spec.rb +31 -0
- data/lib/opsmgr/ui_helpers/trigger_install_spec.rb +35 -0
- data/lib/opsmgr/ui_helpers/ui_spec_runner.rb +117 -0
- data/lib/opsmgr/ui_helpers/uncheck_errands_spec.rb +29 -0
- data/lib/opsmgr/ui_helpers/upload_and_add_product_spec.rb +27 -0
- data/lib/opsmgr/ui_helpers/upload_and_upgrade_product_spec.rb +36 -0
- data/lib/opsmgr/version.rb +11 -0
- metadata +360 -0
@@ -0,0 +1,39 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Deleting a product', order: :defined do
|
4
|
+
let!(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let!(:env_settings) { fetch_environment_settings }
|
6
|
+
|
7
|
+
it 'creates the admin user and logs in' do
|
8
|
+
poll_up_to_mins(10) do
|
9
|
+
current_ops_manager.setup_page.setup_or_login(
|
10
|
+
user: env_settings.ops_manager.username,
|
11
|
+
password: env_settings.ops_manager.password,
|
12
|
+
)
|
13
|
+
|
14
|
+
expect(page).to have_content('Installation Dashboard')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'removes the product from the dashboard' do
|
19
|
+
current_ops_manager.product_dashboard.delete_product(product_name)
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'deletes' do
|
23
|
+
current_ops_manager.product_dashboard.apply_updates
|
24
|
+
end
|
25
|
+
|
26
|
+
it 'waits for a successful installation' do
|
27
|
+
poll_up_to_mins(delete_timeout) do
|
28
|
+
expect(current_ops_manager.state_change_progress).to be_state_change_success
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
32
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
33
|
+
# All rights reserved.
|
34
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
35
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
36
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
37
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
38
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
39
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Exporting the installation', order: :defined do
|
4
|
+
let!(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let!(:current_ops_manager_api_driver) { ops_manager_api_driver }
|
6
|
+
let!(:env_settings) { fetch_environment_settings }
|
7
|
+
|
8
|
+
it 'creates the admin user and logs in' do
|
9
|
+
poll_up_to_mins(10) do
|
10
|
+
current_ops_manager.setup_page.setup_or_login(
|
11
|
+
user: env_settings.ops_manager.username,
|
12
|
+
password: env_settings.ops_manager.password,
|
13
|
+
)
|
14
|
+
|
15
|
+
expect(page).to have_content('Installation Dashboard')
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
it 'exports the installation' do
|
20
|
+
exported_installation_path = current_ops_manager_api_driver.export_installation.path
|
21
|
+
FileUtils.mv(exported_installation_path, export_destination_path)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
25
|
+
# All rights reserved.
|
26
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
27
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
28
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
29
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
30
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
31
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Getting latest install log', order: :defined do
|
4
|
+
let!(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let!(:env_settings) { fetch_environment_settings }
|
6
|
+
|
7
|
+
it 'creates the admin user and logs in' do
|
8
|
+
poll_up_to_mins(10) do
|
9
|
+
current_ops_manager.setup_page.setup_or_login(
|
10
|
+
user: env_settings.ops_manager.username,
|
11
|
+
password: env_settings.ops_manager.password,
|
12
|
+
)
|
13
|
+
|
14
|
+
expect(page).to have_content('Installation Dashboard')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'prints the most recent install log' do
|
19
|
+
puts current_ops_manager.product_dashboard.most_recent_install_log
|
20
|
+
end
|
21
|
+
end
|
22
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
23
|
+
# All rights reserved.
|
24
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
25
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
26
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
27
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
28
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
29
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Importing the installation', order: :defined do
|
4
|
+
let!(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let!(:env_settings) { fetch_environment_settings }
|
6
|
+
|
7
|
+
it 'creates the admin user and logs in' do
|
8
|
+
poll_up_to_mins(10) do
|
9
|
+
current_ops_manager.setup_page.setup_or_login(
|
10
|
+
user: env_settings.ops_manager.username,
|
11
|
+
password: env_settings.ops_manager.password,
|
12
|
+
)
|
13
|
+
|
14
|
+
expect(page).to have_content('Installation Dashboard')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'imports the installation' do
|
19
|
+
current_ops_manager.product_dashboard.import_installation_file(import_file_path)
|
20
|
+
end
|
21
|
+
end
|
22
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
23
|
+
# All rights reserved.
|
24
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
25
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
26
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
27
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
28
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
29
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,30 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Importing the stemcell', order: :defined do
|
4
|
+
let!(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let!(:env_settings) { fetch_environment_settings }
|
6
|
+
|
7
|
+
it 'creates the admin user and logs in' do
|
8
|
+
poll_up_to_mins(10) do
|
9
|
+
current_ops_manager.setup_page.setup_or_login(
|
10
|
+
user: env_settings.ops_manager.username,
|
11
|
+
password: env_settings.ops_manager.password,
|
12
|
+
)
|
13
|
+
|
14
|
+
expect(page).to have_content('Installation Dashboard')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'imports the stemcell' do
|
19
|
+
current_ops_manager.product(product_name).upload_stemcell(stemcell_file_path)
|
20
|
+
current_ops_manager.product_dashboard.version_for_product(product_name)
|
21
|
+
end
|
22
|
+
end
|
23
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
24
|
+
# All rights reserved.
|
25
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
26
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
27
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
28
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
29
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
30
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require_relative '../config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Configuring µBosh', order: :defined do
|
4
|
+
let(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let!(:env_settings) { fetch_environment_settings }
|
6
|
+
|
7
|
+
it 'creates the admin user and logs in' do
|
8
|
+
poll_up_to_mins(10) do
|
9
|
+
current_ops_manager.setup_page.setup_or_login(
|
10
|
+
user: env_settings.ops_manager.username,
|
11
|
+
password: env_settings.ops_manager.password,
|
12
|
+
)
|
13
|
+
|
14
|
+
expect(page).to have_content('Installation Dashboard')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'configures µBosh' do
|
19
|
+
product_dashboard = current_ops_manager.product_dashboard
|
20
|
+
product_dashboard.revert_pending_changes if product_dashboard.revert_available?
|
21
|
+
current_ops_manager.ops_manager_director.configure_bosh_product(env_settings)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
25
|
+
# All rights reserved.
|
26
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
27
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
28
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
29
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
30
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
31
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Triggering Install', order: :defined do
|
4
|
+
let!(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let!(:env_settings) { fetch_environment_settings }
|
6
|
+
|
7
|
+
it 'creates the admin user and logs in' do
|
8
|
+
poll_up_to_mins(10) do
|
9
|
+
current_ops_manager.setup_page.setup_or_login(
|
10
|
+
user: env_settings.ops_manager.username,
|
11
|
+
password: env_settings.ops_manager.password,
|
12
|
+
)
|
13
|
+
|
14
|
+
expect(page).to have_content('Installation Dashboard')
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'installs' do
|
19
|
+
current_ops_manager.product_dashboard.apply_updates
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'waits for a successful installation' do
|
23
|
+
poll_up_to_mins(install_timeout) do
|
24
|
+
expect(current_ops_manager.state_change_progress).to be_state_change_success
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
29
|
+
# All rights reserved.
|
30
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
31
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
32
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
33
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
34
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
35
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,117 @@
|
|
1
|
+
require 'rspec'
|
2
|
+
|
3
|
+
class UiSpecRunner
|
4
|
+
def initialize(environment:, om_version:)
|
5
|
+
raise 'No Environment Name provided' if environment.nil? || environment.empty?
|
6
|
+
raise 'No Ops Manager Version provided' if om_version.nil? || om_version.empty?
|
7
|
+
|
8
|
+
ENV['ENVIRONMENT_NAME'] = environment
|
9
|
+
ENV['OM_VERSION'] = om_version
|
10
|
+
end
|
11
|
+
|
12
|
+
def add_first_user
|
13
|
+
run_spec([spec_path + '/add_first_user_spec.rb'])
|
14
|
+
end
|
15
|
+
|
16
|
+
def configure_microbosh
|
17
|
+
run_spec([microbosh_spec_path + '/configure_microbosh_spec.rb'])
|
18
|
+
end
|
19
|
+
|
20
|
+
def trigger_install(install_timeout)
|
21
|
+
ENV['INSTALL_TIMEOUT'] = install_timeout
|
22
|
+
|
23
|
+
run_spec([spec_path + '/trigger_install_spec.rb'])
|
24
|
+
end
|
25
|
+
|
26
|
+
def get_latest_install_log
|
27
|
+
run_spec([spec_path + '/get_latest_install_log_spec.rb'])
|
28
|
+
end
|
29
|
+
|
30
|
+
def upload_and_add_product(product_path, product_name)
|
31
|
+
ENV['PRODUCT_PATH'] = product_path
|
32
|
+
ENV['PRODUCT_NAME'] = product_name
|
33
|
+
|
34
|
+
run_spec([spec_path + '/upload_and_add_product_spec.rb'])
|
35
|
+
end
|
36
|
+
|
37
|
+
def upload_and_upgrade_product(product_path, product_name)
|
38
|
+
ENV['PRODUCT_PATH'] = product_path
|
39
|
+
ENV['PRODUCT_NAME'] = product_name
|
40
|
+
|
41
|
+
run_spec([spec_path + '/upload_and_upgrade_product_spec.rb'])
|
42
|
+
end
|
43
|
+
|
44
|
+
def export_installation(export_destination)
|
45
|
+
ENV['EXPORT_DESTINATION'] = export_destination
|
46
|
+
|
47
|
+
run_spec([spec_path + '/export_installation_spec.rb'])
|
48
|
+
end
|
49
|
+
|
50
|
+
def import_installation(import_file)
|
51
|
+
ENV['IMPORT_FILE'] = import_file
|
52
|
+
|
53
|
+
run_spec([spec_path + '/import_installation_spec.rb'])
|
54
|
+
end
|
55
|
+
|
56
|
+
def delete_installation
|
57
|
+
run_spec([spec_path + '/delete_installation_spec.rb'])
|
58
|
+
end
|
59
|
+
|
60
|
+
def delete_product(product_name, timeout)
|
61
|
+
ENV['PRODUCT_NAME'] = product_name
|
62
|
+
ENV['DELETE_TIMEOUT'] = timeout
|
63
|
+
|
64
|
+
run_spec([spec_path + '/delete_product_spec.rb'])
|
65
|
+
end
|
66
|
+
|
67
|
+
def delete_product_if_present(product_name, timeout)
|
68
|
+
ENV['PRODUCT_NAME'] = product_name
|
69
|
+
ENV['DELETE_TIMEOUT'] = timeout
|
70
|
+
|
71
|
+
run_spec([spec_path + '/delete_product_if_present_spec.rb'])
|
72
|
+
end
|
73
|
+
|
74
|
+
def import_stemcell(stemcell_file, product_name)
|
75
|
+
ENV['STEMCELL_FILE'] = stemcell_file
|
76
|
+
ENV['PRODUCT_NAME'] = product_name
|
77
|
+
|
78
|
+
run_spec([spec_path + '/import_stemcell_spec.rb'])
|
79
|
+
end
|
80
|
+
|
81
|
+
def uncheck_errands(product_name, errand_names)
|
82
|
+
require 'json'
|
83
|
+
|
84
|
+
ENV['PRODUCT_NAME'] = product_name
|
85
|
+
ENV['ERRAND_NAMES'] = JSON.generate(errand_names)
|
86
|
+
|
87
|
+
run_spec([spec_path + '/uncheck_errands_spec.rb'])
|
88
|
+
end
|
89
|
+
|
90
|
+
private
|
91
|
+
|
92
|
+
def spec_path
|
93
|
+
File.dirname(__FILE__)
|
94
|
+
end
|
95
|
+
|
96
|
+
def microbosh_spec_path
|
97
|
+
File.join(spec_path, 'microbosh')
|
98
|
+
end
|
99
|
+
|
100
|
+
def run_spec(spec_to_run)
|
101
|
+
RSpecExiter.exit_rspec(RSpec::Core::Runner.run(spec_to_run))
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
module RSpecExiter
|
106
|
+
def self.exit_rspec(exit_code)
|
107
|
+
exit exit_code
|
108
|
+
end
|
109
|
+
end
|
110
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
111
|
+
# All rights reserved.
|
112
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
113
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
114
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
115
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
116
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
117
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Unchecking Errands', order: :defined do
|
4
|
+
let!(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let!(:env_settings) { fetch_environment_settings }
|
6
|
+
|
7
|
+
it 'logs in' do
|
8
|
+
current_ops_manager.setup_page.setup_or_login(
|
9
|
+
user: env_settings.ops_manager.username,
|
10
|
+
password: env_settings.ops_manager.password,
|
11
|
+
)
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'unchecks the errands provided for the given product' do
|
15
|
+
product_errands_driver = current_ops_manager.product(product_name).product_errands
|
16
|
+
|
17
|
+
errand_names.each do |errand_name|
|
18
|
+
product_errands_driver.disable_errand(errand_name)
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
22
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
23
|
+
# All rights reserved.
|
24
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
25
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
26
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
27
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
28
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
29
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Uploading and Adding a Product', order: :defined do
|
4
|
+
let!(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let(:env_settings) { fetch_environment_settings }
|
6
|
+
|
7
|
+
it 'logs in' do
|
8
|
+
current_ops_manager.setup_page.setup_or_login(
|
9
|
+
user: env_settings.ops_manager.username,
|
10
|
+
password: env_settings.ops_manager.password,
|
11
|
+
)
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'adds the product' do
|
15
|
+
expect do
|
16
|
+
current_ops_manager.available_products.add_product_to_install(product_name)
|
17
|
+
end.not_to raise_error
|
18
|
+
end
|
19
|
+
end
|
20
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
21
|
+
# All rights reserved.
|
22
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
23
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
24
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
25
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
26
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
27
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,36 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Uploading and Upgrading a Product', order: :defined do
|
4
|
+
let!(:current_ops_manager) { ops_manager_driver }
|
5
|
+
let!(:env_settings) { fetch_environment_settings }
|
6
|
+
|
7
|
+
it 'logs in' do
|
8
|
+
current_ops_manager.setup_page.setup_or_login(
|
9
|
+
user: env_settings.ops_manager.username,
|
10
|
+
password: env_settings.ops_manager.password,
|
11
|
+
)
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'uploads the product' do
|
15
|
+
current_ops_manager.product_dashboard.import_product_from(product_path)
|
16
|
+
if (flash_error = all('.flash-message.error').first)
|
17
|
+
fail flash_error.text
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
it 'upgrades the product' do
|
22
|
+
current_ops_manager.product_dashboard.upgrade_product(product_name)
|
23
|
+
|
24
|
+
expect(
|
25
|
+
current_ops_manager.available_products.product_added?(product_name)
|
26
|
+
).to eq(true)
|
27
|
+
end
|
28
|
+
end
|
29
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
30
|
+
# All rights reserved.
|
31
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
32
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
33
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
34
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
35
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
36
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|