vmware_web_service 2.0.2 → 3.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/lib/VMwareWebService/MiqHostDatastoreSystem.rb +5 -1
  3. data/lib/VMwareWebService/MiqVim.rb +80 -56
  4. data/lib/VMwareWebService/MiqVimClientBase.rb +11 -10
  5. data/lib/VMwareWebService/MiqVimCluster.rb +6 -2
  6. data/lib/VMwareWebService/MiqVimCustomizationSpecManager.rb +1 -1
  7. data/lib/VMwareWebService/MiqVimDataStore.rb +9 -6
  8. data/lib/VMwareWebService/MiqVimDump.rb +1 -1
  9. data/lib/VMwareWebService/MiqVimEventHistoryCollector.rb +5 -1
  10. data/lib/VMwareWebService/MiqVimEventMonitor.rb +22 -20
  11. data/lib/VMwareWebService/MiqVimFolder.rb +15 -11
  12. data/lib/VMwareWebService/MiqVimHost.rb +15 -13
  13. data/lib/VMwareWebService/MiqVimInventory.rb +78 -79
  14. data/lib/VMwareWebService/MiqVimPerfHistory.rb +13 -10
  15. data/lib/VMwareWebService/MiqVimUpdate.rb +50 -50
  16. data/lib/VMwareWebService/MiqVimVdlMod.rb +7 -7
  17. data/lib/VMwareWebService/MiqVimVm.rb +103 -102
  18. data/lib/VMwareWebService/VimService.rb +5 -2
  19. data/lib/VMwareWebService/VixDiskLib/VixDiskLib.rb +15 -7
  20. data/lib/VMwareWebService/VixDiskLib/VixDiskLibServer.rb +15 -15
  21. data/lib/VMwareWebService/VixDiskLib/vdl_wrapper.rb +26 -27
  22. data/lib/VMwareWebService/exception.rb +0 -2
  23. data/lib/VMwareWebService/logging.rb +16 -0
  24. data/lib/VMwareWebService/version.rb +1 -1
  25. data/lib/vmware_web_service.rb +2 -0
  26. metadata +13 -32
  27. data/lib/VMwareWebService/DMiqVim.rb +0 -95
  28. data/lib/VMwareWebService/DMiqVimSync.rb +0 -45
  29. data/lib/VMwareWebService/MiqVimBroker.rb +0 -581
  30. data/lib/VMwareWebService/MiqVimBrokerMods.rb +0 -222
  31. data/lib/VMwareWebService/MiqVimCoreUpdater.rb +0 -269
  32. data/lib/VMwareWebService/miq_fault_tolerant_vim.rb +0 -246
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 77fcee14b8adf4ff299e6f703078e3d2bbf62aba13be17e4a6253a010cae18f1
4
- data.tar.gz: 86972a49c90161ae859753f7470e4e415b336e1178a554036aac0f24362588f2
3
+ metadata.gz: 1288852b072deb0fafe3ad1283dc4f82937da979aafdb8408a4f2938e93525bb
4
+ data.tar.gz: 980e17603b753629a0dfbffa4c7c9141b347da64492e39400bb4feca1c129bda
5
5
  SHA512:
6
- metadata.gz: eb2c3b6c7e80fed7f4b5d2cc63d4556103ffd0a6b57442896b0edc262601de38e0ab394bf2d75b1a2bc7e67788f766d4864668d47ad1c1d3001bcd0395db135d
7
- data.tar.gz: def519ee4ed00ad05cb3590f7decddbf90a5e8b408b3df34223685a27cb3387675120a210ae5c1e58135a6c1609bb022ad56428a816ef81df6f1190437a91962
6
+ metadata.gz: 4fa9b4c773f5868376fd9d1d816146c614d4ecd6f05bcdc17db918df45cdb39a07cea91cc329db3d7601dece163d63b63bb14820bd8ad1fa1415849df05a0a5d
7
+ data.tar.gz: 15156757e0bdfecd73a1199eb0d7fbc6f514c61f7c530a2528a21608ae34fce966badbe9e2b6141e4ff7d16a60c0dc86e0f7e27f9fbc878e697cb3094ffe047f
@@ -1,4 +1,8 @@
1
+ require 'VMwareWebService/logging'
2
+
1
3
  class MiqHostDatastoreSystem
