oci-cli 3.65.0__py3-none-any.whl → 3.65.1__py3-none-any.whl

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.
Files changed (144) hide show
  1. oci_cli/bin/dbmulticloud.psm1 +39 -4
  2. oci_cli/bin/mysql.psm1 +4 -2
  3. oci_cli/help_text_producer/data_files/text/cmdref/cloud-guard/condition-metadata-type/get.txt +1 -1
  4. oci_cli/help_text_producer/data_files/text/cmdref/cloud-guard/detector-recipe/create.txt +1 -1
  5. oci_cli/help_text_producer/data_files/text/cmdref/cloud-guard/managed-list/create.txt +5 -1
  6. oci_cli/help_text_producer/data_files/text/cmdref/cloud-guard/managed-list/list.txt +1 -1
  7. oci_cli/help_text_producer/data_files/text/cmdref/cloud-guard/managed-list/update.txt +4 -0
  8. oci_cli/help_text_producer/data_files/text/cmdref/cloud-guard/problem/list.txt +1 -1
  9. oci_cli/help_text_producer/data_files/text/cmdref/cloud-guard/problem-aggregation/request-summarized-problems.txt +1 -1
  10. oci_cli/help_text_producer/data_files/text/cmdref/cloud-guard/resource/list.txt +1 -1
  11. oci_cli/help_text_producer/data_files/text/cmdref/cloud-guard/resource-type-summary/list-resource-types.txt +1 -1
  12. oci_cli/help_text_producer/data_files/text/cmdref/db/cloud-vm-cluster/register-cloud-vm-cluster-pkcs.txt +1 -1
  13. oci_cli/help_text_producer/data_files/text/cmdref/db/cloud-vm-cluster/unregister-cloud-vm-cluster-pkcs.txt +1 -1
  14. oci_cli/help_text_producer/data_files/text/cmdref/db/data-guard-association/create-data-guard-association-google-cloud-provider-encryption-key-details.txt +206 -0
  15. oci_cli/help_text_producer/data_files/text/cmdref/db/data-guard-association.txt +3 -0
  16. oci_cli/help_text_producer/data_files/text/cmdref/db/database/change-encryption-key-location-google-cloud-provider-encryption-key-details.txt +136 -0
  17. oci_cli/help_text_producer/data_files/text/cmdref/db/database/create-database-create-stand-by-database-details.txt +6 -0
  18. oci_cli/help_text_producer/data_files/text/cmdref/db/database/create-database-from-backup.txt +6 -0
  19. oci_cli/help_text_producer/data_files/text/cmdref/db/database/create-standby-database.txt +6 -0
  20. oci_cli/help_text_producer/data_files/text/cmdref/db/database.txt +3 -0
  21. oci_cli/help_text_producer/data_files/text/cmdref/db/exascale-db-storage-vault/create.txt +10 -0
  22. oci_cli/help_text_producer/data_files/text/cmdref/db/exascale-db-storage-vault/update.txt +10 -0
  23. oci_cli/help_text_producer/data_files/text/cmdref/db.txt +6 -0
  24. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/multi-cloud-resource-discovery/change-compartment.txt +6 -6
  25. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/multi-cloud-resource-discovery/create.txt +24 -4
  26. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/multi-cloud-resource-discovery/delete.txt +3 -2
  27. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/multi-cloud-resource-discovery/get.txt +3 -3
  28. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/multi-cloud-resource-discovery/list.txt +14 -7
  29. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/multi-cloud-resource-discovery/update.txt +7 -6
  30. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/multi-cloud-resource-discovery.txt +57 -12
  31. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-container/change-compartment.txt +3 -3
  32. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-container/create.txt +6 -8
  33. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-container/delete.txt +2 -2
  34. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-container/get.txt +3 -3
  35. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-container/list.txt +9 -5
  36. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-container/update.txt +8 -8
  37. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-container.txt +57 -12
  38. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-mount/change-compartment.txt +2 -2
  39. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-mount/create.txt +8 -8
  40. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-mount/delete.txt +4 -3
  41. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-mount/get.txt +3 -3
  42. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-mount/list.txt +7 -5
  43. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-mount/update.txt +8 -6
  44. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-blob-mount.txt +57 -12
  45. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-connector/change-compartment.txt +4 -4
  46. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-connector/create.txt +11 -12
  47. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-connector/delete.txt +2 -3
  48. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-connector/get.txt +3 -2
  49. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-connector/list.txt +6 -5
  50. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-connector/patch.txt +2 -2
  51. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-connector/update.txt +12 -13
  52. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-connector.txt +61 -16
  53. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-key/get.txt +3 -3
  54. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-key/list.txt +7 -4
  55. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-key.txt +57 -12
  56. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault/change-compartment.txt +3 -3
  57. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault/create.txt +10 -10
  58. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault/delete.txt +2 -2
  59. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault/get.txt +5 -3
  60. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault/list.txt +8 -5
  61. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault/refresh.txt +6 -2
  62. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault/update.txt +17 -12
  63. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault-association/cascading-delete.txt +2 -2
  64. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault-association/change-compartment.txt +2 -2
  65. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault-association/create.txt +7 -6
  66. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault-association/delete.txt +2 -2
  67. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault-association/get.txt +3 -3
  68. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault-association/list.txt +9 -5
  69. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault-association/update.txt +9 -7
  70. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault-association.txt +61 -16
  71. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-azure-vault.txt +61 -16
  72. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-identity-connector/change-compartment.txt +132 -0
  73. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-identity-connector/create.txt +195 -0
  74. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-identity-connector/delete.txt +130 -0
  75. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-identity-connector/get.txt +92 -0
  76. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-identity-connector/list.txt +148 -0
  77. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-identity-connector/refresh.txt +125 -0
  78. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-identity-connector/update.txt +199 -0
  79. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-identity-connector.txt +29 -0
  80. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key/get.txt +92 -0
  81. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key/list.txt +150 -0
  82. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key-ring/change-compartment.txt +135 -0
  83. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key-ring/create.txt +199 -0
  84. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key-ring/delete.txt +133 -0
  85. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key-ring/get.txt +113 -0
  86. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key-ring/list.txt +151 -0
  87. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key-ring/refresh.txt +133 -0
  88. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key-ring/update.txt +174 -0
  89. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key-ring.txt +26 -0
  90. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/oracle-db-gcp-key.txt +16 -0
  91. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud/work-request.txt +61 -16
  92. oci_cli/help_text_producer/data_files/text/cmdref/dbmulticloud.txt +95 -12
  93. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-error/{list-errors.txt → list.txt} +5 -5
  94. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-error.txt +1 -1
  95. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-log-entry/{list-logs.txt → list-work-request-logs.txt} +5 -5
  96. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request/work-request-log-entry.txt +1 -1
  97. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control/work-request.txt +2 -2
  98. oci_cli/help_text_producer/data_files/text/cmdref/delegate-access-control.txt +2 -2
  99. oci_cli/help_text_producer/data_files/text/cmdref/generative-ai/dedicated-ai-cluster/create.txt +2 -1
  100. oci_cli/help_text_producer/data_files/text/cmdref/generative-ai/endpoint-collection/list-endpoints.txt +4 -0
  101. oci_cli/help_text_producer/data_files/text/cmdref/generative-ai-inference/chat-result/chat-generic-chat-request.txt +11 -0
  102. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-error/{list-errors.txt → list.txt} +5 -5
  103. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-error.txt +1 -1
  104. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-log-entry/{list-logs.txt → list-work-request-logs.txt} +5 -5
  105. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request/work-request-log-entry.txt +1 -1
  106. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane/work-request.txt +2 -2
  107. oci_cli/help_text_producer/data_files/text/cmdref/governance-rules-control-plane.txt +2 -2
  108. oci_cli/help_text_producer/data_files/text/cmdref/mysql/backup/list.txt +16 -0
  109. oci_cli/help_text_producer/data_files/text/cmdref/mysql/backup/validate.txt +141 -0
  110. oci_cli/help_text_producer/data_files/text/cmdref/mysql/backup.txt +2 -0
  111. oci_cli/help_text_producer/data_files/text/cmdref/mysql.txt +2 -0
  112. oci_cli/help_text_producer/data_files/text/cmdref/organizations/work-request-error/{list-errors.txt → list.txt} +5 -5
  113. oci_cli/help_text_producer/data_files/text/cmdref/organizations/work-request-error.txt +1 -1
  114. oci_cli/help_text_producer/data_files/text/cmdref/organizations.txt +1 -1
  115. oci_cli/help_text_producer/data_files/text/index.txt +1 -1
  116. oci_cli/service_mapping.py +1 -1
  117. oci_cli/version.py +1 -1
  118. {oci_cli-3.65.0.dist-info → oci_cli-3.65.1.dist-info}/METADATA +2 -2
  119. {oci_cli-3.65.0.dist-info → oci_cli-3.65.1.dist-info}/RECORD +144 -117
  120. services/cloud_guard/src/oci_cli_cloud_guard/generated/cloudguard_cli.py +18 -10
  121. services/database/src/oci_cli_database/database_cli_extended.py +11 -2
  122. services/database/src/oci_cli_database/generated/database_cli.py +208 -9
  123. services/dbmulticloud/src/oci_cli_db_multicloud_gcp_provider/__init__.py +4 -0
  124. services/dbmulticloud/src/oci_cli_db_multicloud_gcp_provider/dbmulticloudgcpprovider_cli_extended.py +18 -0
  125. services/dbmulticloud/src/oci_cli_db_multicloud_gcp_provider/generated/__init__.py +4 -0
  126. services/dbmulticloud/src/oci_cli_db_multicloud_gcp_provider/generated/client_mappings.py +14 -0
  127. services/dbmulticloud/src/oci_cli_db_multicloud_gcp_provider/generated/dbmulticloudgcpprovider_cli.py +1057 -0
  128. services/dbmulticloud/src/oci_cli_dbmulticloud/generated/dbmulticloud_service_cli.py +27 -8
  129. services/dbmulticloud/src/oci_cli_multi_cloud_resource_discovery/generated/multicloudresourcediscovery_cli.py +63 -37
  130. services/dbmulticloud/src/oci_cli_oracle_db_azure_blob_container/generated/oracledbazureblobcontainer_cli.py +52 -33
  131. services/dbmulticloud/src/oci_cli_oracle_db_azure_blob_mount/generated/oracledbazureblobmount_cli.py +49 -30
  132. services/dbmulticloud/src/oci_cli_oracle_db_azure_connector/generated/oracledbazureconnector_cli.py +113 -39
  133. services/dbmulticloud/src/oci_cli_oracle_db_azure_key/generated/oracledbazurekey_cli.py +34 -15
  134. services/dbmulticloud/src/oci_cli_oracle_db_azure_vault/generated/oracledbazurevault_cli.py +69 -42
  135. services/dbmulticloud/src/oci_cli_oracle_db_azure_vault_association/generated/oracledbazurevaultassociation_cli.py +52 -33
  136. services/dbmulticloud/src/oci_cli_work_request/generated/workrequest_cli.py +27 -8
  137. services/generative_ai/src/oci_cli_generative_ai/generated/generativeai_cli.py +5 -2
  138. services/generative_ai_inference/src/oci_cli_generative_ai_inference/generated/generativeaiinference_cli.py +7 -3
  139. services/mysql/src/oci_cli_db_backups/generated/dbbackups_cli.py +70 -1
  140. {oci_cli-3.65.0.dist-info → oci_cli-3.65.1.dist-info}/LICENSE.txt +0 -0
  141. {oci_cli-3.65.0.dist-info → oci_cli-3.65.1.dist-info}/THIRD_PARTY_LICENSES.txt +0 -0
  142. {oci_cli-3.65.0.dist-info → oci_cli-3.65.1.dist-info}/WHEEL +0 -0
  143. {oci_cli-3.65.0.dist-info → oci_cli-3.65.1.dist-info}/entry_points.txt +0 -0
  144. {oci_cli-3.65.0.dist-info → oci_cli-3.65.1.dist-info}/top_level.txt +0 -0
