opsmgr-cgfrost 0.35.9
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 +123 -0
- data/lib/opsmgr.rb +12 -0
- data/lib/opsmgr/api/client.rb +116 -0
- data/lib/opsmgr/api/http_client.rb +399 -0
- data/lib/opsmgr/api/results.rb +280 -0
- data/lib/opsmgr/api/version20/endpoints.rb +121 -0
- data/lib/opsmgr/bosh_command_runner.rb +84 -0
- data/lib/opsmgr/cmd/bosh_command.rb +189 -0
- data/lib/opsmgr/cmd/ops_manager.rb +142 -0
- data/lib/opsmgr/environments.rb +106 -0
- data/lib/opsmgr/errand_runner.rb +62 -0
- data/lib/opsmgr/log.rb +70 -0
- data/lib/opsmgr/product_upload_wrapper.rb +71 -0
- data/lib/opsmgr/renderer.rb +23 -0
- data/lib/opsmgr/renderer/aws.rb +148 -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 +56 -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 +90 -0
- data/lib/opsmgr/settings/microbosh/product_list.rb +27 -0
- data/lib/opsmgr/settings/microbosh/property.rb +33 -0
- data/lib/opsmgr/settings/microbosh/property_list.rb +27 -0
- data/lib/opsmgr/tasks.rb +16 -0
- data/lib/opsmgr/tasks/bosh.rake +104 -0
- data/lib/opsmgr/tasks/destroy.rake +42 -0
- data/lib/opsmgr/tasks/info.rake +19 -0
- data/lib/opsmgr/tasks/opsmgr.rake +205 -0
- data/lib/opsmgr/tasks/product.rake +82 -0
- data/lib/opsmgr/ui_helpers/add_first_user_spec.rb +25 -0
- data/lib/opsmgr/ui_helpers/config_helper.rb +38 -0
- data/lib/opsmgr/ui_helpers/delete_installation_spec.rb +41 -0
- data/lib/opsmgr/ui_helpers/delete_product_if_present_spec.rb +37 -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_stemcell_spec.rb +30 -0
- data/lib/opsmgr/ui_helpers/microbosh/configure_microbosh_spec.rb +32 -0
- data/lib/opsmgr/ui_helpers/post_import_configuration_spec.rb +31 -0
- data/lib/opsmgr/ui_helpers/revert_staged_changes_spec.rb +39 -0
- data/lib/opsmgr/ui_helpers/settings_helper.rb +132 -0
- data/lib/opsmgr/ui_helpers/trigger_install_spec.rb +35 -0
- data/lib/opsmgr/ui_helpers/ui_spec_runner.rb +122 -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
- data/sample_env_files/aws.yml +95 -0
- data/sample_env_files/vsphere.yml +87 -0
- metadata +392 -0
@@ -0,0 +1,82 @@
|
|
1
|
+
namespace :opsmgr do
|
2
|
+
namespace :product do
|
3
|
+
desc 'Upload a Pivotal Product'
|
4
|
+
task :upload, [:environment, :om_version, :product_path, :product_name] do |_, args|
|
5
|
+
require 'opsmgr/product_upload_wrapper'
|
6
|
+
|
7
|
+
ProductUploadWrapper.wrap_upload(
|
8
|
+
environment: args.environment,
|
9
|
+
product_path: args.product_path,
|
10
|
+
product_name: args.product_name,
|
11
|
+
om_version: args.om_version
|
12
|
+
)
|
13
|
+
end
|
14
|
+
|
15
|
+
desc 'Upload and Add a Pivotal Product'
|
16
|
+
task :upload_add, [:environment, :om_version, :product_path, :product_name] do |_, args|
|
17
|
+
require 'opsmgr/product_upload_wrapper'
|
18
|
+
|
19
|
+
ProductUploadWrapper.wrap_add(
|
20
|
+
environment: args.environment,
|
21
|
+
product_path: args.product_path,
|
22
|
+
product_name: args.product_name,
|
23
|
+
om_version: args.om_version
|
24
|
+
)
|
25
|
+
end
|
26
|
+
|
27
|
+
desc 'Upgrade a Generic Pivotal Product'
|
28
|
+
task :upload_upgrade, [:environment, :om_version, :product_path, :product_name] do |_, args|
|
29
|
+
require 'opsmgr/product_upload_wrapper'
|
30
|
+
|
31
|
+
ProductUploadWrapper.wrap_upgrade(
|
32
|
+
environment: args.environment,
|
33
|
+
product_path: args.product_path,
|
34
|
+
product_name: args.product_name,
|
35
|
+
om_version: args.om_version
|
36
|
+
)
|
37
|
+
end
|
38
|
+
|
39
|
+
desc 'Import a stemcell for a Generic Pivotal Product'
|
40
|
+
task :import_stemcell, [:environment, :om_version, :stemcell_path, :product_name] do |_, args|
|
41
|
+
require 'opsmgr/ui_helpers/ui_spec_runner'
|
42
|
+
|
43
|
+
UiSpecRunner.new(
|
44
|
+
environment: args.environment,
|
45
|
+
om_version: args.om_version
|
46
|
+
).import_stemcell(args.stemcell_path, args.product_name)
|
47
|
+
end
|
48
|
+
|
49
|
+
desc 'Uncheck errands for a Generic Pivotal Product'
|
50
|
+
task :uncheck_errands, [:environment, :om_version, :product_name] do |_, args|
|
51
|
+
require 'opsmgr/ui_helpers/ui_spec_runner'
|
52
|
+
|
53
|
+
UiSpecRunner.new(
|
54
|
+
environment: args.environment,
|
55
|
+
om_version: args.om_version
|
56
|
+
).uncheck_errands(args.product_name, args.extras)
|
57
|
+
end
|
58
|
+
|
59
|
+
desc 'Download staged manifest for a Generic Pivotal Product'
|
60
|
+
task :download_staged_manifest, [:environment, :om_version, :product_name, :manifest_filepath] do |_, args|
|
61
|
+
require 'opsmgr/environments'
|
62
|
+
require 'opsmgr/cmd/ops_manager'
|
63
|
+
require 'opsmgr/api/client'
|
64
|
+
|
65
|
+
environment_object = Opsmgr::Environments.for(args.environment)
|
66
|
+
client = Opsmgr::Api::Client.new(environment_object, args.om_version)
|
67
|
+
opsmgr_cmd = Opsmgr::Cmd::OpsManager.new(environment_object)
|
68
|
+
|
69
|
+
installed_products = opsmgr_cmd.installed_products(client)
|
70
|
+
product_guid = installed_products.guid_for(args.product_name)
|
71
|
+
opsmgr_cmd.download_staged_manifest(client, product_guid, args.manifest_filepath)
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
75
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
76
|
+
# All rights reserved.
|
77
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
78
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
79
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
80
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
81
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
82
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,25 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Adding the first user', 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
|
+
end
|
18
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
19
|
+
# All rights reserved.
|
20
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
21
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
22
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
23
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
24
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
25
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,38 @@
|
|
1
|
+
PROJECT_ROOT = File.expand_path(File.join(__dir__, '..'))
|
2
|
+
|
3
|
+
require 'rspec'
|
4
|
+
require 'ops_manager_ui_drivers'
|
5
|
+
require 'yaml'
|
6
|
+
require 'opsmgr/environments'
|
7
|
+
require_relative 'settings_helper'
|
8
|
+
|
9
|
+
RSpec.configure do |config|
|
10
|
+
config.fail_fast = true
|
11
|
+
config.default_formatter = 'documentation'
|
12
|
+
|
13
|
+
config.include(SettingsHelper)
|
14
|
+
config.include(Capybara::DSL)
|
15
|
+
config.include(OpsManagerUiDrivers::PageHelpers)
|
16
|
+
config.include(OpsManagerUiDrivers::WaitHelper)
|
17
|
+
|
18
|
+
config.after(:each) do |example|
|
19
|
+
if example.exception
|
20
|
+
page = save_page
|
21
|
+
screenshot = save_screenshot(nil)
|
22
|
+
|
23
|
+
exception = example.exception
|
24
|
+
exception.define_singleton_method :message do
|
25
|
+
super() +
|
26
|
+
"\nHTML page: #{page}\nScreenshot: #{screenshot}"
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
end
|
31
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
32
|
+
# All rights reserved.
|
33
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
34
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
35
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
36
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
37
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
38
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,41 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Deleting 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
|
+
# if the ops manager is not up, fail earlier than other cases and
|
9
|
+
# let the caller handle the error
|
10
|
+
poll_up_to_mins(1) do
|
11
|
+
current_ops_manager.setup_page.setup_or_login(
|
12
|
+
user: env_settings['ops_manager']['username'],
|
13
|
+
password: env_settings['ops_manager']['password'],
|
14
|
+
)
|
15
|
+
|
16
|
+
expect(page).to have_content('Installation Dashboard')
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'deletes the installation' do
|
21
|
+
if current_ops_manager.product_dashboard.delete_installation_available?
|
22
|
+
current_ops_manager.product_dashboard.delete_whole_installation
|
23
|
+
|
24
|
+
expect(current_ops_manager.product_dashboard).not_to be_delete_installation_available
|
25
|
+
|
26
|
+
poll_up_to_mins(45) do
|
27
|
+
expect(current_ops_manager.state_change_progress).to be_state_change_success
|
28
|
+
end
|
29
|
+
else
|
30
|
+
puts 'no installation to delete'
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
35
|
+
# All rights reserved.
|
36
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
37
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
38
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
39
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
40
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
41
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,37 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Deleting a product if it is present', 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 if it exists on the dashboard' do
|
19
|
+
if current_ops_manager.product_dashboard.product_on_dashboard?(product_name)
|
20
|
+
current_ops_manager.product_dashboard.delete_product(product_name)
|
21
|
+
current_ops_manager.product_dashboard.apply_updates
|
22
|
+
poll_up_to_mins(delete_timeout, poll_interval) do
|
23
|
+
expect(current_ops_manager.state_change_progress).to be_state_change_success
|
24
|
+
end
|
25
|
+
else
|
26
|
+
puts "#{product_name} does not exist on dashboard, skipping deletion"
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
30
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
31
|
+
# All rights reserved.
|
32
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
33
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
34
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
35
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
36
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
37
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -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, poll_interval) 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,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,32 @@
|
|
1
|
+
require_relative '../config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Configuring director', 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 director' 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
|
+
current_ops_manager.ops_manager_director.configure_icmp_checks(env_settings['ops_manager']['icmp_checks_enabled']) if om_version == '1.7'
|
23
|
+
end
|
24
|
+
end
|
25
|
+
# Copyright (c) 2014-2015 Pivotal Software, Inc.
|
26
|
+
# All rights reserved.
|
27
|
+
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
|
28
|
+
# INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
29
|
+
# PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
30
|
+
# LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
31
|
+
# TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
|
32
|
+
# USE OR OTHER DEALINGS IN THE SOFTWARE.
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Post-import configuration', 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 the security group' do
|
19
|
+
if env_settings['iaas_type'] != 'vsphere' && env_settings['iaas_type'] != 'vcloud'
|
20
|
+
current_ops_manager.ops_manager_director.configure_security_group(env_settings)
|
21
|
+
end
|
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,39 @@
|
|
1
|
+
require_relative 'config_helper'
|
2
|
+
|
3
|
+
RSpec.describe 'Reverting staged changes', 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
|
+
# if the ops manager is not up, fail earlier than other cases and
|
9
|
+
# let the caller handle the error
|
10
|
+
poll_up_to_mins(1) do
|
11
|
+
current_ops_manager.setup_page.setup_or_login(
|
12
|
+
user: env_settings['ops_manager']['username'],
|
13
|
+
password: env_settings['ops_manager']['password'],
|
14
|
+
)
|
15
|
+
|
16
|
+
expect(page).to have_content('Installation Dashboard')
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'reverts staged changes' do
|
21
|
+
if current_ops_manager.product_dashboard.revert_available?
|
22
|
+
current_ops_manager.product_dashboard.revert_pending_changes
|
23
|
+
|
24
|
+
poll_up_to_mins(1) do
|
25
|
+
expect(current_ops_manager.product_dashboard.revert_available?).to eq false
|
26
|
+
end
|
27
|
+
else
|
28
|
+
puts 'no staged changes to revert'
|
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.
|