4
+ include VMwareWebService::Logging
5
+
2
6
  attr_reader :invObj
3
7
 
4
8
  def initialize(dssMor, invObj)
@@ -44,7 +48,7 @@ class MiqHostDatastoreSystem
44
48
  localPath = dsh.info.nas.name
45
49
  type = dsh.info.nas.type
46
50
 
47
- $vim_log.info "MiqHostDatastoreSystem.addNasDatastoreByName: remoteHost = #{remoteHost}, remotePath = #{remotePath}, localPath = #{localPath}"
51
+ logger.info "MiqHostDatastoreSystem.addNasDatastoreByName: remoteHost = #{remoteHost}, remotePath = #{remotePath}, localPath = #{localPath}"
48
52
  createNasDatastore(remoteHost, remotePath, localPath, accessMode, type)
49
53
  end
50
54
  end # class MiqHostDatastoreSystem
@@ -20,49 +20,73 @@ class MiqVim < MiqVimInventory
20
20
 
21
21
  attr_reader :updateThread, :monitor_updates
22
22
 
23
- # @param server [String] DNS name or IP address of the vCenter Server
23
+ # @param server [String] DNS name or IP address of the vCenter Server
24
24
  # @param username [String] Username to connect to the vCenter Server
25
25
  # @param password [String] Password to connect to the vCenter Server
26
- # @param cacheScope [Symbol] A pre-defined set of properties to cache (default: nil)
26
+ # @param port [Integer] Port to connect to the vCenter Server (default: 443)
27
+ # @param ssl_options [Hash] SSL connection options, :verify_mode and :ca_file
28
+ # @param cache_scope [Symbol] A pre-defined set of properties to cache (default: nil)
27
29
  # @param monitor_updates [Bool] Should a thread be started to monitor updates (default: false)
28
- # @param preLoad [Bool] Should the cache be built before returning the connection (default: false)
29
- # @param debugUpdates [Bool] Should we print debug info for each update (default: false)
30
- # @param notifyMethod [Method] A optional method to call for each update (default: nil)
31
- # @param maxWait [Integer] How many seconds to wait before breaking out of WaitForUpdates (default: 60)
32
- # @param maxObjects [Integer] How many objects to return from each WaitForUpdates page (default: 250)
33
- def initialize(server, username, password, cacheScope = nil, monitor_updates = false, preLoad = false, debugUpdates = false, notifyMethod = nil, maxWait = 60, maxObjects = 250)
34
- super(server, username, password, cacheScope)
30
+ # @param pre_load [Bool] Should the cache be built before returning the connection (default: false)
31
+ # @param debug_updates [Bool] Should we print debug info for each update (default: false)
32
+ # @param notify_method [Method] A optional method to call for each update (default: nil)
33
+ # @param max_wait [Integer] How many seconds to wait before breaking out of WaitForUpdates (default: 60)
34
+ # @param max_objects [Integer] How many objects to return from each WaitForUpdates page (default: 250)
35
+ def initialize(server:, username:, password:, port: 443, ssl_options: {}, cache_scope: nil, monitor_updates: nil, pre_load: nil, debug_updates: false, notify_method: nil, max_wait: 60, max_objects: 250)
36
+ super(:server => server, :port => port, :ssl_options => ssl_options, :username => username, :password => password, :cache_scope => cache_scope)
37
+
38
+ monitor_updates = self.class.monitor_updates if monitor_updates.nil?
39
+ pre_load = self.class.pre_load if pre_load.nil?
35
40
 
36
41
  @monitor_updates = monitor_updates
37
42
  @updateMonitorReady = false
38
43
  @error = nil
