diff --git a/CHANGELOG.rst b/CHANGELOG.rst index 21fbaadb6c..d0dabe910c 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -4,6 +4,20 @@ All notable changes to this project will be documented in this file. The format is based on `Keep a Changelog `_. +==================== +2.1.0 - 2018-11-01 +==================== + +Added +----- +* Support for modifying the route table, DHCP options and security lists associated with a subnet in the Networking service. +* Support for tagging of File Systems, Mount Targets and Snapshots in the File Storage service. +* Support for nested compartments in the Identity service + +Breaking +-------- +* database_size_in_g_bs field in Backup and BackupSummary models renamed to database_size_in_gbs. + ==================== 2.0.6 - 2018-10-18 ==================== @@ -21,7 +35,7 @@ Added Changed ------- -* database_edition field in Backup model changed from a free format string to a validated string. It will only accept one of the following: “STANDARD_EDITION”, “ENTERPRISE_EDITION”, “ENTERPRISE_EDITION_HIGH_PERFORMANCE”, “ENTERPRISE_EDITION_EXTREME_PERFORMANCE” +* database_edition field in Backup and model changed from a free format string to a validated string. It will only accept one of the following: “STANDARD_EDITION”, “ENTERPRISE_EDITION”, “ENTERPRISE_EDITION_HIGH_PERFORMANCE”, “ENTERPRISE_EDITION_EXTREME_PERFORMANCE” Known issue ----------- @@ -29,7 +43,7 @@ Known issue Breaking -------- -* db_data_size_in_mbs field in Backup model is renamed to database_size_in_g_bs. The type changed from int to float. +* db_data_size_in_mbs field in Backup and BackupSummary models renamed to database_size_in_g_bs. The type changed from int to float. ==================== 2.0.5 - 2018-10-04 diff --git a/docs/api/core.rst b/docs/api/core.rst index 7058a9e739..8ec2f62d20 100644 --- a/docs/api/core.rst +++ b/docs/api/core.rst @@ -8,9 +8,11 @@ Core Services oci.core.BlockstorageClient oci.core.ComputeClient + oci.core.ComputeManagementClient oci.core.VirtualNetworkClient oci.core.BlockstorageClientCompositeOperations oci.core.ComputeClientCompositeOperations + oci.core.ComputeManagementClientCompositeOperations oci.core.VirtualNetworkClientCompositeOperations -------- diff --git a/docs/api/core/client/oci.core.ComputeManagementClient.rst b/docs/api/core/client/oci.core.ComputeManagementClient.rst new file mode 100644 index 0000000000..cb992b90d2 --- /dev/null +++ b/docs/api/core/client/oci.core.ComputeManagementClient.rst @@ -0,0 +1,8 @@ +ComputeManagementClient +======================= + +.. currentmodule:: oci.core + +.. autoclass:: ComputeManagementClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/core/client/oci.core.ComputeManagementClientCompositeOperations.rst b/docs/api/core/client/oci.core.ComputeManagementClientCompositeOperations.rst new file mode 100644 index 0000000000..75539866f5 --- /dev/null +++ b/docs/api/core/client/oci.core.ComputeManagementClientCompositeOperations.rst @@ -0,0 +1,8 @@ +ComputeManagementClientCompositeOperations +========================================== + +.. currentmodule:: oci.core + +.. autoclass:: ComputeManagementClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/file_storage.rst b/docs/api/file_storage.rst index 93b802d22f..1754357b26 100644 --- a/docs/api/file_storage.rst +++ b/docs/api/file_storage.rst @@ -37,3 +37,4 @@ File Storage oci.file_storage.models.UpdateExportSetDetails oci.file_storage.models.UpdateFileSystemDetails oci.file_storage.models.UpdateMountTargetDetails + oci.file_storage.models.UpdateSnapshotDetails diff --git a/docs/api/file_storage/models/oci.file_storage.models.UpdateSnapshotDetails.rst b/docs/api/file_storage/models/oci.file_storage.models.UpdateSnapshotDetails.rst new file mode 100644 index 0000000000..84d264febe --- /dev/null +++ b/docs/api/file_storage/models/oci.file_storage.models.UpdateSnapshotDetails.rst @@ -0,0 +1,11 @@ +UpdateSnapshotDetails +===================== + +.. currentmodule:: oci.file_storage.models + +.. autoclass:: UpdateSnapshotDetails + :show-inheritance: + :special-members: __init__ + :members: + :undoc-members: + :inherited-members: \ No newline at end of file diff --git a/docs/api/index.rst b/docs/api/index.rst index b132b0c714..a8df875598 100644 --- a/docs/api/index.rst +++ b/docs/api/index.rst @@ -88,6 +88,14 @@ Compute :noindex: +Compute Management +=================== + +.. autoclass:: oci.core.compute_management_client.ComputeManagementClient + :members: + :noindex: + + Virtual Network ================ @@ -238,14 +246,35 @@ Identity Key Management ============== --------- - Client --------- +--------- + Clients +--------- + + +Kms Crypto +=========== + +.. autoclass:: oci.key_management.kms_crypto_client.KmsCryptoClient + :members: + :noindex: + + +Kms Management +=============== -.. autoclass:: oci.key_management.key_management_client.KeyManagementClient +.. autoclass:: oci.key_management.kms_management_client.KmsManagementClient :members: :noindex: + +Kms Vault +========== + +.. autoclass:: oci.key_management.kms_vault_client.KmsVaultClient + :members: + :noindex: + + -------- Models -------- diff --git a/docs/api/key_management.rst b/docs/api/key_management.rst index 4a3712cbfc..f25f3eb0ea 100644 --- a/docs/api/key_management.rst +++ b/docs/api/key_management.rst @@ -6,8 +6,12 @@ Key Management :nosignatures: :template: autosummary/service_client.rst - oci.key_management.KeyManagementClient - oci.key_management.KeyManagementClientCompositeOperations + oci.key_management.KmsCryptoClient + oci.key_management.KmsManagementClient + oci.key_management.KmsVaultClient + oci.key_management.KmsCryptoClientCompositeOperations + oci.key_management.KmsManagementClientCompositeOperations + oci.key_management.KmsVaultClientCompositeOperations -------- Models diff --git a/docs/api/key_management/client/oci.key_management.KmsCryptoClient.rst b/docs/api/key_management/client/oci.key_management.KmsCryptoClient.rst new file mode 100644 index 0000000000..3046d283c9 --- /dev/null +++ b/docs/api/key_management/client/oci.key_management.KmsCryptoClient.rst @@ -0,0 +1,8 @@ +KmsCryptoClient +=============== + +.. currentmodule:: oci.key_management + +.. autoclass:: KmsCryptoClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/key_management/client/oci.key_management.KmsCryptoClientCompositeOperations.rst b/docs/api/key_management/client/oci.key_management.KmsCryptoClientCompositeOperations.rst new file mode 100644 index 0000000000..43496ee8ad --- /dev/null +++ b/docs/api/key_management/client/oci.key_management.KmsCryptoClientCompositeOperations.rst @@ -0,0 +1,8 @@ +KmsCryptoClientCompositeOperations +================================== + +.. currentmodule:: oci.key_management + +.. autoclass:: KmsCryptoClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/key_management/client/oci.key_management.KmsManagementClient.rst b/docs/api/key_management/client/oci.key_management.KmsManagementClient.rst new file mode 100644 index 0000000000..3eb603c789 --- /dev/null +++ b/docs/api/key_management/client/oci.key_management.KmsManagementClient.rst @@ -0,0 +1,8 @@ +KmsManagementClient +=================== + +.. currentmodule:: oci.key_management + +.. autoclass:: KmsManagementClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/key_management/client/oci.key_management.KmsManagementClientCompositeOperations.rst b/docs/api/key_management/client/oci.key_management.KmsManagementClientCompositeOperations.rst new file mode 100644 index 0000000000..dd1d6c7854 --- /dev/null +++ b/docs/api/key_management/client/oci.key_management.KmsManagementClientCompositeOperations.rst @@ -0,0 +1,8 @@ +KmsManagementClientCompositeOperations +====================================== + +.. currentmodule:: oci.key_management + +.. autoclass:: KmsManagementClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/key_management/client/oci.key_management.KmsVaultClient.rst b/docs/api/key_management/client/oci.key_management.KmsVaultClient.rst new file mode 100644 index 0000000000..feafb61b68 --- /dev/null +++ b/docs/api/key_management/client/oci.key_management.KmsVaultClient.rst @@ -0,0 +1,8 @@ +KmsVaultClient +============== + +.. currentmodule:: oci.key_management + +.. autoclass:: KmsVaultClient + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/key_management/client/oci.key_management.KmsVaultClientCompositeOperations.rst b/docs/api/key_management/client/oci.key_management.KmsVaultClientCompositeOperations.rst new file mode 100644 index 0000000000..15bb5743aa --- /dev/null +++ b/docs/api/key_management/client/oci.key_management.KmsVaultClientCompositeOperations.rst @@ -0,0 +1,8 @@ +KmsVaultClientCompositeOperations +================================= + +.. currentmodule:: oci.key_management + +.. autoclass:: KmsVaultClientCompositeOperations + :special-members: __init__ + :members: \ No newline at end of file diff --git a/docs/api/landing.rst b/docs/api/landing.rst index 2879a58c94..8948033f42 100644 --- a/docs/api/landing.rst +++ b/docs/api/landing.rst @@ -7,13 +7,16 @@ API Reference * :doc:`Container Engine ` * :doc:`Block Storage ` * :doc:`Compute ` +* :doc:`Compute Management ` * :doc:`Virtual Network ` * :doc:`Database ` * :doc:`DNS ` * :doc:`Email ` * :doc:`File Storage ` * :doc:`Identity ` -* :doc:`Key Management ` +* :doc:`Kms Crypto ` +* :doc:`Kms Management ` +* :doc:`Kms Vault ` * :doc:`Load Balancer ` * :doc:`Object Storage ` * :doc:`Resource Search ` diff --git a/examples/file_storage_example.py b/examples/file_storage_example.py index c3cb1f0ec1..caaadb2cd5 100644 --- a/examples/file_storage_example.py +++ b/examples/file_storage_example.py @@ -106,15 +106,20 @@ def delete_vcn_and_subnet(virtual_network, vcn_and_subnet): config = oci.config.from_file() +iam_client = oci.identity.IdentityClient(config) file_storage_client = oci.file_storage.FileStorageClient(config) virtual_network_client = oci.core.VirtualNetworkClient(config) -if len(sys.argv) != 3: - raise RuntimeError('This script expects an argument of the compartment OCID and availability domain where the file system will be created') +if len(sys.argv) != 5: + raise RuntimeError('This script expects an argument of the compartment OCID ' + 'and availability domain where the file system will be created. ' + 'It also expects defined tag namespace/key.') # The first argument is the name of the script, so start the index at 1 compartment_id = sys.argv[1] availability_domain = sys.argv[2] +namespace = sys.argv[3] +defined_key = sys.argv[4] # Here we apply a retry strategy to the call to ride out any throttles, timeouts or intermittent 500s (internal server # errors). The retry strategy will also make requests with an opc-retry-token that it generates. @@ -126,7 +131,9 @@ def delete_vcn_and_subnet(virtual_network, vcn_and_subnet): oci.file_storage.models.CreateFileSystemDetails( display_name='py_sdk_example_fs', compartment_id=compartment_id, - availability_domain=availability_domain + availability_domain=availability_domain, + freeform_tags={"foo": "value"}, + defined_tags={namespace: {defined_key: "value"}} ), retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY ) @@ -185,7 +192,9 @@ def delete_vcn_and_subnet(virtual_network, vcn_and_subnet): availability_domain=subnet.availability_domain, subnet_id=subnet.id, compartment_id=compartment_id, - display_name=mount_target_name + display_name=mount_target_name, + freeform_tags={"foo": "value"}, + defined_tags={namespace: {defined_key: "value"}} ), opc_retry_token=mount_target_retry_token ) @@ -208,7 +217,9 @@ def delete_vcn_and_subnet(virtual_network, vcn_and_subnet): availability_domain=subnet.availability_domain, subnet_id=subnet.id, compartment_id=compartment_id, - display_name=mount_target_name + display_name=mount_target_name, + freeform_tags={"foo": "value"}, + defined_tags={namespace: {defined_key: "value"}} ), opc_retry_token=mount_target_retry_token ) @@ -301,7 +312,9 @@ def delete_vcn_and_subnet(virtual_network, vcn_and_subnet): create_snapshot_response = file_storage_client.create_snapshot( oci.file_storage.models.CreateSnapshotDetails( file_system_id=file_system.id, - name='my_snapshot_1' + name='my_snapshot_1', + freeform_tags={"foo": "value"}, + defined_tags={namespace: {defined_key: "value"}} ), retry_strategy=oci.retry.DEFAULT_RETRY_STRATEGY ) diff --git a/setup.cfg b/setup.cfg index dc35bda6c1..9d1afd12f4 100644 --- a/setup.cfg +++ b/setup.cfg @@ -2,7 +2,7 @@ universal = 1 [flake8] -ignore = D203,E501 +ignore = D203,E501,W504 exclude = .git, .tox, diff --git a/src/oci/base_client.py b/src/oci/base_client.py index 95a889e24f..902ee9e741 100644 --- a/src/oci/base_client.py +++ b/src/oci/base_client.py @@ -27,8 +27,8 @@ USER_INFO = "Oracle-PythonSDK/{}".format(__version__) -DICT_VALUE_TYPE_REGEX = re.compile('dict\(str, (.+?)\)$') -LIST_ITEM_TYPE_REGEX = re.compile('list\[(.+?)\]$') +DICT_VALUE_TYPE_REGEX = re.compile('dict\(str, (.+?)\)$') # noqa: W605 +LIST_ITEM_TYPE_REGEX = re.compile('list\[(.+?)\]$') # noqa: W605 def merge_type_mappings(*dictionaries): @@ -547,12 +547,12 @@ def __deserialize(self, data, cls): return None if cls.startswith('list['): - sub_kls = re.match('list\[(.*)\]', cls).group(1) + sub_kls = re.match('list\[(.*)\]', cls).group(1) # noqa: W605 return [self.__deserialize(sub_data, sub_kls) for sub_data in data] if cls.startswith('dict('): - sub_kls = re.match('dict\(([^,]*), (.*)\)', cls).group(2) + sub_kls = re.match('dict\(([^,]*), (.*)\)', cls).group(2) # noqa: W605 return {k: self.__deserialize(v, sub_kls) for k, v in data.items()} diff --git a/src/oci/core/models/update_subnet_details.py b/src/oci/core/models/update_subnet_details.py index 379d8aac21..cf7bd726f9 100644 --- a/src/oci/core/models/update_subnet_details.py +++ b/src/oci/core/models/update_subnet_details.py @@ -21,6 +21,10 @@ def __init__(self, **kwargs): The value to assign to the defined_tags property of this UpdateSubnetDetails. :type defined_tags: dict(str, dict(str, object)) + :param dhcp_options_id: + The value to assign to the dhcp_options_id property of this UpdateSubnetDetails. + :type dhcp_options_id: str + :param display_name: The value to assign to the display_name property of this UpdateSubnetDetails. :type display_name: str @@ -29,22 +33,39 @@ def __init__(self, **kwargs): The value to assign to the freeform_tags property of this UpdateSubnetDetails. :type freeform_tags: dict(str, str) + :param route_table_id: + The value to assign to the route_table_id property of this UpdateSubnetDetails. + :type route_table_id: str + + :param security_list_ids: + The value to assign to the security_list_ids property of this UpdateSubnetDetails. + :type security_list_ids: list[str] + """ self.swagger_types = { 'defined_tags': 'dict(str, dict(str, object))', + 'dhcp_options_id': 'str', 'display_name': 'str', - 'freeform_tags': 'dict(str, str)' + 'freeform_tags': 'dict(str, str)', + 'route_table_id': 'str', + 'security_list_ids': 'list[str]' } self.attribute_map = { 'defined_tags': 'definedTags', + 'dhcp_options_id': 'dhcpOptionsId', 'display_name': 'displayName', - 'freeform_tags': 'freeformTags' + 'freeform_tags': 'freeformTags', + 'route_table_id': 'routeTableId', + 'security_list_ids': 'securityListIds' } self._defined_tags = None + self._dhcp_options_id = None self._display_name = None self._freeform_tags = None + self._route_table_id = None + self._security_list_ids = None @property def defined_tags(self): @@ -80,6 +101,30 @@ def defined_tags(self, defined_tags): """ self._defined_tags = defined_tags + @property + def dhcp_options_id(self): + """ + Gets the dhcp_options_id of this UpdateSubnetDetails. + The OCID of the set of DHCP options the subnet will use. + + + :return: The dhcp_options_id of this UpdateSubnetDetails. + :rtype: str + """ + return self._dhcp_options_id + + @dhcp_options_id.setter + def dhcp_options_id(self, dhcp_options_id): + """ + Sets the dhcp_options_id of this UpdateSubnetDetails. + The OCID of the set of DHCP options the subnet will use. + + + :param dhcp_options_id: The dhcp_options_id of this UpdateSubnetDetails. + :type: str + """ + self._dhcp_options_id = dhcp_options_id + @property def display_name(self): """ @@ -142,6 +187,60 @@ def freeform_tags(self, freeform_tags): """ self._freeform_tags = freeform_tags + @property + def route_table_id(self): + """ + Gets the route_table_id of this UpdateSubnetDetails. + The OCID of the route table the subnet will use. + + + :return: The route_table_id of this UpdateSubnetDetails. + :rtype: str + """ + return self._route_table_id + + @route_table_id.setter + def route_table_id(self, route_table_id): + """ + Sets the route_table_id of this UpdateSubnetDetails. + The OCID of the route table the subnet will use. + + + :param route_table_id: The route_table_id of this UpdateSubnetDetails. + :type: str + """ + self._route_table_id = route_table_id + + @property + def security_list_ids(self): + """ + Gets the security_list_ids of this UpdateSubnetDetails. + The OCIDs of the security list or lists the subnet will use. This + replaces the entire current set of security lists. Remember that + security lists are associated *with the subnet*, but the rules are + applied to the individual VNICs in the subnet. + + + :return: The security_list_ids of this UpdateSubnetDetails. + :rtype: list[str] + """ + return self._security_list_ids + + @security_list_ids.setter + def security_list_ids(self, security_list_ids): + """ + Sets the security_list_ids of this UpdateSubnetDetails. + The OCIDs of the security list or lists the subnet will use. This + replaces the entire current set of security lists. Remember that + security lists are associated *with the subnet*, but the rules are + applied to the individual VNICs in the subnet. + + + :param security_list_ids: The security_list_ids of this UpdateSubnetDetails. + :type: list[str] + """ + self._security_list_ids = security_list_ids + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/database/models/backup.py b/src/oci/database/models/backup.py index 402a5e899a..3c987425a2 100644 --- a/src/oci/database/models/backup.py +++ b/src/oci/database/models/backup.py @@ -88,9 +88,9 @@ def __init__(self, **kwargs): The value to assign to the database_id property of this Backup. :type database_id: str - :param database_size_in_g_bs: - The value to assign to the database_size_in_g_bs property of this Backup. - :type database_size_in_g_bs: float + :param database_size_in_gbs: + The value to assign to the database_size_in_gbs property of this Backup. + :type database_size_in_gbs: float :param display_name: The value to assign to the display_name property of this Backup. @@ -130,7 +130,7 @@ def __init__(self, **kwargs): 'compartment_id': 'str', 'database_edition': 'str', 'database_id': 'str', - 'database_size_in_g_bs': 'float', + 'database_size_in_gbs': 'float', 'display_name': 'str', 'id': 'str', 'lifecycle_details': 'str', @@ -145,7 +145,7 @@ def __init__(self, **kwargs): 'compartment_id': 'compartmentId', 'database_edition': 'databaseEdition', 'database_id': 'databaseId', - 'database_size_in_g_bs': 'databaseSizeInGBs', + 'database_size_in_gbs': 'databaseSizeInGBs', 'display_name': 'displayName', 'id': 'id', 'lifecycle_details': 'lifecycleDetails', @@ -159,7 +159,7 @@ def __init__(self, **kwargs): self._compartment_id = None self._database_edition = None self._database_id = None - self._database_size_in_g_bs = None + self._database_size_in_gbs = None self._display_name = None self._id = None self._lifecycle_details = None @@ -279,28 +279,28 @@ def database_id(self, database_id): self._database_id = database_id @property - def database_size_in_g_bs(self): + def database_size_in_gbs(self): """ - Gets the database_size_in_g_bs of this Backup. + Gets the database_size_in_gbs of this Backup. The size of the database in gigabytes at the time the backup was taken. - :return: The database_size_in_g_bs of this Backup. + :return: The database_size_in_gbs of this Backup. :rtype: float """ - return self._database_size_in_g_bs + return self._database_size_in_gbs - @database_size_in_g_bs.setter - def database_size_in_g_bs(self, database_size_in_g_bs): + @database_size_in_gbs.setter + def database_size_in_gbs(self, database_size_in_gbs): """ - Sets the database_size_in_g_bs of this Backup. + Sets the database_size_in_gbs of this Backup. The size of the database in gigabytes at the time the backup was taken. - :param database_size_in_g_bs: The database_size_in_g_bs of this Backup. + :param database_size_in_gbs: The database_size_in_gbs of this Backup. :type: float """ - self._database_size_in_g_bs = database_size_in_g_bs + self._database_size_in_gbs = database_size_in_gbs @property def display_name(self): diff --git a/src/oci/database/models/backup_summary.py b/src/oci/database/models/backup_summary.py index 72b407b32b..856f95b513 100644 --- a/src/oci/database/models/backup_summary.py +++ b/src/oci/database/models/backup_summary.py @@ -88,9 +88,9 @@ def __init__(self, **kwargs): The value to assign to the database_id property of this BackupSummary. :type database_id: str - :param database_size_in_g_bs: - The value to assign to the database_size_in_g_bs property of this BackupSummary. - :type database_size_in_g_bs: float + :param database_size_in_gbs: + The value to assign to the database_size_in_gbs property of this BackupSummary. + :type database_size_in_gbs: float :param display_name: The value to assign to the display_name property of this BackupSummary. @@ -130,7 +130,7 @@ def __init__(self, **kwargs): 'compartment_id': 'str', 'database_edition': 'str', 'database_id': 'str', - 'database_size_in_g_bs': 'float', + 'database_size_in_gbs': 'float', 'display_name': 'str', 'id': 'str', 'lifecycle_details': 'str', @@ -145,7 +145,7 @@ def __init__(self, **kwargs): 'compartment_id': 'compartmentId', 'database_edition': 'databaseEdition', 'database_id': 'databaseId', - 'database_size_in_g_bs': 'databaseSizeInGBs', + 'database_size_in_gbs': 'databaseSizeInGBs', 'display_name': 'displayName', 'id': 'id', 'lifecycle_details': 'lifecycleDetails', @@ -159,7 +159,7 @@ def __init__(self, **kwargs): self._compartment_id = None self._database_edition = None self._database_id = None - self._database_size_in_g_bs = None + self._database_size_in_gbs = None self._display_name = None self._id = None self._lifecycle_details = None @@ -279,28 +279,28 @@ def database_id(self, database_id): self._database_id = database_id @property - def database_size_in_g_bs(self): + def database_size_in_gbs(self): """ - Gets the database_size_in_g_bs of this BackupSummary. + Gets the database_size_in_gbs of this BackupSummary. The size of the database in gigabytes at the time the backup was taken. - :return: The database_size_in_g_bs of this BackupSummary. + :return: The database_size_in_gbs of this BackupSummary. :rtype: float """ - return self._database_size_in_g_bs + return self._database_size_in_gbs - @database_size_in_g_bs.setter - def database_size_in_g_bs(self, database_size_in_g_bs): + @database_size_in_gbs.setter + def database_size_in_gbs(self, database_size_in_gbs): """ - Sets the database_size_in_g_bs of this BackupSummary. + Sets the database_size_in_gbs of this BackupSummary. The size of the database in gigabytes at the time the backup was taken. - :param database_size_in_g_bs: The database_size_in_g_bs of this BackupSummary. + :param database_size_in_gbs: The database_size_in_gbs of this BackupSummary. :type: float """ - self._database_size_in_g_bs = database_size_in_g_bs + self._database_size_in_gbs = database_size_in_gbs @property def display_name(self): diff --git a/src/oci/file_storage/file_storage_client.py b/src/oci/file_storage/file_storage_client.py index cfa9a61002..1f0be17888 100644 --- a/src/oci/file_storage/file_storage_client.py +++ b/src/oci/file_storage/file_storage_client.py @@ -1057,12 +1057,25 @@ def list_export_sets(self, compartment_id, availability_domain, **kwargs): Example: `Uocm:PHX-AD-1` :param int limit: (optional) - The maximum number of items to return in a paginated \"List\" call. + For list pagination. The maximum number of results per page, + or items to return in a paginated \"List\" call. + 1 is the minimum, 1000 is the maximum. + + For important details about how pagination works, + see `List Pagination`__. Example: `500` + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine + :param str page: (optional) - The value of the `opc-next-page` response header from the previous \"List\" call. + For list pagination. The value of the `opc-next-page` response + header from the previous \"List\" call. + + For important details about how pagination works, + see `List Pagination`__. + + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine :param str display_name: (optional) A user-friendly name. It does not have to be unique, and it is changeable. @@ -1194,12 +1207,25 @@ def list_exports(self, **kwargs): The OCID of the compartment. :param int limit: (optional) - The maximum number of items to return in a paginated \"List\" call. + For list pagination. The maximum number of results per page, + or items to return in a paginated \"List\" call. + 1 is the minimum, 1000 is the maximum. + + For important details about how pagination works, + see `List Pagination`__. Example: `500` + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine + :param str page: (optional) - The value of the `opc-next-page` response header from the previous \"List\" call. + For list pagination. The value of the `opc-next-page` response + header from the previous \"List\" call. + + For important details about how pagination works, + see `List Pagination`__. + + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine :param str export_set_id: (optional) The OCID of the export set. @@ -1337,12 +1363,25 @@ def list_file_systems(self, compartment_id, availability_domain, **kwargs): Example: `Uocm:PHX-AD-1` :param int limit: (optional) - The maximum number of items to return in a paginated \"List\" call. + For list pagination. The maximum number of results per page, + or items to return in a paginated \"List\" call. + 1 is the minimum, 1000 is the maximum. + + For important details about how pagination works, + see `List Pagination`__. Example: `500` + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine + :param str page: (optional) - The value of the `opc-next-page` response header from the previous \"List\" call. + For list pagination. The value of the `opc-next-page` response + header from the previous \"List\" call. + + For important details about how pagination works, + see `List Pagination`__. + + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine :param str display_name: (optional) A user-friendly name. It does not have to be unique, and it is changeable. @@ -1477,12 +1516,25 @@ def list_mount_targets(self, compartment_id, availability_domain, **kwargs): Example: `Uocm:PHX-AD-1` :param int limit: (optional) - The maximum number of items to return in a paginated \"List\" call. + For list pagination. The maximum number of results per page, + or items to return in a paginated \"List\" call. + 1 is the minimum, 1000 is the maximum. + + For important details about how pagination works, + see `List Pagination`__. Example: `500` + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine + :param str page: (optional) - The value of the `opc-next-page` response header from the previous \"List\" call. + For list pagination. The value of the `opc-next-page` response + header from the previous \"List\" call. + + For important details about how pagination works, + see `List Pagination`__. + + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine :param str display_name: (optional) A user-friendly name. It does not have to be unique, and it is changeable. @@ -1617,12 +1669,25 @@ def list_snapshots(self, file_system_id, **kwargs): The OCID of the file system. :param int limit: (optional) - The maximum number of items to return in a paginated \"List\" call. + For list pagination. The maximum number of results per page, + or items to return in a paginated \"List\" call. + 1 is the minimum, 1000 is the maximum. + + For important details about how pagination works, + see `List Pagination`__. Example: `500` + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine + :param str page: (optional) - The value of the `opc-next-page` response header from the previous \"List\" call. + For list pagination. The value of the `opc-next-page` response + header from the previous \"List\" call. + + For important details about how pagination works, + see `List Pagination`__. + + __ https://docs.us-phoenix-1.oraclecloud.com/iaas/Content/API/Concepts/usingapi.htm#nine :param str lifecycle_state: (optional) Filter results by the specified lifecycle state. Must be a valid @@ -2045,3 +2110,85 @@ def update_mount_target(self, mount_target_id, update_mount_target_details, **kw header_params=header_params, body=update_mount_target_details, response_type="MountTarget") + + def update_snapshot(self, snapshot_id, update_snapshot_details, **kwargs): + """ + UpdateSnapshot + Updates the specified snapshot's information. + + + :param str snapshot_id: (required) + The OCID of the snapshot. + + :param UpdateSnapshotDetails update_snapshot_details: (required) + Details object for updating a snapshot. + + :param str if_match: (optional) + 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. + + :param obj retry_strategy: (optional) + A retry strategy to apply to this specific operation/call. This will override any retry strategy set at the client-level. + + This should be one of the strategies available in the :py:mod:`~oci.retry` module. A convenience :py:data:`~oci.retry.DEFAULT_RETRY_STRATEGY` + is also available. The specifics of the default retry strategy are described `here `__. + + To have this operation explicitly not perform any retries, pass an instance of :py:class:`~oci.retry.NoneRetryStrategy`. + + :return: A :class:`~oci.response.Response` object with data of type :class:`~oci.file_storage.models.Snapshot` + :rtype: :class:`~oci.response.Response` + """ + resource_path = "/snapshots/{snapshotId}" + method = "PUT" + + # Don't accept unknown kwargs + expected_kwargs = [ + "retry_strategy", + "if_match" + ] + extra_kwargs = [key for key in six.iterkeys(kwargs) if key not in expected_kwargs] + if extra_kwargs: + raise ValueError( + "update_snapshot got unknown kwargs: {!r}".format(extra_kwargs)) + + path_params = { + "snapshotId": snapshot_id + } + + path_params = {k: v for (k, v) in six.iteritems(path_params) if v is not missing} + + for (k, v) in six.iteritems(path_params): + if v is None or (isinstance(v, six.string_types) and len(v.strip()) == 0): + raise ValueError('Parameter {} cannot be None, whitespace or empty string'.format(k)) + + header_params = { + "accept": "application/json", + "content-type": "application/json", + "if-match": kwargs.get("if_match", missing) + } + header_params = {k: v for (k, v) in six.iteritems(header_params) if v is not missing and v is not None} + + retry_strategy = self.retry_strategy + if kwargs.get('retry_strategy'): + retry_strategy = kwargs.get('retry_strategy') + + if retry_strategy: + return retry_strategy.make_retrying_call( + self.base_client.call_api, + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_snapshot_details, + response_type="Snapshot") + else: + return self.base_client.call_api( + resource_path=resource_path, + method=method, + path_params=path_params, + header_params=header_params, + body=update_snapshot_details, + response_type="Snapshot") diff --git a/src/oci/file_storage/file_storage_client_composite_operations.py b/src/oci/file_storage/file_storage_client_composite_operations.py index 07b48f717f..0308498e6b 100644 --- a/src/oci/file_storage/file_storage_client_composite_operations.py +++ b/src/oci/file_storage/file_storage_client_composite_operations.py @@ -492,3 +492,44 @@ def update_mount_target_and_wait_for_state(self, mount_target_id, update_mount_t return result_to_return except Exception as e: raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) + + def update_snapshot_and_wait_for_state(self, snapshot_id, update_snapshot_details, wait_for_states=[], operation_kwargs={}, waiter_kwargs={}): + """ + Calls :py:func:`~oci.file_storage.FileStorageClient.update_snapshot` and waits for the :py:class:`~oci.file_storage.models.Snapshot` acted upon + to enter the given state(s). + + :param str snapshot_id: (required) + The OCID of the snapshot. + + :param UpdateSnapshotDetails update_snapshot_details: (required) + Details object for updating a snapshot. + + :param list[str] wait_for_states: + An array of states to wait on. These should be valid values for :py:attr:`~oci.file_storage.models.Snapshot.lifecycle_state` + + :param dict operation_kwargs: + A dictionary of keyword arguments to pass to :py:func:`~oci.file_storage.FileStorageClient.update_snapshot` + + :param dict waiter_kwargs: + A dictionary of keyword arguments to pass to the :py:func:`oci.wait_until` function. For example, you could pass ``max_interval_seconds`` or ``max_interval_seconds`` + as dictionary keys to modify how long the waiter function will wait between retries and the maximum amount of time it will wait + """ + operation_result = self.client.update_snapshot(snapshot_id, update_snapshot_details, **operation_kwargs) + if not wait_for_states: + return operation_result + + lowered_wait_for_states = [w.lower() for w in wait_for_states] + wait_for_resource_id = operation_result.data.id + + try: + waiter_result = oci.wait_until( + self.client, + self.client.get_snapshot(wait_for_resource_id), + evaluate_response=lambda r: getattr(r.data, 'lifecycle_state') and getattr(r.data, 'lifecycle_state').lower() in lowered_wait_for_states, + **waiter_kwargs + ) + result_to_return = waiter_result + + return result_to_return + except Exception as e: + raise oci.exceptions.CompositeOperationError(partial_results=[operation_result], cause=e) diff --git a/src/oci/file_storage/models/__init__.py b/src/oci/file_storage/models/__init__.py index 37c516b4e2..9c57684ad6 100644 --- a/src/oci/file_storage/models/__init__.py +++ b/src/oci/file_storage/models/__init__.py @@ -22,6 +22,7 @@ from .update_export_set_details import UpdateExportSetDetails from .update_file_system_details import UpdateFileSystemDetails from .update_mount_target_details import UpdateMountTargetDetails +from .update_snapshot_details import UpdateSnapshotDetails # Maps type names to classes for file_storage services. file_storage_type_mapping = { @@ -43,5 +44,6 @@ "UpdateExportDetails": UpdateExportDetails, "UpdateExportSetDetails": UpdateExportSetDetails, "UpdateFileSystemDetails": UpdateFileSystemDetails, - "UpdateMountTargetDetails": UpdateMountTargetDetails + "UpdateMountTargetDetails": UpdateMountTargetDetails, + "UpdateSnapshotDetails": UpdateSnapshotDetails } diff --git a/src/oci/file_storage/models/create_file_system_details.py b/src/oci/file_storage/models/create_file_system_details.py index 9fd45a347c..ed0753f42b 100644 --- a/src/oci/file_storage/models/create_file_system_details.py +++ b/src/oci/file_storage/models/create_file_system_details.py @@ -29,22 +29,36 @@ def __init__(self, **kwargs): The value to assign to the display_name property of this CreateFileSystemDetails. :type display_name: str + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateFileSystemDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateFileSystemDetails. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'availability_domain': 'str', 'compartment_id': 'str', - 'display_name': 'str' + 'display_name': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'availability_domain': 'availabilityDomain', 'compartment_id': 'compartmentId', - 'display_name': 'displayName' + 'display_name': 'displayName', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._availability_domain = None self._compartment_id = None self._display_name = None + self._freeform_tags = None + self._defined_tags = None @property def availability_domain(self): @@ -128,6 +142,72 @@ def display_name(self, display_name): """ self._display_name = display_name + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateFileSystemDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateFileSystemDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateFileSystemDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateFileSystemDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateFileSystemDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateFileSystemDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateFileSystemDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateFileSystemDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/create_mount_target_details.py b/src/oci/file_storage/models/create_mount_target_details.py index 1bedc2cff4..7fbf2160dc 100644 --- a/src/oci/file_storage/models/create_mount_target_details.py +++ b/src/oci/file_storage/models/create_mount_target_details.py @@ -41,6 +41,14 @@ def __init__(self, **kwargs): The value to assign to the subnet_id property of this CreateMountTargetDetails. :type subnet_id: str + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateMountTargetDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateMountTargetDetails. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'availability_domain': 'str', @@ -48,7 +56,9 @@ def __init__(self, **kwargs): 'display_name': 'str', 'hostname_label': 'str', 'ip_address': 'str', - 'subnet_id': 'str' + 'subnet_id': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { @@ -57,7 +67,9 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'hostname_label': 'hostnameLabel', 'ip_address': 'ipAddress', - 'subnet_id': 'subnetId' + 'subnet_id': 'subnetId', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._availability_domain = None @@ -66,6 +78,8 @@ def __init__(self, **kwargs): self._hostname_label = None self._ip_address = None self._subnet_id = None + self._freeform_tags = None + self._defined_tags = None @property def availability_domain(self): @@ -259,6 +273,72 @@ def subnet_id(self, subnet_id): """ self._subnet_id = subnet_id + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateMountTargetDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateMountTargetDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateMountTargetDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateMountTargetDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateMountTargetDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateMountTargetDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateMountTargetDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateMountTargetDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/create_snapshot_details.py b/src/oci/file_storage/models/create_snapshot_details.py index c3491b2899..41d8cc6362 100644 --- a/src/oci/file_storage/models/create_snapshot_details.py +++ b/src/oci/file_storage/models/create_snapshot_details.py @@ -25,19 +25,33 @@ def __init__(self, **kwargs): The value to assign to the name property of this CreateSnapshotDetails. :type name: str + :param freeform_tags: + The value to assign to the freeform_tags property of this CreateSnapshotDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this CreateSnapshotDetails. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'file_system_id': 'str', - 'name': 'str' + 'name': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { 'file_system_id': 'fileSystemId', - 'name': 'name' + 'name': 'name', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._file_system_id = None self._name = None + self._freeform_tags = None + self._defined_tags = None @property def file_system_id(self): @@ -99,6 +113,72 @@ def name(self, name): """ self._name = name + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this CreateSnapshotDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this CreateSnapshotDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this CreateSnapshotDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this CreateSnapshotDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this CreateSnapshotDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this CreateSnapshotDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this CreateSnapshotDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this CreateSnapshotDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/export.py b/src/oci/file_storage/models/export.py index 78220d3e42..42e30a7a92 100644 --- a/src/oci/file_storage/models/export.py +++ b/src/oci/file_storage/models/export.py @@ -43,6 +43,8 @@ class Export(object): Use `exportOptions` to control access to an export. For more information, see `Export Options`__. + **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. + __ https://docs.us-phoenix-1.oraclecloud.com/Content/File/Tasks/exportoptions.htm """ diff --git a/src/oci/file_storage/models/export_set.py b/src/oci/file_storage/models/export_set.py index 093e058b82..195cabd697 100644 --- a/src/oci/file_storage/models/export_set.py +++ b/src/oci/file_storage/models/export_set.py @@ -11,6 +11,8 @@ class ExportSet(object): """ A set of file systems to export through one or more mount targets. Composed of zero or more export resources. + + **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. """ #: A constant which can be used with the lifecycle_state property of a ExportSet. diff --git a/src/oci/file_storage/models/file_system.py b/src/oci/file_storage/models/file_system.py index 58d013d8ba..deaed33305 100644 --- a/src/oci/file_storage/models/file_system.py +++ b/src/oci/file_storage/models/file_system.py @@ -20,6 +20,8 @@ class FileSystem(object): policies to give users access, see `Getting Started with Policies`__. + **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. + __ https://docs.us-phoenix-1.oraclecloud.com/Content/Identity/Concepts/policygetstarted.htm """ @@ -74,6 +76,14 @@ def __init__(self, **kwargs): The value to assign to the time_created property of this FileSystem. :type time_created: datetime + :param freeform_tags: + The value to assign to the freeform_tags property of this FileSystem. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this FileSystem. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'availability_domain': 'str', @@ -82,7 +92,9 @@ def __init__(self, **kwargs): 'display_name': 'str', 'id': 'str', 'lifecycle_state': 'str', - 'time_created': 'datetime' + 'time_created': 'datetime', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { @@ -92,7 +104,9 @@ def __init__(self, **kwargs): 'display_name': 'displayName', 'id': 'id', 'lifecycle_state': 'lifecycleState', - 'time_created': 'timeCreated' + 'time_created': 'timeCreated', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._availability_domain = None @@ -102,6 +116,8 @@ def __init__(self, **kwargs): self._id = None self._lifecycle_state = None self._time_created = None + self._freeform_tags = None + self._defined_tags = None @property def availability_domain(self): @@ -305,6 +321,72 @@ def time_created(self, time_created): """ self._time_created = time_created + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this FileSystem. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this FileSystem. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this FileSystem. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this FileSystem. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this FileSystem. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this FileSystem. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this FileSystem. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this FileSystem. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/mount_target.py b/src/oci/file_storage/models/mount_target.py index f02d9e515f..2e35509fef 100644 --- a/src/oci/file_storage/models/mount_target.py +++ b/src/oci/file_storage/models/mount_target.py @@ -12,6 +12,8 @@ class MountTarget(object): Provides access to a collection of file systems through one or more VNICs on a specified subnet. The set of file systems is controlled through the referenced export set. + + **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. """ #: A constant which can be used with the lifecycle_state property of a MountTarget. @@ -81,6 +83,14 @@ def __init__(self, **kwargs): The value to assign to the time_created property of this MountTarget. :type time_created: datetime + :param freeform_tags: + The value to assign to the freeform_tags property of this MountTarget. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this MountTarget. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'availability_domain': 'str', @@ -92,7 +102,9 @@ def __init__(self, **kwargs): 'lifecycle_state': 'str', 'private_ip_ids': 'list[str]', 'subnet_id': 'str', - 'time_created': 'datetime' + 'time_created': 'datetime', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { @@ -105,7 +117,9 @@ def __init__(self, **kwargs): 'lifecycle_state': 'lifecycleState', 'private_ip_ids': 'privateIpIds', 'subnet_id': 'subnetId', - 'time_created': 'timeCreated' + 'time_created': 'timeCreated', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._availability_domain = None @@ -118,6 +132,8 @@ def __init__(self, **kwargs): self._private_ip_ids = None self._subnet_id = None self._time_created = None + self._freeform_tags = None + self._defined_tags = None @property def availability_domain(self): @@ -391,6 +407,72 @@ def time_created(self, time_created): """ self._time_created = time_created + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this MountTarget. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this MountTarget. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this MountTarget. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this MountTarget. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this MountTarget. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this MountTarget. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this MountTarget. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this MountTarget. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/snapshot.py b/src/oci/file_storage/models/snapshot.py index 83a4a32254..e8001bd1fa 100644 --- a/src/oci/file_storage/models/snapshot.py +++ b/src/oci/file_storage/models/snapshot.py @@ -10,6 +10,8 @@ class Snapshot(object): """ A point-in-time snapshot of a specified file system. + + **Warning:** Oracle recommends that you avoid using any confidential information when you supply string values using the API. """ #: A constant which can be used with the lifecycle_state property of a Snapshot. @@ -55,13 +57,23 @@ def __init__(self, **kwargs): The value to assign to the time_created property of this Snapshot. :type time_created: datetime + :param freeform_tags: + The value to assign to the freeform_tags property of this Snapshot. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this Snapshot. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { 'file_system_id': 'str', 'id': 'str', 'lifecycle_state': 'str', 'name': 'str', - 'time_created': 'datetime' + 'time_created': 'datetime', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { @@ -69,7 +81,9 @@ def __init__(self, **kwargs): 'id': 'id', 'lifecycle_state': 'lifecycleState', 'name': 'name', - 'time_created': 'timeCreated' + 'time_created': 'timeCreated', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._file_system_id = None @@ -77,6 +91,8 @@ def __init__(self, **kwargs): self._lifecycle_state = None self._name = None self._time_created = None + self._freeform_tags = None + self._defined_tags = None @property def file_system_id(self): @@ -224,6 +240,72 @@ def time_created(self, time_created): """ self._time_created = time_created + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this Snapshot. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this Snapshot. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this Snapshot. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this Snapshot. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this Snapshot. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this Snapshot. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this Snapshot. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this Snapshot. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/update_file_system_details.py b/src/oci/file_storage/models/update_file_system_details.py index 3f3a5fa3f1..fcd554cbfb 100644 --- a/src/oci/file_storage/models/update_file_system_details.py +++ b/src/oci/file_storage/models/update_file_system_details.py @@ -21,16 +21,30 @@ def __init__(self, **kwargs): The value to assign to the display_name property of this UpdateFileSystemDetails. :type display_name: str + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateFileSystemDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateFileSystemDetails. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { - 'display_name': 'str' + 'display_name': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { - 'display_name': 'displayName' + 'display_name': 'displayName', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._display_name = None + self._freeform_tags = None + self._defined_tags = None @property def display_name(self): @@ -62,6 +76,72 @@ def display_name(self, display_name): """ self._display_name = display_name + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateFileSystemDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this UpdateFileSystemDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateFileSystemDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this UpdateFileSystemDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateFileSystemDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this UpdateFileSystemDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateFileSystemDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this UpdateFileSystemDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/update_mount_target_details.py b/src/oci/file_storage/models/update_mount_target_details.py index 0d5a4c6db8..fc3d6102ed 100644 --- a/src/oci/file_storage/models/update_mount_target_details.py +++ b/src/oci/file_storage/models/update_mount_target_details.py @@ -21,16 +21,30 @@ def __init__(self, **kwargs): The value to assign to the display_name property of this UpdateMountTargetDetails. :type display_name: str + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateMountTargetDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateMountTargetDetails. + :type defined_tags: dict(str, dict(str, object)) + """ self.swagger_types = { - 'display_name': 'str' + 'display_name': 'str', + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' } self.attribute_map = { - 'display_name': 'displayName' + 'display_name': 'displayName', + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' } self._display_name = None + self._freeform_tags = None + self._defined_tags = None @property def display_name(self): @@ -62,6 +76,72 @@ def display_name(self, display_name): """ self._display_name = display_name + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateMountTargetDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this UpdateMountTargetDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateMountTargetDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this UpdateMountTargetDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateMountTargetDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this UpdateMountTargetDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateMountTargetDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this UpdateMountTargetDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + def __repr__(self): return formatted_flat_dict(self) diff --git a/src/oci/file_storage/models/update_snapshot_details.py b/src/oci/file_storage/models/update_snapshot_details.py new file mode 100644 index 0000000000..6795bd9471 --- /dev/null +++ b/src/oci/file_storage/models/update_snapshot_details.py @@ -0,0 +1,118 @@ +# coding: utf-8 +# Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved. + + +from oci.util import formatted_flat_dict, NONE_SENTINEL, value_allowed_none_or_none_sentinel # noqa: F401 +from oci.decorators import init_model_state_from_kwargs + + +@init_model_state_from_kwargs +class UpdateSnapshotDetails(object): + """ + UpdateSnapshotDetails model. + """ + + def __init__(self, **kwargs): + """ + Initializes a new UpdateSnapshotDetails object with values from keyword arguments. + The following keyword arguments are supported (corresponding to the getters/setters of this class): + + :param freeform_tags: + The value to assign to the freeform_tags property of this UpdateSnapshotDetails. + :type freeform_tags: dict(str, str) + + :param defined_tags: + The value to assign to the defined_tags property of this UpdateSnapshotDetails. + :type defined_tags: dict(str, dict(str, object)) + + """ + self.swagger_types = { + 'freeform_tags': 'dict(str, str)', + 'defined_tags': 'dict(str, dict(str, object))' + } + + self.attribute_map = { + 'freeform_tags': 'freeformTags', + 'defined_tags': 'definedTags' + } + + self._freeform_tags = None + self._defined_tags = None + + @property + def freeform_tags(self): + """ + Gets the freeform_tags of this UpdateSnapshotDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The freeform_tags of this UpdateSnapshotDetails. + :rtype: dict(str, str) + """ + return self._freeform_tags + + @freeform_tags.setter + def freeform_tags(self, freeform_tags): + """ + Sets the freeform_tags of this UpdateSnapshotDetails. + Free-form tags for this resource. Each tag is a simple key-value pair + with no predefined name, type, or namespace. + For more information, see `Resource Tags`__. + Example: `{\"Department\": \"Finance\"}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param freeform_tags: The freeform_tags of this UpdateSnapshotDetails. + :type: dict(str, str) + """ + self._freeform_tags = freeform_tags + + @property + def defined_tags(self): + """ + Gets the defined_tags of this UpdateSnapshotDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :return: The defined_tags of this UpdateSnapshotDetails. + :rtype: dict(str, dict(str, object)) + """ + return self._defined_tags + + @defined_tags.setter + def defined_tags(self, defined_tags): + """ + Sets the defined_tags of this UpdateSnapshotDetails. + Defined tags for this resource. Each key is predefined and scoped to a namespace. + For more information, see `Resource Tags`__. + Example: `{\"Operations\": {\"CostCenter\": \"42\"}}` + + __ https://docs.us-phoenix-1.oraclecloud.com/Content/General/Concepts/resourcetags.htm + + + :param defined_tags: The defined_tags of this UpdateSnapshotDetails. + :type: dict(str, dict(str, object)) + """ + self._defined_tags = defined_tags + + def __repr__(self): + return formatted_flat_dict(self) + + def __eq__(self, other): + if other is None: + return False + + return self.__dict__ == other.__dict__ + + def __ne__(self, other): + return not self == other diff --git a/src/oci/version.py b/src/oci/version.py index acc86b3d9e..932cf18737 100644 --- a/src/oci/version.py +++ b/src/oci/version.py @@ -1,4 +1,4 @@ # coding: utf-8 # Copyright (c) 2016, 2018, Oracle and/or its affiliates. All rights reserved. -__version__ = "2.0.6" +__version__ = "2.1.0"