ops_manager_cli 0.7.4 → 0.7.6
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9ec7bfea49668d843eb2f5519458611f50d9f15b
|
4
|
+
data.tar.gz: 6c97e25bc6fdbd920211707f7616d93073f3ee87
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2b2c5ad35553858b37bf1589a9370e5b9ec01daa9bf66ee892a1352eb3041b364236ec748edae8d730232a00f538cfaee3b5fd54d8a0069747c97de43ff6a9e6
|
7
|
+
data.tar.gz: 91f1862c59af627398b69fd6a0cad1ed0cb289bb05c681da67ba2dc3055b5d073ce5858e04b98515410b05eceaf066ad300e20da92c451e7045cd6b2fa2dce8e
|
data/Dockerfile
CHANGED
@@ -40,7 +40,7 @@ class OpsManager
|
|
40
40
|
# Create ami of stopped server
|
41
41
|
response = connection.create_image(server.id, "#{name}-backup", "Backup of #{name}")
|
42
42
|
image = connection.images.get( response.data[:body]['imageId'])
|
43
|
-
image.wait_for
|
43
|
+
image.wait_for(timeout=36000) { image.state == "available" }
|
44
44
|
if image.state != "available"
|
45
45
|
fail "Error creating backup AMI, bailing out before destroying the VM"
|
46
46
|
end
|
@@ -80,8 +80,12 @@ class OpsManager::ApplianceDeployment
|
|
80
80
|
|
81
81
|
def list_current_stemcells
|
82
82
|
JSON.parse(installation_settings).fetch('products').inject([]) do |a, p|
|
83
|
-
|
84
|
-
|
83
|
+
product_name = "stemcells"
|
84
|
+
if p['stemcell'].fetch('os') =~ /windows/i
|
85
|
+
product_name = "stemcells-windows-server"
|
86
|
+
end
|
87
|
+
a << { version: p['stemcell'].fetch('version'), product: product_name }
|
88
|
+
end.uniq
|
85
89
|
end
|
86
90
|
|
87
91
|
# Finds available stemcell's pivotal network release.
|
@@ -89,9 +93,9 @@ class OpsManager::ApplianceDeployment
|
|
89
93
|
# #
|
90
94
|
# @param version [String] the version number, eg: '2362.17'
|
91
95
|
# @return release_id [Integer] the pivotal netowkr release id of the found stemcell.
|
92
|
-
def find_stemcell_release(version)
|
96
|
+
def find_stemcell_release(version, product_name)
|
93
97
|
version = OpsManager::Semver.new(version)
|
94
|
-
releases = stemcell_releases.collect do |r|
|
98
|
+
releases = stemcell_releases(product_name).collect do |r|
|
95
99
|
{
|
96
100
|
release_id: r['id'],
|
97
101
|
version: OpsManager::Semver.new(r['version']),
|
@@ -109,8 +113,8 @@ class OpsManager::ApplianceDeployment
|
|
109
113
|
# @param release_id [String] the version number, eg: '2362.17'
|
110
114
|
# @param filename [Regex] the version number, eg: /vsphere/
|
111
115
|
# @return id and name [Array] the pivotal network file ID and Filename for the matching stemcell.
|
112
|
-
def find_stemcell_file(release_id, filename)
|
113
|
-
files = JSON.parse(get_product_release_files(
|
116
|
+
def find_stemcell_file(release_id, filename, product_name)
|
117
|
+
files = JSON.parse(get_product_release_files(product_name, release_id).body).fetch('product_files')
|
114
118
|
file = files.select{ |r| r.fetch('aws_object_key') =~ filename }.first
|
115
119
|
return file['id'], file['aws_object_key'].split('/')[-1]
|
116
120
|
end
|
@@ -121,16 +125,18 @@ class OpsManager::ApplianceDeployment
|
|
121
125
|
print "====> Downloading existing stemcells ...".green
|
122
126
|
puts "no stemcells found".green if list_current_stemcells.empty?
|
123
127
|
FileUtils.mkdir_p current_stemcell_dir
|
124
|
-
list_current_stemcells.each do |
|
125
|
-
|
126
|
-
|
128
|
+
list_current_stemcells.each do |stemcell_info|
|
129
|
+
stemcell_version = stemcell_info[:version]
|
130
|
+
product_name = stemcell_info[:product]
|
131
|
+
release_id = find_stemcell_release(stemcell_version, product_name)
|
132
|
+
accept_product_release_eula(product_name, release_id)
|
127
133
|
stemcell_regex = /vsphere/
|
128
134
|
if config[:provider] == "AWS"
|
129
135
|
stemcell_regex = /aws/
|
130
136
|
end
|
131
137
|
|
132
|
-
file_id, file_name = find_stemcell_file(release_id, stemcell_regex)
|
133
|
-
download_product_release_file(
|
138
|
+
file_id, file_name = find_stemcell_file(release_id, stemcell_regex, product_name)
|
139
|
+
download_product_release_file(product_name, release_id, file_id, write_to: "#{current_stemcell_dir}/#{file_name}")
|
134
140
|
end
|
135
141
|
end
|
136
142
|
|
@@ -212,12 +218,8 @@ class OpsManager::ApplianceDeployment
|
|
212
218
|
@installation_settings ||= get_installation_settings.body
|
213
219
|
end
|
214
220
|
|
215
|
-
def
|
216
|
-
get_product_releases('
|
217
|
-
end
|
218
|
-
|
219
|
-
def stemcell_releases
|
220
|
-
@stemcell_releases ||= JSON.parse(get_stemcell_releases.body).fetch('releases')
|
221
|
+
def stemcell_releases(product_name)
|
222
|
+
JSON.parse(get_product_releases(product_name).body).fetch('releases')
|
221
223
|
end
|
222
224
|
|
223
225
|
def current_stemcell_dir
|
@@ -19,11 +19,11 @@ class OpsManager
|
|
19
19
|
delete_from_jobs(property_name)
|
20
20
|
end
|
21
21
|
|
22
|
-
%w{ password secret salt }.each do |property_name|
|
22
|
+
%w{ password secret salt private_key_pem cert_pem }.each do |property_name|
|
23
23
|
delete_value_from_job_properties(property_name)
|
24
24
|
end
|
25
25
|
|
26
|
-
%w{ secret }.each do |property_name|
|
26
|
+
%w{ secret private_key_pem cert_pem }.each do |property_name|
|
27
27
|
delete_value_from_product_properties(property_name)
|
28
28
|
end
|
29
29
|
|
@@ -126,5 +126,15 @@ class OpsManager
|
|
126
126
|
end
|
127
127
|
end
|
128
128
|
end
|
129
|
+
|
130
|
+
def delete_certs_from_template
|
131
|
+
selected_product['jobs'].each do |j|
|
132
|
+
j.fetch('properties',[]).each do |p|
|
133
|
+
|
134
|
+
end
|
135
|
+
end
|
136
|
+
|
137
|
+
end
|
138
|
+
|
129
139
|
end
|
130
140
|
end
|
data/lib/ops_manager/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ops_manager_cli
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- CompoZed
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-06-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|