39
- @notifyMethod = notifyMethod
40
- @debugUpdates = debugUpdates
41
- @maxWait = maxWait
42
- @maxObjects = maxObjects
44
+ @notifyMethod = notify_method
45
+ @debugUpdates = debug_updates
46
+ @maxWait = max_wait
47
+ @maxObjects = max_objects
48
+
49
+ start_monitor_updates_thread(pre_load) if @monitor_updates
50
+ end
51
+
52
+ @@monitor_updates = false
53
+ @@pre_load = false
54
+
55
+ def self.monitor_updates
56
+ @@monitor_updates
57
+ end
58
+
59
+ def self.monitor_updates=(val)
60
+ @@monitor_updates = val
61
+ end
62
+
63
+ def self.pre_load
64
+ @@pre_load
65
+ end
43
66
 
44
- start_monitor_updates_thread(preLoad) if @monitor_updates
67
+ def self.pre_load=(val)
68
+ @@pre_load = val
45
69
  end
46
70
 
47
71
  def getVimVm(path)
48
- $vim_log.info "MiqVimMod.getVimVm: called"
72
+ logger.info "MiqVimMod.getVimVm: called"
49
73
  miqVimVm = nil
50
74
  @cacheLock.synchronize(:SH) do
51
75
  raise MiqException::MiqVimResourceNotFound, "Could not find VM: #{path}" unless (vmh = virtualMachines_locked[path])
52
76
  miqVimVm = MiqVimVm.new(self, conditionalCopy(vmh))
53
77
  end
54
- $vim_log.info "MiqVimMod.getVimVm: returning object #{miqVimVm.object_id}"
78
+ logger.info "MiqVimMod.getVimVm: returning object #{miqVimVm.object_id}"
55
79
  (miqVimVm)
56
80
  end # def getVimVm
57
81
 
58
82
  def getVimVmByMor(vmMor)
59
- $vim_log.info "MiqVimMod.getVimVmByMor: called"
83
+ logger.info "MiqVimMod.getVimVmByMor: called"
60
84
  miqVimVm = nil
61
85
  @cacheLock.synchronize(:SH) do
62
86
  raise MiqException::MiqVimResourceNotFound, "Could not find VM: #{vmMor}" unless (vmh = virtualMachinesByMor_locked[vmMor])
63
87
  miqVimVm = MiqVimVm.new(self, conditionalCopy(vmh))
64
88
  end
65
- $vim_log.info "MiqVimMod.getVimVmByMor: returning object #{miqVimVm.object_id}"
89
+ logger.info "MiqVimMod.getVimVmByMor: returning object #{miqVimVm.object_id}"
66
90
  (miqVimVm)
67
91
  end # def getVimVmByMor
68
92
 
@@ -71,36 +95,36 @@ class MiqVim < MiqVimInventory
71
95
  # matches the criteria defined by the filter.
72
96
  #
73
97
  def getVimVmByFilter(filter)
74
- $vim_log.info "MiqVimMod.getVimVmByFilter: called"
98
+ logger.info "MiqVimMod.getVimVmByFilter: called"
75
99
  miqVimVm = nil
76
100
  @cacheLock.synchronize(:SH) do
77
101
  vms = applyFilter(virtualMachinesByMor_locked.values, filter)
78
102
  raise MiqException::MiqVimResourceNotFound, "getVimVmByFilter: Could not find VM matching filter" if vms.empty?
79
103
  miqVimVm = MiqVimVm.new(self, conditionalCopy(vms[0]))
80
104
  end
81
- $vim_log.info "MiqVimMod.getVimVmByFilter: returning object #{miqVimVm.object_id}"
105
+ logger.info "MiqVimMod.getVimVmByFilter: returning object #{miqVimVm.object_id}"
82
106
  (miqVimVm)
83
107
  end # def getVimVmByFilter
84
108
 
85
109
  def getVimHost(name)
86
- $vim_log.info "MiqVimMod.getVimHost: called"
110
+ logger.info "MiqVimMod.getVimHost: called"
87
111
  miqVimHost = nil
88
112
  @cacheLock.synchronize(:SH) do
89
113
  raise MiqException::MiqVimResourceNotFound, "Could not find Host: #{name}" unless (hh = hostSystems_locked[name])