@@ -1499,7 +1499,7 @@ Avoid entering confidential information.""")
1499
1499
  @cli_util.option('--description', help=u"""Detector recipe description.
1500
1500
 
1501
1501
  Avoid entering confidential information.""")
1502
- @cli_util.option('--detector', type=custom_types.CliCaseInsensitiveChoice(["IAAS_ACTIVITY_DETECTOR", "IAAS_CONFIGURATION_DETECTOR", "IAAS_THREAT_DETECTOR", "IAAS_LOG_INSIGHT_DETECTOR", "IAAS_INSTANCE_SECURITY_DETECTOR"]), help=u"""Detector for the rule""")
1502
+ @cli_util.option('--detector', type=custom_types.CliCaseInsensitiveChoice(["IAAS_ACTIVITY_DETECTOR", "IAAS_CONFIGURATION_DETECTOR", "IAAS_THREAT_DETECTOR", "IAAS_LOG_INSIGHT_DETECTOR", "IAAS_INSTANCE_SECURITY_DETECTOR", "IAAS_CONTAINER_SECURITY_DETECTOR"]), help=u"""Detector for the rule""")
1503
1503
  @cli_util.option('--source-detector-recipe-id', help=u"""The ID of the source detector recipe""")
1504
1504
  @cli_util.option('--detector-rules', type=custom_types.CLI_COMPLEX_TYPE, help=u"""Detector rules to override from source detector recipe
1505
1505
 
@@ -1639,8 +1639,9 @@ Avoid entering confidential information.""")
1639
1639
  @cli_util.option('--description', help=u"""Managed list description
1640
1640
 
1641
1641
  Avoid entering confidential information.""")
1642
- @cli_util.option('--list-type', type=custom_types.CliCaseInsensitiveChoice(["CIDR_BLOCK", "USERS", "GROUPS", "IPV4ADDRESS", "IPV6ADDRESS", "RESOURCE_OCID", "REGION", "COUNTRY", "STATE", "CITY", "TAGS", "GENERIC", "FUSION_APPS_ROLE", "FUSION_APPS_PERMISSION"]), help=u"""Type of information stored in the list""")
1642
+ @cli_util.option('--list-type', type=custom_types.CliCaseInsensitiveChoice(["CIDR_BLOCK", "USERS", "GROUPS", "IPV4ADDRESS", "IPV6ADDRESS", "RESOURCE_OCID", "REGION", "COUNTRY", "STATE", "CITY", "TAGS", "GENERIC", "FUSION_APPS_ROLE", "FUSION_APPS_PERMISSION", "NAMESPACE_SELECTOR", "POD_RESOURCE_SELECTOR"]), help=u"""Type of information stored in the list""")
1643
1643
  @cli_util.option('--list-items', type=custom_types.CLI_COMPLEX_TYPE, help=u"""List of items in the managed list""" + custom_types.cli_complex_type.COMPLEX_TYPE_HELP)
1644
+ @cli_util.option('--group', help=u"""Managed list type group""")
1644
1645
  @cli_util.option('--freeform-tags', type=custom_types.CLI_COMPLEX_TYPE, help=u"""Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{\"bar-key\": \"value\"}`
1645
1646
 
1646
1647
  Avoid entering confidential information.""" + custom_types.cli_complex_type.COMPLEX_TYPE_HELP)
@@ -1653,7 +1654,7 @@ Avoid entering confidential information.""" + custom_types.cli_complex_type.COMP
1653
1654
  @click.pass_context
1654
1655
  @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={'list-items': {'module': 'cloud_guard', 'class': 'list[string]'}, 'freeform-tags': {'module': 'cloud_guard', 'class': 'dict(str, string)'}, 'defined-tags': {'module': 'cloud_guard', 'class': 'dict(str, dict(str, object))'}}, output_type={'module': 'cloud_guard', 'class': 'ManagedList'})
1655
1656
  @cli_util.wrap_exceptions
1656
- def create_managed_list(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, display_name, compartment_id, source_managed_list_id, description, list_type, list_items, freeform_tags, defined_tags):
1657
+ def create_managed_list(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, display_name, compartment_id, source_managed_list_id, description, list_type, list_items, group, freeform_tags, defined_tags):
1657
1658
 
1658
1659
  kwargs = {}
1659
1660
  kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(ctx.obj['request_id'])
