|
31 | 31 | EnvironmentRegisterProtectionSourceParametersEnum as env_enum,
|
32 | 32 | )
|
33 | 33 | from cohesity_management_sdk.models.exclude_type_enum import ExcludeTypeEnum
|
| 34 | + from cohesity_management_sdk.models.external_target_type_enum import ( |
| 35 | + ExternalTargetTypeEnum, |
| 36 | + ) |
34 | 37 | from cohesity_management_sdk.models.external_client_subnets import (
|
35 | 38 | ExternalClientSubnets,
|
36 | 39 | )
|
@@ -278,94 +281,39 @@ def create_vaults():
|
278 | 281 | external_targets[vault.id] = available_vaults_dict[vault.name]
|
279 | 282 | imported_res_dict["External Targets"].append(vault.name)
|
280 | 283 | continue
|
281 |
| - if vault.config.qstar: # Qstar target. |
282 |
| - try: |
283 |
| - body = Vault() |
284 |
| - _construct_body(body, vault) |
| 284 | + try: |
| 285 | + body = Vault() |
| 286 | + _construct_body(body, vault) |
| 287 | + if vault.config.qstar: # Qstar target. |
285 | 288 | password = configparser.get(vault.name, "password")
|
286 | 289 | body.config.qstar.password = password
|
287 |
| - resp = cohesity_client.vaults.create_vault(body) |
288 |
| - external_targets[vault.id] = resp.id |
289 |
| - imported_res_dict["External Targets"].append(body.name) |
290 |
| - time.sleep(sleep_time) |
291 |
| - except (APIException, RequestErrorErrorException) as e: |
292 |
| - ERROR_LIST.append( |
293 |
| - "Error Adding Qstar Target: %s, Failed with error: %s" |
294 |
| - % (vault.name, e) |
295 |
| - ) |
296 |
| - except Exception as err: |
297 |
| - ERROR_LIST.append( |
298 |
| - "Please add correct config for %s in " |
299 |
| - "config.ini, err is %s" % (vault.name, err) |
300 |
| - ) |
301 |
| - |
302 |
| - elif vault.config.azure: # Azure Hot Blob target. |
303 |
| - try: |
304 |
| - body = Vault() |
305 |
| - _construct_body(body, vault) |
306 |
| - storage_access_key = configparser.get( |
307 |
| - vault.name, "storage_access_key") |
| 290 | + elif vault.config.azure: # Azure Hot Blob target. |
| 291 | + storage_access_key = configparser.get(vault.name, "storage_access_key") |
| 292 | + body.external_target_type = ExternalTargetTypeEnum.KAZURE |
308 | 293 | body.config.azure.storage_access_key = storage_access_key
|
309 |
| - resp = cohesity_client.vaults.create_vault(body) |
310 |
| - external_targets[vault.id] = resp.id |
311 |
| - imported_res_dict["External Targets"].append(body.name) |
312 |
| - time.sleep(sleep_time) |
313 |
| - except (APIException, RequestErrorErrorException) as e: |
314 |
| - ERROR_LIST.append( |
315 |
| - "Error Adding Azure hot blob Target: %s, Failed with " |
316 |
| - "error: %s" % (vault.name, e) |
317 |
| - ) |
318 |
| - except Exception as err: |
319 |
| - ERROR_LIST.append( |
320 |
| - "Please add correct config for %s in " |
321 |
| - "config.ini, err is %s" % (vault.name, err) |
322 |
| - ) |
323 |
| - |
324 |
| - elif vault.config.amazon: # Amazon s3 targets |
325 |
| - try: |
326 |
| - body = Vault() |
327 |
| - _construct_body(body, vault) |
| 294 | + elif vault.config.amazon: # Amazon s3 targets |
328 | 295 | secret_key = configparser.get(vault.name, "secret_access_key")
|
329 | 296 | body.config.amazon.secret_access_key = secret_key
|
330 |
| - resp = cohesity_client.vaults.create_vault(body) |
331 |
| - external_targets[vault.id] = resp.id |
332 |
| - imported_res_dict["External Targets"].append(body.name) |
333 |
| - time.sleep(sleep_time) |
334 |
| - except RequestErrorErrorException as e: |
335 |
| - ERROR_LIST.append( |
336 |
| - "Error Adding Amazon S3 Target: %s, Failed with error: %s" |
337 |
| - % (vault.name, e) |
338 |
| - ) |
339 |
| - except APIException as e: |
340 |
| - ERROR_LIST.append( |
341 |
| - "Error Adding Amazon S3 Target: %s, Failed with error: %s" |
342 |
| - % (vault.name, e) |
343 |
| - ) |
344 |
| - except Exception as err: |
345 |
| - ERROR_LIST.append( |
346 |
| - "Please add correct config for %s in " "config.ini" % vault.name |
347 |
| - ) |
348 |
| - elif vault.config.nas: # Generic s3 targets |
349 |
| - body = Vault() |
350 |
| - _construct_body(body, vault) |
351 |
| - try: |
352 |
| - resp = cohesity_client.vaults.create_vault(body) |
353 |
| - external_targets[vault.id] = resp.id |
354 |
| - imported_res_dict["External Targets"].append(body.name) |
355 |
| - except RequestErrorErrorException as e: |
356 |
| - ERROR_LIST.append( |
357 |
| - "Error Adding S3 Target: %s, Failed with error: %s" |
358 |
| - % (vault.name, e) |
359 |
| - ) |
360 |
| - except APIException as e: |
361 |
| - ERROR_LIST.append( |
362 |
| - "Error Adding S3 Target: %s, Failed with error: %s" |
363 |
| - % (vault.name, e) |
364 |
| - ) |
365 |
| - except Exception as err: |
366 |
| - ERROR_LIST.append( |
367 |
| - "Please add correct config for %s in " "config.ini" % vault.name |
| 297 | + elif vault.config.google: |
| 298 | + private_key = ( |
| 299 | + configparser.get(vault.name, "client_private_key") |
| 300 | + .encode() |
| 301 | + .decode("unicode-escape") |
368 | 302 | )
|
| 303 | + body.config.google.client_private_key = private_key |
| 304 | + resp = cohesity_client.vaults.create_vault(body) |
| 305 | + external_targets[vault.id] = resp.id |
| 306 | + imported_res_dict["External Targets"].append(body.name) |
| 307 | + time.sleep(sleep_time) |
| 308 | + except (APIException, RequestErrorErrorException) as e: |
| 309 | + ERROR_LIST.append( |
| 310 | + "Error Adding Target: %s, Failed with error: %s" % (vault.name, e) |
| 311 | + ) |
| 312 | + except Exception as err: |
| 313 | + ERROR_LIST.append( |
| 314 | + "Please add correct config for %s in " |
| 315 | + "config.ini, err is %s" % (vault.name, err) |
| 316 | + ) |
369 | 317 |
|
370 | 318 |
|
371 | 319 | def check_register_status(name, environment, sleep_count=6):
|
|
0 commit comments