90
114
  miqVimHost = MiqVimHost.new(self, conditionalCopy(hh))
91
115
  end
92
- $vim_log.info "MiqVimMod.getVimHost: returning object #{miqVimHost.object_id}"
116
+ logger.info "MiqVimMod.getVimHost: returning object #{miqVimHost.object_id}"
93
117
  (miqVimHost)
94
118
  end # def getVimHost
95
119
 
96
120
  def getVimHostByMor(hMor)
97
- $vim_log.info "MiqVimMod.getVimHostByMor: called"
121
+ logger.info "MiqVimMod.getVimHostByMor: called"
98
122
  miqVimHost = nil
99
123
  @cacheLock.synchronize(:SH) do
100
124
  raise MiqException::MiqVimResourceNotFound, "Could not find Host: #{hMor}" unless (hh = hostSystemsByMor_locked[hMor])
101
125
  miqVimHost = MiqVimHost.new(self, conditionalCopy(hh))
102
126
  end
103
- $vim_log.info "MiqVimMod.getVimHostByMor: returning object #{miqVimHost.object_id}"
127
+ logger.info "MiqVimMod.getVimHostByMor: returning object #{miqVimHost.object_id}"
104
128
  (miqVimHost)
105
129
  end # def getVimHostByMor
106
130
 
@@ -109,48 +133,48 @@ class MiqVim < MiqVimInventory
109
133
  # matches the criteria defined by the filter.
110
134
  #
111
135
  def getVimHostByFilter(filter)
112
- $vim_log.info "MiqVimMod.getVimHostByFilter: called"
136
+ logger.info "MiqVimMod.getVimHostByFilter: called"
113
137
  miqVimHost = nil
114
138
  @cacheLock.synchronize(:SH) do
115
139
  ha = applyFilter(hostSystemsByMor_locked.values, filter)
116
140
  raise MiqException::MiqVimResourceNotFound, "getVimHostByFilter: Could not find Host matching filter" if ha.empty?
117
141
  miqVimHost = MiqVimHost.new(self, conditionalCopy(ha[0]))
118
142
  end
119
- $vim_log.info "MiqVimMod.getVimHostByFilter: returning object #{miqVimHost.object_id}"
143
+ logger.info "MiqVimMod.getVimHostByFilter: returning object #{miqVimHost.object_id}"
120
144
  (miqVimHost)
121
145
  end # def getVimHostByFilter
122
146
 
123
147
  def getVimFolder(name)
124
- $vim_log.info "MiqVimMod.getVimFolder: called"
148
+ logger.info "MiqVimMod.getVimFolder: called"
125
149
  miqVimFolder = nil
126
150
  @cacheLock.synchronize(:SH) do
127
151
  raise MiqException::MiqVimResourceNotFound, "Could not find Folder: #{name}" unless (fh = folders_locked[name])
128
152
  miqVimFolder = MiqVimFolder.new(self, conditionalCopy(fh))
129
153
  end
130
- $vim_log.info "MiqVimMod.getVimFolder: returning object #{miqVimFolder.object_id}"
154
+ logger.info "MiqVimMod.getVimFolder: returning object #{miqVimFolder.object_id}"
131
155
  (miqVimFolder)
132
156
  end # def getVimFolder
133
157
 
134
158
  def getVimFolderByMor(fMor)
135
- $vim_log.info "MiqVimMod.getVimFolderByMor: called"
159
+ logger.info "MiqVimMod.getVimFolderByMor: called"
136
160
  miqVimFolder = nil
137
161
  @cacheLock.synchronize(:SH) do
138
162
  raise MiqException::MiqVimResourceNotFound, "Could not find Folder: #{fMor}" unless (fh = foldersByMor_locked[fMor])
139
163
  miqVimFolder = MiqVimFolder.new(self, conditionalCopy(fh))
140
164
  end
141
- $vim_log.info "MiqVimMod.getVimFolderByMor: returning object #{miqVimFolder.object_id}"
165
+ logger.info "MiqVimMod.getVimFolderByMor: returning object #{miqVimFolder.object_id}"
142
166
  (miqVimFolder)