@@ -1674,6 +1675,9 @@ def create_managed_list(ctx, from_json, wait_for_state, max_wait_seconds, wait_i
1674
1675
  if list_items is not None:
1675
1676
  _details['listItems'] = cli_util.parse_json_parameter("list_items", list_items)
1676
1677
 
1678
+ if group is not None:
1679
+ _details['group'] = group
1680
+
1677
1681
  if freeform_tags is not None:
1678
1682
  _details['freeformTags'] = cli_util.parse_json_parameter("freeform_tags", freeform_tags)
1679
1683
 
@@ -3093,7 +3097,7 @@ def get_adhoc_query_result_content(ctx, from_json, file, adhoc_query_id):
3093
3097
 
3094
3098
 
3095
3099
  @condition_metadata_type_group.command(name=cli_util.override('cloud_guard.get_condition_metadata_type.command_name', 'get'), help=u"""Returns a ConditionMetatDataType resource with its details. \n[Command Reference](getConditionMetadataType)""")
3096
- @cli_util.option('--condition-metadata-type-id', required=True, type=custom_types.CliCaseInsensitiveChoice(["ActivityCondition", "SecurityCondition", "CloudGuardCondition", "InstanceSecurityCondition", "ThreatCondition"]), help=u"""The type of the condition metadata.""")
3100
+ @cli_util.option('--condition-metadata-type-id', required=True, type=custom_types.CliCaseInsensitiveChoice(["ActivityCondition", "SecurityCondition", "CloudGuardCondition", "InstanceSecurityCondition", "ThreatCondition", "ContainerCondition"]), help=u"""The type of the condition metadata.""")
3097
3101
  @cli_util.option('--service-type', help=u"""Service type filter for the condition metadata.""")
3098
3102
  @cli_util.option('--resource-type', help=u"""Resource filter for the condition metadata.""")
3099
3103
  @json_skeleton_utils.get_cli_json_input_option({})
@@ -4578,7 +4582,7 @@ The parameter `compartmentIdInSubtree` applies when you perform ListManagedLists
4578
4582
  @cli_util.option('--display-name', help=u"""A filter to return only resources that match the entire display name given.""")
4579
4583
  @cli_util.option('--resource-metadata-only', type=click.BOOL, help=u"""Default is false. When set to true, the list of all Oracle-managed resources metadata supported by Cloud Guard is returned.""")
4580
4584
  @cli_util.option('--lifecycle-state', type=custom_types.CliCaseInsensitiveChoice(["CREATING", "UPDATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", "FAILED"]), help=u"""The field lifecycle state. Only one state can be provided. Default value for state is active. If no value is specified state is active.""")
4581
- @cli_util.option('--list-type', type=custom_types.CliCaseInsensitiveChoice(["CIDR_BLOCK", "USERS", "GROUPS", "IPV4ADDRESS", "IPV6ADDRESS", "RESOURCE_OCID", "REGION", "COUNTRY", "STATE", "CITY", "TAGS", "GENERIC", "FUSION_APPS_ROLE", "FUSION_APPS_PERMISSION"]), help=u"""The type of managed list.""")
4585
+ @cli_util.option('--list-type', type=custom_types.CliCaseInsensitiveChoice(["CIDR_BLOCK", "USERS", "GROUPS", "IPV4ADDRESS", "IPV6ADDRESS", "RESOURCE_OCID", "REGION", "COUNTRY", "STATE", "CITY", "TAGS", "GENERIC", "FUSION_APPS_ROLE", "FUSION_APPS_PERMISSION", "NAMESPACE_SELECTOR", "POD_RESOURCE_SELECTOR"]), help=u"""The type of managed list.""")
4582
4586
  @cli_util.option('--limit', type=click.INT, help=u"""The maximum number of items to return""")
4583
4587
  @cli_util.option('--page', help=u"""The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.""")
4584
4588
  @cli_util.option('--compartment-id-in-subtree', type=click.BOOL, help=u"""Default is false. When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are returned depending on the setting of `accessLevel`.""")
@@ -4896,7 +4900,7 @@ The parameter `compartmentIdInSubtree` applies when you perform ListProblems on
4896
4900
  @cli_util.option('--country', help=u"""Country of the problem.""")
4897
4901
  @cli_util.option('--label', help=u"""User-defined label associated with the problem.""")
4898
4902
  @cli_util.option('--detector-rule-id-list', multiple=True, help=u"""Comma seperated list of detector rule IDs to be passed in to match against Problems.""")
4899
- @cli_util.option('--detector-type', type=custom_types.CliCaseInsensitiveChoice(["IAAS_ACTIVITY_DETECTOR", "IAAS_CONFIGURATION_DETECTOR", "IAAS_THREAT_DETECTOR", "IAAS_LOG_INSIGHT_DETECTOR", "IAAS_INSTANCE_SECURITY_DETECTOR"]), help=u"""The field to list the problems by detector type.""")
4903
+ @cli_util.option('--detector-type', type=custom_types.CliCaseInsensitiveChoice(["IAAS_ACTIVITY_DETECTOR", "IAAS_CONFIGURATION_DETECTOR", "IAAS_THREAT_DETECTOR", "IAAS_LOG_INSIGHT_DETECTOR", "IAAS_INSTANCE_SECURITY_DETECTOR", "IAAS_CONTAINER_SECURITY_DETECTOR"]), help=u"""The field to list the problems by detector type.""")
4900
4904
  @cli_util.option('--target-id', help=u"""The ID of the target in which to list resources.""")
4901
4905
  @cli_util.option('--problem-category', type=custom_types.CliCaseInsensitiveChoice(["SECURITY_ZONE"]), help=u"""Setting this to `SECURITY_ZONE` returns only security zone-related violations.""")
4902
4906
  @cli_util.option('--compartment-id-in-subtree', type=click.BOOL, help=u"""Default is false. When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are returned depending on the setting of `accessLevel`.""")
@@ -5330,7 +5334,7 @@ def list_resource_profiles(ctx, from_json, all_pages, page_size, compartment_id,
5330
5334
 
5331
5335
  @resource_type_summary_group.command(name=cli_util.override('cloud_guard.list_resource_types.command_name', 'list-resource-types'), help=u"""Returns a single ResourceTypeCollection resource, containing a list of resource types, identified by parameters specified. \n[Command Reference](listResourceTypes)""")
5332
5336
  @cli_util.option('--compartment-id', required=True, help=u"""The OCID of the compartment in which to list resources.""")
5333
- @cli_util.option('--detector-id', type=custom_types.CliCaseInsensitiveChoice(["IAAS_ACTIVITY_DETECTOR", "IAAS_CONFIGURATION_DETECTOR", "IAAS_THREAT_DETECTOR", "IAAS_LOG_INSIGHT_DETECTOR", "IAAS_INSTANCE_SECURITY_DETECTOR"]), help=u"""Detector type.""")
5337
+ @cli_util.option('--detector-id', type=custom_types.CliCaseInsensitiveChoice(["IAAS_ACTIVITY_DETECTOR", "IAAS_CONFIGURATION_DETECTOR", "IAAS_THREAT_DETECTOR", "IAAS_LOG_INSIGHT_DETECTOR", "IAAS_INSTANCE_SECURITY_DETECTOR", "IAAS_CONTAINER_SECURITY_DETECTOR"]), help=u"""Detector type.""")
5334
5338
  @cli_util.option('--lifecycle-state', type=custom_types.CliCaseInsensitiveChoice(["CREATING", "UPDATING", "ACTIVE", "INACTIVE", "DELETING", "DELETED", "FAILED"]), help=u"""The field lifecycle state. Only one state can be provided. Default value for state is active. If no value is specified state is active.""")
5335
5339
  @cli_util.option('--limit', type=click.INT, help=u"""The maximum number of items to return""")
5336
5340
  @cli_util.option('--page', help=u"""The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.""")
@@ -5469,7 +5473,7 @@ The parameter `compartmentIdInSubtree` applies when you perform ListResources on
5469
5473
  @cli_util.option('--risk-level-greater-than', help=u"""To filter risk level greater than the one mentioned in query param""")
5470
5474
  @cli_util.option('--risk-level-less-than', help=u"""To filter risk level less than the one mentioned in query param""")
5471
5475
  @cli_util.option('--detector-rule-id-list', multiple=True, help=u"""Comma seperated list of detector rule IDs to be passed in to match against Problems.""")
5472
- @cli_util.option('--detector-type', type=custom_types.CliCaseInsensitiveChoice(["IAAS_ACTIVITY_DETECTOR", "IAAS_CONFIGURATION_DETECTOR", "IAAS_THREAT_DETECTOR", "IAAS_LOG_INSIGHT_DETECTOR", "IAAS_INSTANCE_SECURITY_DETECTOR"]), help=u"""The field to list the problems by detector type.""")
5476
+ @cli_util.option('--detector-type', type=custom_types.CliCaseInsensitiveChoice(["IAAS_ACTIVITY_DETECTOR", "IAAS_CONFIGURATION_DETECTOR", "IAAS_THREAT_DETECTOR", "IAAS_LOG_INSIGHT_DETECTOR", "IAAS_INSTANCE_SECURITY_DETECTOR", "IAAS_CONTAINER_SECURITY_DETECTOR"]), help=u"""The field to list the problems by detector type.""")
5473
5477
  @cli_util.option('--limit', type=click.INT, help=u"""The maximum number of items to return""")
5474
5478
  @cli_util.option('--page', help=u"""The page token representing the page at which to start retrieving results. This is usually retrieved from a previous list call.""")
5475
5479
  @cli_util.option('--compartment-id-in-subtree', type=click.BOOL, help=u"""Default is false. When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are returned depending on the setting of `accessLevel`.""")
@@ -7228,7 +7232,7 @@ def request_summarized_activity_problems(ctx, from_json, compartment_id, compart
7228
7232
  The parameter `accessLevel` specifies whether to return only those compartments for which the requestor has INSPECT permissions on at least one resource directly or indirectly (ACCESSIBLE) (the resource can be in a subcompartment) or to return Not Authorized if Principal doesn't have access to even one of the child compartments. This is valid only when `compartmentIdInSubtree` is set to `true`.
7229
7233
 
7230
7234
  The parameter `compartmentIdInSubtree` applies when you perform summarize API on the `compartmentId` passed and when it is set to true, the entire hierarchy of compartments can be returned. To get a full list of all compartments and subcompartments in the tenancy (root compartment), set the parameter `compartmentIdInSubtree` to true and `accessLevel` to ACCESSIBLE. \n[Command Reference](requestSummarizedProblems)""")
7231
- @cli_util.option('--list-dimensions', required=True, type=custom_types.CliCaseInsensitiveChoice(["RESOURCE_TYPE", "REGION", "COMPARTMENT_ID", "RISK_LEVEL"]), multiple=True, help=u"""The possible attributes based on which the problems can be distinguished.""")
7235
+ @cli_util.option('--list-dimensions', required=True, type=custom_types.CliCaseInsensitiveChoice(["RESOURCE_TYPE", "REGION", "COMPARTMENT_ID", "RISK_LEVEL", "DETECTOR_ID", "TARGET_ID"]), multiple=True, help=u"""The possible attributes based on which the problems can be distinguished.""")
7232
7236
  @cli_util.option('--compartment-id', required=True, help=u"""The OCID of the compartment in which to list resources.""")
7233
7237
  @cli_util.option('--compartment-id-in-subtree', type=click.BOOL, help=u"""Default is false. When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are returned depending on the setting of `accessLevel`.""")
7234
7238
  @cli_util.option('--access-level', type=custom_types.CliCaseInsensitiveChoice(["RESTRICTED", "ACCESSIBLE"]), help=u"""Valid values are `RESTRICTED` and `ACCESSIBLE`. Default is `RESTRICTED`. Setting this to `ACCESSIBLE` returns only those compartments for which the user has INSPECT permissions directly or indirectly (permissions can be on a resource in a subcompartment). When set to `RESTRICTED` permissions are checked and no partial results are displayed.""")
@@ -8578,6 +8582,7 @@ def update_detector_recipe_detector_rule(ctx, from_json, force, wait_for_state,
8578
8582
  Avoid entering confidential information.""")
8579
8583
  @cli_util.option('--description', help=u"""Managed list description. Avoid entering confidential information.""")
8580
8584
  @cli_util.option('--list-items', type=custom_types.CLI_COMPLEX_TYPE, help=u"""List of managed list items""" + custom_types.cli_complex_type.COMPLEX_TYPE_HELP)
8585
+ @cli_util.option('--group', help=u"""Managed list type group""")
8581
8586
  @cli_util.option('--freeform-tags', type=custom_types.CLI_COMPLEX_TYPE, help=u"""Simple key-value pair that is applied without any predefined name, type or scope. Exists for cross-compatibility only. Example: `{\"bar-key\": \"value\"}`
8582
8587
 
8583
8588
  Avoid entering confidential information.""" + custom_types.cli_complex_type.COMPLEX_TYPE_HELP)
@@ -8592,7 +8597,7 @@ Avoid entering confidential information.""" + custom_types.cli_complex_type.COMP
8592
8597
  @click.pass_context
8593
8598
  @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={'list-items': {'module': 'cloud_guard', 'class': 'list[string]'}, 'freeform-tags': {'module': 'cloud_guard', 'class': 'dict(str, string)'}, 'defined-tags': {'module': 'cloud_guard', 'class': 'dict(str, dict(str, object))'}}, output_type={'module': 'cloud_guard', 'class': 'ManagedList'})
8594
8599
  @cli_util.wrap_exceptions
8595
- def update_managed_list(ctx, from_json, force, wait_for_state, max_wait_seconds, wait_interval_seconds, managed_list_id, display_name, description, list_items, freeform_tags, defined_tags, if_match):
8600
+ def update_managed_list(ctx, from_json, force, wait_for_state, max_wait_seconds, wait_interval_seconds, managed_list_id, display_name, description, list_items, group, freeform_tags, defined_tags, if_match):
8596
8601
 
8597
8602
  if isinstance(managed_list_id, six.string_types) and len(managed_list_id.strip()) == 0:
8598
8603
  raise click.UsageError('Parameter --managed-list-id cannot be whitespace or empty string')
@@ -8617,6 +8622,9 @@ def update_managed_list(ctx, from_json, force, wait_for_state, max_wait_seconds,
8617
8622
  if list_items is not None:
8618
8623
  _details['listItems'] = cli_util.parse_json_parameter("list_items", list_items)
8619
8624
 
8625
+ if group is not None:
8626
+ _details['group'] = group
8627
+
8620
8628
  if freeform_tags is not None:
8621
8629
  _details['freeformTags'] = cli_util.parse_json_parameter("freeform_tags", freeform_tags)
8622
8630
 
@@ -4208,7 +4208,12 @@ def create_standby_database_for_multiple_standby(ctx, wait_for_state, max_wait_s
4208
4208
  client = cli_util.build_client('database', 'database', ctx)
4209
4209
 
4210
4210
  create_new_database_details = _details
4211
- result = client.create_database(create_new_database_details)
4211
+
4212
+ opc_dry_run_args = {}
4213
+ if 'opc_dry_run' in kwargs and kwargs['opc_dry_run']:
4214
+ opc_dry_run_args['opc_dry_run'] = kwargs['opc_dry_run']
4215
+
4216
+ result = client.create_database(create_new_database_details, **opc_dry_run_args)
4212
4217
 
4213
4218
  if wait_for_state:
4214
4219
 
@@ -4233,7 +4238,11 @@ def create_standby_database_for_multiple_standby(ctx, wait_for_state, max_wait_s
4233
4238
  raise
4234
4239
  else:
4235
4240
  click.echo('Unable to wait for the resource to enter the specified state', file=sys.stderr)
4236
- cli_util.render_response(result, ctx)
4241
+ if result.data.id is not None:
4242
+ cli_util.render_response(result, ctx)
4243
+ else:
4244
+ result.data = None
4245
+ cli_util.render_response(result, ctx)
4237
4246
 
4238
4247
 
4239
4248
  # Multiple Stabdby : Migrate from Single Standby: oci db data-guard-association migrate-data-guard-association-to-multi-data-guards -> oci db data-guard-association migrate-to-multiple-standby-model
@@ -2428,7 +2428,7 @@ def change_disaster_recovery_configuration(ctx, from_json, wait_for_state, max_w
2428
2428
 
2429
2429
  @database_group.command(name=cli_util.override('db.change_encryption_key_location.command_name', 'change-encryption-key-location'), help=u"""Update the encryption key management location for the database \n[Command Reference](changeEncryptionKeyLocation)""")
2430
2430
  @cli_util.option('--database-id', required=True, help=u"""The database [OCID].""")
2431
- @cli_util.option('--provider-type', required=True, type=custom_types.CliCaseInsensitiveChoice(["EXTERNAL", "AZURE"]), help=u"""Use 'EXTERNAL' for creating a new database or migrating a database key to an External HSM. Use 'AZURE' for creating a new database or migrating a database key to Azure.""")
2431
+ @cli_util.option('--provider-type', required=True, type=custom_types.CliCaseInsensitiveChoice(["EXTERNAL", "AZURE", "GCP"]), help=u"""Use 'EXTERNAL' for creating a new database or migrating a database key to an External HSM. Use 'AZURE' for creating a new database or migrating a database key to Azure. Use 'GCP' for creating a new database or migrating a database key to Google Cloud Provider.""")
2432
2432
  @cli_util.option('--if-match', help=u"""For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.""")
2433
2433
  @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED"]), multiple=True, help="""This operation asynchronously creates, modifies or deletes a resource and uses a work request to track the progress of the operation. Specify this option to perform the action and then wait until the work request reaches a certain state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
2434
2434
  @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the work request to reach the state defined by --wait-for-state. Defaults to 1200 seconds.""")
@@ -2566,6 +2566,77 @@ def change_encryption_key_location_external_hsm_encryption_details(ctx, from_jso
2566
2566
  cli_util.render_response(result, ctx)
2567
2567
 
2568
2568
 
2569
+ @database_group.command(name=cli_util.override('db.change_encryption_key_location_google_cloud_provider_encryption_key_details.command_name', 'change-encryption-key-location-google-cloud-provider-encryption-key-details'), help=u"""Update the encryption key management location for the database \n[Command Reference](changeEncryptionKeyLocation)""")
2570
+ @cli_util.option('--database-id', required=True, help=u"""The database [OCID].""")
2571
+ @cli_util.option('--google-cloud-provider-encryption-key-id', required=True, help=u"""Provide the key OCID of a registered Google Cloud Provider key.""")
2572
+ @cli_util.option('--if-match', help=u"""For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.""")
2573
+ @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED"]), multiple=True, help="""This operation asynchronously creates, modifies or deletes a resource and uses a work request to track the progress of the operation. Specify this option to perform the action and then wait until the work request reaches a certain state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
2574
+ @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the work request to reach the state defined by --wait-for-state. Defaults to 1200 seconds.""")
2575
+ @cli_util.option('--wait-interval-seconds', type=click.INT, help="""Check every --wait-interval-seconds to see whether the work request has reached the state defined by --wait-for-state. Defaults to 30 seconds.""")
2576
+ @json_skeleton_utils.get_cli_json_input_option({})
2577
+ @cli_util.help_option
2578
+ @click.pass_context
2579
+ @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={})
2580
+ @cli_util.wrap_exceptions
2581
+ def change_encryption_key_location_google_cloud_provider_encryption_key_details(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, database_id, google_cloud_provider_encryption_key_id, if_match):
2582
+
2583
+ if isinstance(database_id, six.string_types) and len(database_id.strip()) == 0:
2584
+ raise click.UsageError('Parameter --database-id cannot be whitespace or empty string')
2585
+
2586
+ kwargs = {}
2587
+ if if_match is not None:
2588
+ kwargs['if_match'] = if_match
2589
+ kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(ctx.obj['request_id'])
2590
+
2591
+ _details = {}
2592
+ _details['googleCloudProviderEncryptionKeyId'] = google_cloud_provider_encryption_key_id
2593
+
2594
+ _details['providerType'] = 'GCP'
2595
+
2596
+ client = cli_util.build_client('database', 'database', ctx)
2597
+ result = client.change_encryption_key_location(
2598
+ database_id=database_id,
2599
+ encryption_key_location_details=_details,
2600
+ **kwargs
2601
+ )
2602
+ work_request_client = cli_util.build_client('work_requests', 'work_request', ctx)
2603
+ if wait_for_state:
2604
+
2605
+ if hasattr(work_request_client, 'get_work_request') and callable(getattr(work_request_client, 'get_work_request')):
2606
+ try:
2607
+ wait_period_kwargs = {}
2608
+ if max_wait_seconds is not None:
2609
+ wait_period_kwargs['max_wait_seconds'] = max_wait_seconds
2610
+ if wait_interval_seconds is not None:
2611
+ wait_period_kwargs['max_interval_seconds'] = wait_interval_seconds
2612
+ if 'opc-work-request-id' not in result.headers:
2613
+ click.echo('Encountered error while waiting for work request to enter the specified state. Outputting last known resource state')
2614
+ cli_util.render_response(result, ctx)
2615
+ return
2616
+
2617
+ click.echo('Action completed. Waiting until the work request has entered state: {}'.format(wait_for_state), file=sys.stderr)
2618
+ result = oci.wait_until(work_request_client, work_request_client.get_work_request(result.headers['opc-work-request-id']), 'status', wait_for_state, **wait_period_kwargs)
2619
+ if hasattr(result, "data") and hasattr(result.data, "resources") and len(result.data.resources) == 1:
2620
+ entity_type = result.data.resources[0].entity_type
2621
+ identifier = result.data.resources[0].identifier
2622
+ get_operation = 'get_' + entity_type
2623
+ if hasattr(client, get_operation) and callable(getattr(client, get_operation)):
2624
+ result = getattr(client, get_operation)(identifier)
2625
+
2626
+ except oci.exceptions.MaximumWaitTimeExceeded as e:
2627
+ # If we fail, we should show an error, but we should still provide the information to the customer
2628
+ click.echo('Failed to wait until the work request entered the specified state. Outputting last known resource state', file=sys.stderr)
2629
+ cli_util.render_response(result, ctx)
2630
+ sys.exit(2)
2631
+ except Exception:
2632
+ click.echo('Encountered error while waiting for work request to enter the specified state. Outputting last known resource state', file=sys.stderr)
2633
+ cli_util.render_response(result, ctx)
2634
+ raise
2635
+ else:
2636
+ click.echo('Unable to wait for the work request to enter the specified state', file=sys.stderr)
2637
+ cli_util.render_response(result, ctx)
2638
+
2639
+
2569
2640
  @database_group.command(name=cli_util.override('db.change_encryption_key_location_azure_encryption_key_details.command_name', 'change-encryption-key-location-azure-encryption-key-details'), help=u"""Update the encryption key management location for the database \n[Command Reference](changeEncryptionKeyLocation)""")
2570
2641
  @cli_util.option('--database-id', required=True, help=u"""The database [OCID].""")
2571
2642
  @cli_util.option('--azure-encryption-key-id', required=True, help=u"""Provide the key OCID of a registered Azure key.""")
@@ -11775,6 +11846,106 @@ def create_data_guard_association_external_hsm_encryption_details(ctx, from_json
11775
11846
  cli_util.render_response(result, ctx)
11776
11847
 
11777
11848
 
11849
+ @data_guard_association_group.command(name=cli_util.override('db.create_data_guard_association_google_cloud_provider_encryption_key_details.command_name', 'create-data-guard-association-google-cloud-provider-encryption-key-details'), help=u"""Creates a new Data Guard association. A Data Guard association represents the replication relationship between the specified database and a peer database. For more information, see [Using Oracle Data Guard].
11850
+
11851
+ All Oracle Cloud Infrastructure resources, including Data Guard associations, get an Oracle-assigned, unique ID called an Oracle Cloud Identifier (OCID). When you create a resource, you can find its OCID in the response. You can also retrieve a resource's OCID by using a List API operation on that resource type, or by viewing the resource in the Console. For more information, see [Resource Identifiers]. \n[Command Reference](createDataGuardAssociation)""")
11852
+ @cli_util.option('--database-id', required=True, help=u"""The database [OCID].""")
11853
+ @cli_util.option('--database-admin-password', required=True, help=u"""A strong password for the `SYS`, `SYSTEM`, and `PDB Admin` users to apply during standby creation.
11854
+
11855
+ The password must contain no fewer than nine characters and include:
11856
+
11857
+ * At least two uppercase characters.
11858
+
11859
+ * At least two lowercase characters.
11860
+
11861
+ * At least two numeric characters.
11862
+
11863
+ * At least two special characters. Valid special characters include \"_\", \"#\", and \"-\" only.
11864
+
11865
+ **The password MUST be the same as the primary admin password.**""")
11866
+ @cli_util.option('--protection-mode', required=True, type=custom_types.CliCaseInsensitiveChoice(["MAXIMUM_AVAILABILITY", "MAXIMUM_PERFORMANCE", "MAXIMUM_PROTECTION"]), help=u"""The protection mode to set up between the primary and standby databases. For more information, see [Oracle Data Guard Protection Modes] in the Oracle Data Guard documentation.
11867
+
11868
+ **IMPORTANT** - The only protection mode currently supported by the Database service is MAXIMUM_PERFORMANCE.""")
11869
+ @cli_util.option('--transport-type', required=True, type=custom_types.CliCaseInsensitiveChoice(["SYNC", "ASYNC", "FASTSYNC"]), help=u"""The redo transport type to use for this Data Guard association. Valid values depend on the specified `protectionMode`:
11870
+
11871
+ * MAXIMUM_AVAILABILITY - SYNC or FASTSYNC * MAXIMUM_PERFORMANCE - ASYNC * MAXIMUM_PROTECTION - SYNC
11872
+
11873
+ For more information, see [Redo Transport Services] in the Oracle Data Guard documentation.
11874
+
11875
+ **IMPORTANT** - The only transport type currently supported by the Database service is ASYNC.""")
11876
+ @cli_util.option('--source-encryption-key-location-details-google-cloud-provider-encryption-key-id', required=True, help=u"""Provide the key OCID of a registered Google Cloud Provider key.""")
11877
+ @cli_util.option('--database-software-image-id', help=u"""The database software image [OCID]""")
11878
+ @cli_util.option('--is-active-data-guard-enabled', type=click.BOOL, help=u"""True if active Data Guard is enabled.""")
11879
+ @cli_util.option('--peer-db-unique-name', help=u"""Specifies the `DB_UNIQUE_NAME` of the peer database to be created.""")
11880
+ @cli_util.option('--peer-sid-prefix', help=u"""Specifies a prefix for the `Oracle SID` of the database to be created.""")
11881
+ @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED", "UPGRADING"]), multiple=True, help="""This operation creates, modifies or deletes a resource that has a defined lifecycle state. Specify this option to perform the action and then wait until the resource reaches a given lifecycle state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
11882
+ @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the resource to reach the lifecycle state defined by --wait-for-state. Defaults to 1200 seconds.""")
11883
+ @cli_util.option('--wait-interval-seconds', type=click.INT, help="""Check every --wait-interval-seconds to see whether the resource has reached the lifecycle state defined by --wait-for-state. Defaults to 30 seconds.""")
11884
+ @json_skeleton_utils.get_cli_json_input_option({})
11885
+ @cli_util.help_option
11886
+ @click.pass_context
11887
+ @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={}, output_type={'module': 'database', 'class': 'DataGuardAssociation'})
11888
+ @cli_util.wrap_exceptions
11889
+ def create_data_guard_association_google_cloud_provider_encryption_key_details(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, database_id, database_admin_password, protection_mode, transport_type, source_encryption_key_location_details_google_cloud_provider_encryption_key_id, database_software_image_id, is_active_data_guard_enabled, peer_db_unique_name, peer_sid_prefix):
11890
+
11891
+ if isinstance(database_id, six.string_types) and len(database_id.strip()) == 0:
11892
+ raise click.UsageError('Parameter --database-id cannot be whitespace or empty string')
11893
+
11894
+ kwargs = {}
11895
+
11896
+ _details = {}
11897
+ _details['sourceEncryptionKeyLocationDetails'] = {}
11898
+ _details['databaseAdminPassword'] = database_admin_password
11899
+ _details['protectionMode'] = protection_mode
11900
+ _details['transportType'] = transport_type
11901
+ _details['sourceEncryptionKeyLocationDetails']['googleCloudProviderEncryptionKeyId'] = source_encryption_key_location_details_google_cloud_provider_encryption_key_id
11902
+
11903
+ if database_software_image_id is not None:
11904
+ _details['databaseSoftwareImageId'] = database_software_image_id
11905
+
11906
+ if is_active_data_guard_enabled is not None:
11907
+ _details['isActiveDataGuardEnabled'] = is_active_data_guard_enabled
11908
+
11909
+ if peer_db_unique_name is not None:
11910
+ _details['peerDbUniqueName'] = peer_db_unique_name
11911
+
11912
+ if peer_sid_prefix is not None:
11913
+ _details['peerSidPrefix'] = peer_sid_prefix
11914
+
11915
+ _details['sourceEncryptionKeyLocationDetails']['providerType'] = 'GCP'
11916
+
11917
+ client = cli_util.build_client('database', 'database', ctx)
11918
+ result = client.create_data_guard_association(
11919
+ database_id=database_id,
11920
+ create_data_guard_association_details=_details,
11921
+ **kwargs
11922
+ )
11923
+ if wait_for_state:
11924
+
11925
+ if hasattr(client, 'get_data_guard_association') and callable(getattr(client, 'get_data_guard_association')):
11926
+ try:
11927
+ wait_period_kwargs = {}
11928
+ if max_wait_seconds is not None:
11929
+ wait_period_kwargs['max_wait_seconds'] = max_wait_seconds
11930
+ if wait_interval_seconds is not None:
11931
+ wait_period_kwargs['max_interval_seconds'] = wait_interval_seconds
11932
+
11933
+ click.echo('Action completed. Waiting until the resource has entered state: {}'.format(wait_for_state), file=sys.stderr)
11934
+ result = oci.wait_until(client, client.get_data_guard_association(result.data.id), 'lifecycle_state', wait_for_state, **wait_period_kwargs)
11935
+ except oci.exceptions.MaximumWaitTimeExceeded as e:
11936
+ # If we fail, we should show an error, but we should still provide the information to the customer
11937
+ click.echo('Failed to wait until the resource entered the specified state. Outputting last known resource state', file=sys.stderr)
11938
+ cli_util.render_response(result, ctx)
11939
+ sys.exit(2)
11940
+ except Exception:
11941
+ click.echo('Encountered error while waiting for resource to enter the specified state. Outputting last known resource state', file=sys.stderr)
11942
+ cli_util.render_response(result, ctx)
11943
+ raise
11944
+ else:
11945
+ click.echo('Unable to wait for the resource to enter the specified state', file=sys.stderr)
11946
+ cli_util.render_response(result, ctx)
11947
+
11948
+
11778
11949
  @data_guard_association_group.command(name=cli_util.override('db.create_data_guard_association_azure_encryption_key_details.command_name', 'create-data-guard-association-azure-encryption-key-details'), help=u"""Creates a new Data Guard association. A Data Guard association represents the replication relationship between the specified database and a peer database. For more information, see [Using Oracle Data Guard].
11779
11950
 
11780
11951
  All Oracle Cloud Infrastructure resources, including Data Guard associations, get an Oracle-assigned, unique ID called an Oracle Cloud Identifier (OCID). When you create a resource, you can find its OCID in the response. You can also retrieve a resource's OCID by using a List API operation on that resource type, or by viewing the resource in the Console. For more information, see [Resource Identifiers]. \n[Command Reference](createDataGuardAssociation)""")
@@ -11883,6 +12054,7 @@ def create_data_guard_association_azure_encryption_key_details(ctx, from_json, w
11883
12054
  This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, adminPassword, whitelistedIps, isMTLSConnectionRequired, openMode, permissionLevel, dbWorkload, privateEndpointLabel, nsgIds, isRefreshable, dbName, scheduledOperations, dbToolsDetails, isLocalDataGuardEnabled, or isFreeTier.""")
11884
12055
  @cli_util.option('--kms-key-id', help=u"""The OCID of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations.""")
11885
12056
  @cli_util.option('--kms-key-version-id', help=u"""The OCID of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. If none is specified, the current key version (latest) of the Key Id is used for the operation. Autonomous Database Serverless does not use key versions, hence is not applicable for Autonomous Database Serverless instances.""")
12057
+ @cli_util.option('--opc-dry-run', type=click.BOOL, help=u"""Indicates that the request is a dry run, if set to \"true\". A dry run request does not actually creating or updating a resource and is used only to perform validation on the submitted data.""")
11886
12058
  @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["PROVISIONING", "AVAILABLE", "UPDATING", "BACKUP_IN_PROGRESS", "UPGRADING", "CONVERTING", "TERMINATING", "TERMINATED", "RESTORE_FAILED", "FAILED"]), multiple=True, help="""This operation creates, modifies or deletes a resource that has a defined lifecycle state. Specify this option to perform the action and then wait until the resource reaches a given lifecycle state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
11887
12059
  @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the resource to reach the lifecycle state defined by --wait-for-state. Defaults to 1200 seconds.""")
