models.extended_retention_policy_proto module

class models.extended_retention_policy_proto.ExtendedRetentionPolicyProto(backup_type=None, copy_partially_successful_run=None, granularity_bucket=None, id=None, retention_policy=None)[source]

Bases: object

Implementation of the ‘ExtendedRetentionPolicyProto’ model.

Message that specifies additional retention policies to apply to backup snapshots.

Attributes:
backup_type (int): The backup type to which this extended retention

applies to. If this is not set, the extended retention will be applicable to all non-log backup types. Currently, the only value that can be set here is kFull (Magneto will return an error if it is set to anything else).

copy_partially_successful_run (bool): If this is false, then only

snapshots from the first completely successful run in the given time granularity will be considered for being copied. If this is true, then snapshots from the first partially successful run will also be considered eligible.

granularity_bucket (GranularityBucket): The granularity bucket

frequency which determines the backup snapshots that this extended retention policy applies to.

id (string): This id uniquely identifies this entry in the

ProtectionPolicyProto. If this message is from global policy, this id is generated by Helios. Otherwise, it is generated by Iris. Magneto treats this as an opaque identifier.

retention_policy (RetentionPolicyProto): Message that specifies the

retention policy for backup snapshots.

classmethod from_dictionary(dictionary)[source]

Creates an instance of this model from a dictionary

Args:

dictionary (dictionary): A dictionary representation of the object as obtained from the deserialization of the server’s response. The keys MUST match property names in the API description.

Returns:

object: An instance of this structure class.