143
167
  end # def getVimFolderByMor
144
168
 
145
169
  def getVimFolderByFilter(filter)
146
- $vim_log.info "MiqVimMod.getVimFolderByFilter: called"
170
+ logger.info "MiqVimMod.getVimFolderByFilter: called"
147
171
  miqVimFolder = nil
148
172
  @cacheLock.synchronize(:SH) do
149
173
  folders = applyFilter(foldersByMor_locked.values, filter)
150
174
  raise MiqException::MiqVimResourceNotFound, "getVimFolderByFilter: Could not find folder matching filter" if folders.empty?
151
175
  miqVimFolder = MiqVimFolder.new(self, conditionalCopy(folders[0]))
152
176
  end
153
- $vim_log.info "MiqVimMod.getVimFolderByFilter: returning object #{miqVimFolder.object_id}"
177
+ logger.info "MiqVimMod.getVimFolderByFilter: returning object #{miqVimFolder.object_id}"
154
178
  (miqVimFolder)
155
179
  end # def getVimFolderByFilter
156
180
 
@@ -158,36 +182,36 @@ class MiqVim < MiqVimInventory
158
182
  # Cluster
159
183
  #
160
184
  def getVimCluster(name)
161
- $vim_log.info "MiqVimMod.getVimCluster: called"
185
+ logger.info "MiqVimMod.getVimCluster: called"
162
186
  miqVimCluster = nil
163
187
  @cacheLock.synchronize(:SH) do
164
188
  raise MiqException::MiqVimResourceNotFound, "Could not find Cluster: #{name}" unless (ch = clusterComputeResources_locked[name])
165
189
  miqVimCluster = MiqVimCluster.new(self, conditionalCopy(ch))
166
190
  end
167
- $vim_log.info "MiqVimMod.getVimCluster: returning object #{miqVimCluster.object_id}"
191
+ logger.info "MiqVimMod.getVimCluster: returning object #{miqVimCluster.object_id}"
168
192
  (miqVimCluster)
169
193
  end # def getVimCluster
170
194
 
171
195
  def getVimClusterByMor(cMor)
172
- $vim_log.info "MiqVimMod.getVimClusterByMor: called"
196
+ logger.info "MiqVimMod.getVimClusterByMor: called"
173
197
  miqVimCluster = nil
174
198
  @cacheLock.synchronize(:SH) do
175
199
  raise MiqException::MiqVimResourceNotFound, "Could not find Cluster: #{cMor}" unless (ch = clusterComputeResourcesByMor_locked[cMor])
176
200
  miqVimCluster = MiqVimCluster.new(self, conditionalCopy(ch))
177
201
  end
178
- $vim_log.info "MiqVimMod.getVimClusterByMor: returning object #{miqVimCluster.object_id}"
202
+ logger.info "MiqVimMod.getVimClusterByMor: returning object #{miqVimCluster.object_id}"
179
203
  (miqVimCluster)
180
204
  end # def getVimClusterByMor
181
205
 
182
206
  def getVimClusterByFilter(filter)
183
- $vim_log.info "MiqVimMod.getVimClusterByFilter: called"
207
+ logger.info "MiqVimMod.getVimClusterByFilter: called"
184
208
  miqVimCluster = nil
185
209
  @cacheLock.synchronize(:SH) do
186
210
  clusters = applyFilter(clusterComputeResourcesByMor_locked.values, filter)
187
211
  raise MiqException::MiqVimResourceNotFound, "getVimClusterByFilter: Could not find Cluster matching filter" if clusters.empty?
188
212
  miqVimCluster = MiqVimCluster.new(self, conditionalCopy(clusters[0]))
189
213
  end
190
- $vim_log.info "MiqVimMod.getVimClusterByFilter: returning object #{miqVimCluster.object_id}"
214
+ logger.info "MiqVimMod.getVimClusterByFilter: returning object #{miqVimCluster.object_id}"
191
215
  (miqVimCluster)
192
216
  end # def getVimClusterByFilter
193
217
 