11888
12060
  @cli_util.option('--wait-interval-seconds', type=click.INT, help="""Check every --wait-interval-seconds to see whether the resource has reached the lifecycle state defined by --wait-for-state. Defaults to 30 seconds.""")
@@ -11891,9 +12063,11 @@ This cannot be updated in parallel with any of the following: licenseModel, dbEd
11891
12063
  @click.pass_context
11892
12064
  @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={}, output_type={'module': 'database', 'class': 'Database'})
11893
12065
  @cli_util.wrap_exceptions
11894
- def create_database(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, db_home_id, source, db_version, kms_key_id, kms_key_version_id):
12066
+ def create_database(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, db_home_id, source, db_version, kms_key_id, kms_key_version_id, opc_dry_run):
11895
12067
 
11896
12068
  kwargs = {}
12069
+ if opc_dry_run is not None:
12070
+ kwargs['opc_dry_run'] = opc_dry_run
11897
12071
  kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(ctx.obj['request_id'])
11898
12072
 
11899
12073
  _details = {}
@@ -11948,6 +12122,7 @@ def create_database(ctx, from_json, wait_for_state, max_wait_seconds, wait_inter
11948
12122
  This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, adminPassword, whitelistedIps, isMTLSConnectionRequired, openMode, permissionLevel, dbWorkload, privateEndpointLabel, nsgIds, isRefreshable, dbName, scheduledOperations, dbToolsDetails, isLocalDataGuardEnabled, or isFreeTier.""")
11949
12123
  @cli_util.option('--kms-key-id', help=u"""The OCID of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations.""")
11950
12124
  @cli_util.option('--kms-key-version-id', help=u"""The OCID of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. If none is specified, the current key version (latest) of the Key Id is used for the operation. Autonomous Database Serverless does not use key versions, hence is not applicable for Autonomous Database Serverless instances.""")
12125
+ @cli_util.option('--opc-dry-run', type=click.BOOL, help=u"""Indicates that the request is a dry run, if set to \"true\". A dry run request does not actually creating or updating a resource and is used only to perform validation on the submitted data.""")
11951
12126
  @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["PROVISIONING", "AVAILABLE", "UPDATING", "BACKUP_IN_PROGRESS", "UPGRADING", "CONVERTING", "TERMINATING", "TERMINATED", "RESTORE_FAILED", "FAILED"]), multiple=True, help="""This operation creates, modifies or deletes a resource that has a defined lifecycle state. Specify this option to perform the action and then wait until the resource reaches a given lifecycle state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
11952
12127
  @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the resource to reach the lifecycle state defined by --wait-for-state. Defaults to 1200 seconds.""")
11953
12128
  @cli_util.option('--wait-interval-seconds', type=click.INT, help="""Check every --wait-interval-seconds to see whether the resource has reached the lifecycle state defined by --wait-for-state. Defaults to 30 seconds.""")
@@ -11956,9 +12131,11 @@ This cannot be updated in parallel with any of the following: licenseModel, dbEd
11956
12131
  @click.pass_context
11957
12132
  @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={'database': {'module': 'database', 'class': 'CreateDatabaseDetails'}}, output_type={'module': 'database', 'class': 'Database'})
11958
12133
  @cli_util.wrap_exceptions
11959
- def create_database_create_new_database_details(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, db_home_id, database, db_version, kms_key_id, kms_key_version_id):
12134
+ def create_database_create_new_database_details(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, db_home_id, database, db_version, kms_key_id, kms_key_version_id, opc_dry_run):
11960
12135
 
11961
12136
  kwargs = {}
12137
+ if opc_dry_run is not None:
12138
+ kwargs['opc_dry_run'] = opc_dry_run
11962
12139
  kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(ctx.obj['request_id'])
11963
12140
 
11964
12141
  _details = {}
@@ -12015,6 +12192,7 @@ def create_database_create_new_database_details(ctx, from_json, wait_for_state,
12015
12192
  This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, adminPassword, whitelistedIps, isMTLSConnectionRequired, openMode, permissionLevel, dbWorkload, privateEndpointLabel, nsgIds, isRefreshable, dbName, scheduledOperations, dbToolsDetails, isLocalDataGuardEnabled, or isFreeTier.""")
12016
12193
  @cli_util.option('--kms-key-id', help=u"""The OCID of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations.""")
12017
12194
  @cli_util.option('--kms-key-version-id', help=u"""The OCID of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. If none is specified, the current key version (latest) of the Key Id is used for the operation. Autonomous Database Serverless does not use key versions, hence is not applicable for Autonomous Database Serverless instances.""")
12195
+ @cli_util.option('--opc-dry-run', type=click.BOOL, help=u"""Indicates that the request is a dry run, if set to \"true\". A dry run request does not actually creating or updating a resource and is used only to perform validation on the submitted data.""")
12018
12196
  @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["PROVISIONING", "AVAILABLE", "UPDATING", "BACKUP_IN_PROGRESS", "UPGRADING", "CONVERTING", "TERMINATING", "TERMINATED", "RESTORE_FAILED", "FAILED"]), multiple=True, help="""This operation creates, modifies or deletes a resource that has a defined lifecycle state. Specify this option to perform the action and then wait until the resource reaches a given lifecycle state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
12019
12197
  @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the resource to reach the lifecycle state defined by --wait-for-state. Defaults to 1200 seconds.""")