@@ -195,54 +219,54 @@ class MiqVim < MiqVimInventory
195
219
  # DataStore
196
220
  #
197
221
  def getVimDataStore(dsName)
198
- $vim_log.info "MiqVimMod.getVimDataStore: called"
222
+ logger.info "MiqVimMod.getVimDataStore: called"
199
223
  miqVimDs = nil
200
224
  @cacheLock.synchronize(:SH) do
201
225
  raise MiqException::MiqVimResourceNotFound, "Could not find datastore: #{dsName}" unless (dsh = dataStores_locked[dsName])
202
226
  miqVimDs = MiqVimDataStore.new(self, conditionalCopy(dsh))
203
227
  end
204
- $vim_log.info "MiqVimMod.getVimDataStore: returning object #{miqVimDs.object_id}"
228
+ logger.info "MiqVimMod.getVimDataStore: returning object #{miqVimDs.object_id}"
205
229
  (miqVimDs)
206
230
  end
207
231
 
208
232
  def getVimDataStoreByMor(dsMor)
209
- $vim_log.info "MiqVimMod.getVimDataStoreByMor: called"
233
+ logger.info "MiqVimMod.getVimDataStoreByMor: called"
210
234
  miqVimDs = nil
211
235
  @cacheLock.synchronize(:SH) do
212
236
  raise MiqException::MiqVimResourceNotFound, "Could not find datastore: #{dsMor}" unless (dsh = dataStoresByMor_locked[dsMor])
213
237
  miqVimDs = MiqVimDataStore.new(self, conditionalCopy(dsh))
214
238
  end
215
- $vim_log.info "MiqVimMod.getVimDataStoreByMor: returning object #{miqVimDs.object_id}"
239
+ logger.info "MiqVimMod.getVimDataStoreByMor: returning object #{miqVimDs.object_id}"
216
240
  (miqVimDs)
217
241
  end
218
242
 
219
243
  def getVimPerfHistory
220
244
  miqVimPh = MiqVimPerfHistory.new(self)
221
- $vim_log.info "MiqVimMod.getVimPerfHistory: returning object #{miqVimPh.object_id}"
245
+ logger.info "MiqVimMod.getVimPerfHistory: returning object #{miqVimPh.object_id}"
222
246
  (miqVimPh)
223
247
  end
224
248
 
225
249
  def getVimEventHistory(eventFilterSpec = nil, pgSize = 20)
226
250
  miqVimEh = MiqVimEventHistoryCollector.new(self, eventFilterSpec, pgSize)
227
- $vim_log.info "MiqVimMod.getVimEventHistory: returning object #{miqVimEh.object_id}"
251
+ logger.info "MiqVimMod.getVimEventHistory: returning object #{miqVimEh.object_id}"
228
252
  (miqVimEh)
229
253
  end
230
254
 
231
255
  def getMiqCustomFieldsManager
232
256
  miqVimCfm = MiqCustomFieldsManager.new(self)
233
- $vim_log.info "MiqVimMod.getMiqCustomFieldsManager: returning object #{miqVimCfm.object_id}"
257
+ logger.info "MiqVimMod.getMiqCustomFieldsManager: returning object #{miqVimCfm.object_id}"
234
258
  (miqVimCfm)
235
259
  end
236
260
 
237
261
  def getVimAlarmManager
238
262
  miqVimAm = MiqVimAlarmManager.new(self)
239
- $vim_log.info "MiqVimMod.getVimAlarmManager: returning object #{miqVimAm.object_id}"
263
+ logger.info "MiqVimMod.getVimAlarmManager: returning object #{miqVimAm.object_id}"
240
264
  (miqVimAm)
241
265
  end
242
266
 
243
267
  def getVimCustomizationSpecManager
244
268
  miqVimCsm = MiqVimCustomizationSpecManager.new(self)
245
- $vim_log.info "MiqVimMod.getVimCustomizationSpecManager: returning object #{miqVimCsm.object_id}"
269
+ logger.info "MiqVimMod.getVimCustomizationSpecManager: returning object #{miqVimCsm.object_id}"
246
270
  (miqVimCsm)