12020
12198
  @cli_util.option('--wait-interval-seconds', type=click.INT, help="""Check every --wait-interval-seconds to see whether the resource has reached the lifecycle state defined by --wait-for-state. Defaults to 30 seconds.""")
@@ -12023,9 +12201,11 @@ This cannot be updated in parallel with any of the following: licenseModel, dbEd
12023
12201
  @click.pass_context
12024
12202
  @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={'database': {'module': 'database', 'class': 'CreateStandbyDetails'}}, output_type={'module': 'database', 'class': 'Database'})
12025
12203
  @cli_util.wrap_exceptions
12026
- def create_database_create_stand_by_database_details(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, db_home_id, database, db_version, kms_key_id, kms_key_version_id):
12204
+ def create_database_create_stand_by_database_details(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, db_home_id, database, db_version, kms_key_id, kms_key_version_id, opc_dry_run):
12027
12205
 
12028
12206
  kwargs = {}
12207
+ if opc_dry_run is not None:
12208
+ kwargs['opc_dry_run'] = opc_dry_run
12029
12209
  kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(ctx.obj['request_id'])
12030
12210
 
12031
12211
  _details = {}
@@ -12082,6 +12262,7 @@ def create_database_create_stand_by_database_details(ctx, from_json, wait_for_st
12082
12262
  This cannot be updated in parallel with any of the following: licenseModel, dbEdition, cpuCoreCount, computeCount, computeModel, adminPassword, whitelistedIps, isMTLSConnectionRequired, openMode, permissionLevel, dbWorkload, privateEndpointLabel, nsgIds, isRefreshable, dbName, scheduledOperations, dbToolsDetails, isLocalDataGuardEnabled, or isFreeTier.""")
12083
12263
  @cli_util.option('--kms-key-id', help=u"""The OCID of the key container that is used as the master encryption key in database transparent data encryption (TDE) operations.""")
12084
12264
  @cli_util.option('--kms-key-version-id', help=u"""The OCID of the key container version that is used in database transparent data encryption (TDE) operations KMS Key can have multiple key versions. If none is specified, the current key version (latest) of the Key Id is used for the operation. Autonomous Database Serverless does not use key versions, hence is not applicable for Autonomous Database Serverless instances.""")
12265
+ @cli_util.option('--opc-dry-run', type=click.BOOL, help=u"""Indicates that the request is a dry run, if set to \"true\". A dry run request does not actually creating or updating a resource and is used only to perform validation on the submitted data.""")
12085
12266
  @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["PROVISIONING", "AVAILABLE", "UPDATING", "BACKUP_IN_PROGRESS", "UPGRADING", "CONVERTING", "TERMINATING", "TERMINATED", "RESTORE_FAILED", "FAILED"]), multiple=True, help="""This operation creates, modifies or deletes a resource that has a defined lifecycle state. Specify this option to perform the action and then wait until the resource reaches a given lifecycle state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
12086
12267
  @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the resource to reach the lifecycle state defined by --wait-for-state. Defaults to 1200 seconds.""")
12087
12268
  @cli_util.option('--wait-interval-seconds', type=click.INT, help="""Check every --wait-interval-seconds to see whether the resource has reached the lifecycle state defined by --wait-for-state. Defaults to 30 seconds.""")
@@ -12090,9 +12271,11 @@ This cannot be updated in parallel with any of the following: licenseModel, dbEd
12090
12271
  @click.pass_context
12091
12272
  @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={'database': {'module': 'database', 'class': 'CreateDatabaseFromBackupDetails'}}, output_type={'module': 'database', 'class': 'Database'})
12092
12273
  @cli_util.wrap_exceptions
12093
- def create_database_create_database_from_backup(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, db_home_id, database, db_version, kms_key_id, kms_key_version_id):
12274
+ def create_database_create_database_from_backup(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, db_home_id, database, db_version, kms_key_id, kms_key_version_id, opc_dry_run):
12094
12275
 
12095
12276
  kwargs = {}
12277
+ if opc_dry_run is not None:
12278
+ kwargs['opc_dry_run'] = opc_dry_run
12096
12279
  kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(ctx.obj['request_id'])
12097
12280
 
12098
12281
  _details = {}
@@ -13048,6 +13231,8 @@ Example: `{\"Department\": \"Finance\"}`""" + custom_types.cli_complex_type.COMP
13048
13231
  @cli_util.option('--exadata-infrastructure-id', help=u"""The [OCID] of the Exadata infrastructure.""")
13049
13232
  @cli_util.option('--cluster-placement-group-id', help=u"""The [OCID] of the cluster placement group of the Exadata Infrastructure.""")
13050
13233
  @cli_util.option('--subscription-id', help=u"""The [OCID] of the subscription with which resource needs to be associated with.""")
13234
+ @cli_util.option('--is-autoscale-enabled', type=click.BOOL, help=u"""Indicates if autoscale feature is enabled for the Database Storage Vault. The default value is `FALSE`.""")
13235
+ @cli_util.option('--autoscale-limit-in-gbs', type=click.INT, help=u"""Maximum limit storage size in gigabytes, that is applicable for the Database Storage Vault.""")
13051
13236
  @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED"]), multiple=True, help="""This operation creates, modifies or deletes a resource that has a defined lifecycle state. Specify this option to perform the action and then wait until the resource reaches a given lifecycle state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
13052
13237
  @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the resource to reach the lifecycle state defined by --wait-for-state. Defaults to 1200 seconds.""")
13053
13238
  @cli_util.option('--wait-interval-seconds', type=click.INT, help="""Check every --wait-interval-seconds to see whether the resource has reached the lifecycle state defined by --wait-for-state. Defaults to 30 seconds.""")
@@ -13056,7 +13241,7 @@ Example: `{\"Department\": \"Finance\"}`""" + custom_types.cli_complex_type.COMP
13056
13241
  @click.pass_context
13057
13242
  @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={'high-capacity-database-storage': {'module': 'database', 'class': 'ExascaleDbStorageInputDetails'}, 'freeform-tags': {'module': 'database', 'class': 'dict(str, string)'}, 'defined-tags': {'module': 'database', 'class': 'dict(str, dict(str, object))'}}, output_type={'module': 'database', 'class': 'ExascaleDbStorageVault'})
13058
13243
  @cli_util.wrap_exceptions
13059
- def create_exascale_db_storage_vault(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, compartment_id, display_name, availability_domain, high_capacity_database_storage, description, time_zone, additional_flash_cache_in_percent, freeform_tags, defined_tags, exadata_infrastructure_id, cluster_placement_group_id, subscription_id):
13244
+ def create_exascale_db_storage_vault(ctx, from_json, wait_for_state, max_wait_seconds, wait_interval_seconds, compartment_id, display_name, availability_domain, high_capacity_database_storage, description, time_zone, additional_flash_cache_in_percent, freeform_tags, defined_tags, exadata_infrastructure_id, cluster_placement_group_id, subscription_id, is_autoscale_enabled, autoscale_limit_in_gbs):
13060
13245
 
13061
13246
  kwargs = {}
13062
13247
  kwargs['opc_request_id'] = cli_util.use_or_generate_request_id(ctx.obj['request_id'])