247
271
  end
248
272
 
@@ -257,28 +281,28 @@ class MiqVim < MiqVimInventory
257
281
  def start_monitor_updates_thread(preLoad)
258
282
  checkForOrphanedMonitors
259
283
  log_prefix = "MiqVim.initialize (#{@connId})"
260
- $vim_log.info "#{log_prefix}: starting update monitor thread" if $vim_log
284
+ logger.info "#{log_prefix}: starting update monitor thread"
261
285
  @updateThread = Thread.new { monitor(preLoad) }
262
286
  @updateThread[:vim_connection_id] = connId
263
- $vim_log.info "#{log_prefix}: waiting for update monitor to become ready" if $vim_log
287
+ logger.info "#{log_prefix}: waiting for update monitor to become ready"
264
288
  until @updateMonitorReady
265
289
  raise @error unless @error.nil?
266
290
  break unless @updateThread.alive?
267
291
  Thread.pass
268
292
  end
269
- $vim_log.info "#{log_prefix}: update monitor ready" if $vim_log
293
+ logger.info "#{log_prefix}: update monitor ready"
270
294
  end
271
295
 
272
296
  def checkForOrphanedMonitors
273
297
  log_prefix = "MiqVim.checkForOrphanedMonitors (#{@connId})"
274
- $vim_log.debug "#{log_prefix}: called..."
298
+ logger.debug "#{log_prefix}: called..."
275
299
  Thread.list.each do |thr|
276
300
  next unless thr[:vim_connection_id] == connId
277
- $vim_log.error "#{log_prefix}: Terminating orphaned update monitor <#{thr.object_id}>"
301
+ logger.error "#{log_prefix}: Terminating orphaned update monitor <#{thr.object_id}>"
278
302
  thr.raise "Orphaned update monitor (#{@connId}) <#{thr.object_id}>, terminated by <#{Thread.current.object_id}>"
279
303
  thr.wakeup
280
304
  end
281
- $vim_log.debug "#{log_prefix}: done."
305
+ logger.debug "#{log_prefix}: done."
282
306
  end
283
307
 
284
308
  def monitor(preLoad)
@@ -286,7 +310,7 @@ class MiqVim < MiqVimInventory
286
310
  begin
287
311
  monitorUpdates(preLoad)
288
312
  rescue Exception => err
289
- $vim_log.info "#{log_prefix}: returned from monitorUpdates via #{err.class} exception" if $vim_log
313
+ logger.info "#{log_prefix}: returned from monitorUpdates via #{err.class} exception"
290
314
  @error = err
291
315
  end
292
316
  end
@@ -296,9 +320,9 @@ class MiqVim < MiqVimInventory
296
320
  stopUpdateMonitor
297
321
  begin
298
322
  if @updateThread != Thread.current && @updateThread.alive?
299
- $vim_log.info "#{log_prefix}: waiting for Update Monitor Thread...Starting" if $vim_log
323
+ logger.info "#{log_prefix}: waiting for Update Monitor Thread...Starting"
300
324
  @updateThread.join
301
- $vim_log.info "#{log_prefix}: waiting for Update Monitor Thread...Complete" if $vim_log
325
+ logger.info "#{log_prefix}: waiting for Update Monitor Thread...Complete"
302
326
  end
303
327
  rescue
304
328
  end
@@ -8,10 +8,11 @@ require 'VMwareWebService/VimService'
8
8
  class MiqVimClientBase < VimService
9
9
  @@receiveTimeout = 120
10
10
 
11
- attr_reader :server, :username, :password, :connId
11
+ attr_reader :server, :port, :username, :password, :connId
12
12
 
13
- def initialize(server, username, password)
13
+ def initialize(server:, username:, password:, port: 443, ssl_options: {})
14
14
  @server = server
15
+ @port = port
15
16
  @username = username
16
17
  @password = password
17
18
  @connId = "#{@server}_#{@username}"
@@ -19,13 +20,13 @@ class MiqVimClientBase < VimService
19
20
  @receiveTimeout = @@receiveTimeout