@@ -13091,6 +13276,12 @@ def create_exascale_db_storage_vault(ctx, from_json, wait_for_state, max_wait_se
13091
13276
  if subscription_id is not None:
13092
13277
  _details['subscriptionId'] = subscription_id
13093
13278
 
13279
+ if is_autoscale_enabled is not None:
13280
+ _details['isAutoscaleEnabled'] = is_autoscale_enabled
13281
+
13282
+ if autoscale_limit_in_gbs is not None:
13283
+ _details['autoscaleLimitInGBs'] = autoscale_limit_in_gbs
13284
+
13094
13285
  client = cli_util.build_client('database', 'database', ctx)
13095
13286
  result = client.create_exascale_db_storage_vault(
13096
13287
  create_exascale_db_storage_vault_details=_details,
@@ -27775,7 +27966,7 @@ def register_autonomous_database_data_safe(ctx, from_json, wait_for_state, max_w
27775
27966
 
27776
27967
  @cloud_vm_cluster_group.command(name=cli_util.override('db.register_cloud_vm_cluster_pkcs.command_name', 'register-cloud-vm-cluster-pkcs'), help=u"""Install the PKCS11 driver for given keystore type \n[Command Reference](registerCloudVmClusterPkcs)""")
27777
27968
  @cli_util.option('--cloud-vm-cluster-id', required=True, help=u"""The cloud VM cluster [OCID].""")
27778
- @cli_util.option('--tde-key-store-type', required=True, type=custom_types.CliCaseInsensitiveChoice(["AZURE", "OCI"]), help=u"""TDE keystore type""")
27969
+ @cli_util.option('--tde-key-store-type', required=True, type=custom_types.CliCaseInsensitiveChoice(["AZURE", "OCI", "GCP"]), help=u"""TDE keystore type""")
27779
27970
  @cli_util.option('--if-match', help=u"""For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.""")
27780
27971
  @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED"]), multiple=True, help="""This operation asynchronously creates, modifies or deletes a resource and uses a work request to track the progress of the operation. Specify this option to perform the action and then wait until the work request reaches a certain state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
27781
27972
  @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the work request to reach the state defined by --wait-for-state. Defaults to 1200 seconds.""")
@@ -30504,7 +30695,7 @@ def terminate_db_system(ctx, from_json, wait_for_state, max_wait_seconds, wait_i
30504
30695
 
30505
30696
  @cloud_vm_cluster_group.command(name=cli_util.override('db.unregister_cloud_vm_cluster_pkcs.command_name', 'unregister-cloud-vm-cluster-pkcs'), help=u"""Uninstall the PKCS11 driver for given keystore type \n[Command Reference](unregisterCloudVmClusterPkcs)""")
30506
30697
  @cli_util.option('--cloud-vm-cluster-id', required=True, help=u"""The cloud VM cluster [OCID].""")
30507
- @cli_util.option('--tde-key-store-type', required=True, type=custom_types.CliCaseInsensitiveChoice(["AZURE", "OCI"]), help=u"""TDE keystore type""")
30698
+ @cli_util.option('--tde-key-store-type', required=True, type=custom_types.CliCaseInsensitiveChoice(["AZURE", "OCI", "GCP"]), help=u"""TDE keystore type""")
30508
30699
  @cli_util.option('--if-match', help=u"""For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.""")
30509
30700
  @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["ACCEPTED", "IN_PROGRESS", "FAILED", "SUCCEEDED"]), multiple=True, help="""This operation asynchronously creates, modifies or deletes a resource and uses a work request to track the progress of the operation. Specify this option to perform the action and then wait until the work request reaches a certain state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
30510
30701
  @cli_util.option('--max-wait-seconds', type=click.INT, help="""The maximum time to wait for the work request to reach the state defined by --wait-for-state. Defaults to 1200 seconds.""")
@@ -35244,6 +35435,8 @@ def update_exadb_vm_cluster(ctx, from_json, force, wait_for_state, max_wait_seco
35244
35435
 
35245
35436
  Example: `{\"Department\": \"Finance\"}`""" + custom_types.cli_complex_type.COMPLEX_TYPE_HELP)
35246
35437
  @cli_util.option('--defined-tags', type=custom_types.CLI_COMPLEX_TYPE, help=u"""Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags].""" + custom_types.cli_complex_type.COMPLEX_TYPE_HELP)
35438
+ @cli_util.option('--is-autoscale-enabled', type=click.BOOL, help=u"""Indicates if autoscale feature is enabled for the Database Storage Vault. The default value is `FALSE`.""")
35439
+ @cli_util.option('--autoscale-limit-in-gbs', type=click.INT, help=u"""Maximum limit storage size in gigabytes, that is applicable for the Database Storage Vault.""")
35247
35440
  @cli_util.option('--if-match', help=u"""For optimistic concurrency control. In the PUT or DELETE call for a resource, set the `if-match` parameter to the value of the etag from a previous GET or POST response for that resource. The resource will be updated or deleted only if the etag you provide matches the resource's current etag value.""")
35248
35441
  @cli_util.option('--force', help="""Perform update without prompting for confirmation.""", is_flag=True)
35249
35442
  @cli_util.option('--wait-for-state', type=custom_types.CliCaseInsensitiveChoice(["PROVISIONING", "AVAILABLE", "UPDATING", "TERMINATING", "TERMINATED", "FAILED"]), multiple=True, help="""This operation creates, modifies or deletes a resource that has a defined lifecycle state. Specify this option to perform the action and then wait until the resource reaches a given lifecycle state. Multiple states can be specified, returning on the first state. For example, --wait-for-state SUCCEEDED --wait-for-state FAILED would return on whichever lifecycle state is reached first. If timeout is reached, a return code of 2 is returned. For any other error, a return code of 1 is returned.""")
@@ -35254,7 +35447,7 @@ Example: `{\"Department\": \"Finance\"}`""" + custom_types.cli_complex_type.COMP
35254
35447
  @click.pass_context
35255
35448
  @json_skeleton_utils.json_skeleton_generation_handler(input_params_to_complex_types={'high-capacity-database-storage': {'module': 'database', 'class': 'ExascaleDbStorageInputDetails'}, 'freeform-tags': {'module': 'database', 'class': 'dict(str, string)'}, 'defined-tags': {'module': 'database', 'class': 'dict(str, dict(str, object))'}}, output_type={'module': 'database', 'class': 'ExascaleDbStorageVault'})
35256
35449
  @cli_util.wrap_exceptions
35257
- def update_exascale_db_storage_vault(ctx, from_json, force, wait_for_state, max_wait_seconds, wait_interval_seconds, exascale_db_storage_vault_id, display_name, description, high_capacity_database_storage, additional_flash_cache_in_percent, freeform_tags, defined_tags, if_match):
35450
+ def update_exascale_db_storage_vault(ctx, from_json, force, wait_for_state, max_wait_seconds, wait_interval_seconds, exascale_db_storage_vault_id, display_name, description, high_capacity_database_storage, additional_flash_cache_in_percent, freeform_tags, defined_tags, is_autoscale_enabled, autoscale_limit_in_gbs, if_match):
35258
35451
 
35259
35452
  if isinstance(exascale_db_storage_vault_id, six.string_types) and len(exascale_db_storage_vault_id.strip()) == 0:
35260
35453
  raise click.UsageError('Parameter --exascale-db-storage-vault-id cannot be whitespace or empty string')
@@ -35288,6 +35481,12 @@ def update_exascale_db_storage_vault(ctx, from_json, force, wait_for_state, max_
35288
35481
  if defined_tags is not None:
35289
35482
  _details['definedTags'] = cli_util.parse_json_parameter("defined_tags", defined_tags)
35290
35483
 
35484
+ if is_autoscale_enabled is not None:
35485
+ _details['isAutoscaleEnabled'] = is_autoscale_enabled
35486
+
35487
+ if autoscale_limit_in_gbs is not None:
35488
+ _details['autoscaleLimitInGBs'] = autoscale_limit_in_gbs
35489
+
35291
35490
  client = cli_util.build_client('database', 'database', ctx)
35292
35491
  result = client.update_exascale_db_storage_vault(
35293
35492
  exascale_db_storage_vault_id=exascale_db_storage_vault_id,
@@ -0,0 +1,4 @@
1
+ # coding: utf-8
2
+ # Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved.
3
+ # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
4
+ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240501
@@ -0,0 +1,18 @@
1
+ # coding: utf-8
2
+ # Copyright (c) 2016, 2020, Oracle and/or its affiliates. All rights reserved.
3
+ # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
4
+
5
+ import click # noqa: F401
6
+ import json # noqa: F401
7
+ from services.dbmulticloud.src.oci_cli_db_multicloud_gcp_provider.generated import dbmulticloudgcpprovider_cli
8
+ from oci_cli import cli_util # noqa: F401
9
+ from oci_cli import custom_types # noqa: F401
10
+ from oci_cli import json_skeleton_utils # noqa: F401
11
+
12
+ from services.dbmulticloud.src.oci_cli_dbmulticloud.generated import dbmulticloud_service_cli
13
+
14
+ # Move commands under 'oci dbmulticloud db-multicloud-gcp-provider' -> 'oci dbmulticloud'
15
+ dbmulticloud_service_cli.dbmulticloud_service_group.commands.pop(dbmulticloudgcpprovider_cli.db_multicloud_gcp_provider_root_group.name)
16
+ dbmulticloud_service_cli.dbmulticloud_service_group.add_command(dbmulticloudgcpprovider_cli.oracle_db_gcp_identity_connector_group)
17
+ dbmulticloud_service_cli.dbmulticloud_service_group.add_command(dbmulticloudgcpprovider_cli.oracle_db_gcp_key_ring_group)
18
+ dbmulticloud_service_cli.dbmulticloud_service_group.add_command(dbmulticloudgcpprovider_cli.oracle_db_gcp_key_group)
@@ -0,0 +1,4 @@
1
+ # coding: utf-8
2
+ # Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved.
3
+ # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
4
+ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240501
@@ -0,0 +1,14 @@
1
+ # coding: utf-8
2
+ # Copyright (c) 2016, 2025, Oracle and/or its affiliates. All rights reserved.
3
+ # This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
4
+ # NOTE: This class is auto generated by OracleSDKGenerator. DO NOT EDIT. API Version: 20240501
5
+
6
+ import oci
7
+ from oci_cli.cli_clients import CLIENT_MAP
8
+ from oci_cli.cli_clients import MODULE_TO_TYPE_MAPPINGS
9
+ from oci.dbmulticloud import DbMulticloudGCPProviderClient
10
+
11
+ MODULE_TO_TYPE_MAPPINGS["dbmulticloud"] = oci.dbmulticloud.models.dbmulticloud_type_mapping
12
+ if CLIENT_MAP.get("dbmulticloud") is None:
13
+ CLIENT_MAP["dbmulticloud"] = {}
14
+ CLIENT_MAP["dbmulticloud"]["db_multicloud_gcp_provider"] = DbMulticloudGCPProviderClient