20
21
 
21
22
  on_http_client_init do |http_client, _headers|
22
- http_client.ssl_config.verify_mode = OpenSSL::SSL::VERIFY_NONE
23
- http_client.ssl_config.verify_callback = method(:verify_callback).to_proc
24
- http_client.receive_timeout = @receiveTimeout
23
+ http_client.receive_timeout = @receiveTimeout
24
+ http_client.ssl_config.verify_mode = ssl_options[:verify_ssl] || OpenSSL::SSL::VERIFY_NONE
25
+ http_client.ssl_config.cert_store.add_cert(OpenSSL::X509::Certificate.new(ssl_options[:ca_file])) if ssl_options[:ca_file]
25
26
  end
26
27
 
27
- on_log_header { |msg| $vim_log.info msg }
28
- on_log_body { |msg| $vim_log.debug msg } if $miq_wiredump
28
+ on_log_header { |msg| logger.info msg }
29
+ on_log_body { |msg| logger.debug msg } if $miq_wiredump
29
30
 
30
31
  super(:uri => sdk_uri, :version => 1)
31
32
 
@@ -34,7 +35,7 @@ class MiqVimClientBase < VimService
34
35
  end
35
36
 
36
37
  def sdk_uri
37
- URI::HTTPS.build(:host => server, :path => "/sdk")
38
+ URI::HTTPS.build(:host => server, :port => port, :path => "/sdk")
38
39
  end
39
40
 
40
41
  def self.receiveTimeout=(val)
@@ -59,7 +60,7 @@ class MiqVimClientBase < VimService
59
60
  end
60
61
 
61
62
  def connect
62
- $vim_log.debug "#{self.class.name}.connect(#{@connId}): #{$PROGRAM_NAME} #{ARGV.join(' ')}" if $vim_log.debug?
63
+ logger.debug { "#{self.class.name}.connect(#{@connId}): #{$PROGRAM_NAME} #{ARGV.join(' ')}" }
63
64
  @connLock.synchronize(:EX) do
64
65
  return if @connected
65
66
  login(@sic.sessionManager, @username, @password)
@@ -68,7 +69,7 @@ class MiqVimClientBase < VimService
68
69
  end
69
70
 
70
71
  def disconnect
71
- $vim_log.debug "#{self.class.name}.disconnect(#{@connId}): #{$PROGRAM_NAME} #{ARGV.join(' ')}" if $vim_log.debug?
72
+ logger.debug { "#{self.class.name}.disconnect(#{@connId}): #{$PROGRAM_NAME} #{ARGV.join(' ')}" }
72
73
  @connLock.synchronize(:EX) do
73
74
  return unless @connected
74
75
  logout(@sic.sessionManager)
@@ -1,4 +1,8 @@
1
+ require 'VMwareWebService/logging'
2
+
1
3
  class MiqVimCluster
4
+ include VMwareWebService::Logging
5
+
2
6
  attr_reader :name, :invObj
3
7
 
4
8
  def initialize(invObj, ch)
@@ -44,9 +48,9 @@ class MiqVimCluster
44
48
  cs.vmFolder = ah[:vmFolder] unless ah[:vmFolder].nil?
45
49
  end
46
50
 
47
- $vim_log.info "MiqVimCluster(#{@invObj.server}, #{@invObj.username}).addHost: calling addHost_Task" if $vim_log
51
+ logger.info "MiqVimCluster(#{@invObj.server}, #{@invObj.username}).addHost: calling addHost_Task"
48
52
  taskMor = @invObj.addHost_Task(@cMor, cspec, ah[:asConnected].to_s, ah[:resourcePool], ah[:license])
49
- $vim_log.info "MiqVimCluster(#{@invObj.server}, #{@invObj.username}).addHost: returned from addHost_Task" if $vim_log
53
+ logger.info "MiqVimCluster(#{@invObj.server}, #{@invObj.username}).addHost: returned from addHost_Task"
50
54
  return taskMor unless ah[:wait]
51
55
  waitForTask(taskMor)
52
56
  end # def addHost