models.protection_policy module

class models.protection_policy.ProtectionPolicy(blackout_periods=None, cdp_scheduling_policy=None, cloud_deploy_policies=None, datalock_config=None, datalock_config_log=None, datalock_config_system=None, days_to_keep=None, days_to_keep_log=None, days_to_keep_system=None, description=None, extended_retention_policies=None, full_scheduling_policy=None, id=None, incremental_scheduling_policy=None, is_usable=None, last_modified_time_msecs=None, log_scheduling_policy=None, name=None, num_linked_policies=None, parent_policy_id=None, retries=None, retry_interval_mins=None, rpo_policy_settings=None, skip_interval_mins=None, snapshot_archival_copy_policies=None, snapshot_replication_copy_policies=None, system_scheduling_policy=None, tenant_ids=None, mtype=None, worm_retention_type=None)[source]

Bases: object

Implementation of the ‘ProtectionPolicy’ model.

TODO: type model description here.

Attributes:
blackout_periods (list of BlackoutPeriod): Array of Blackout Periods.

If specified, this field defines black periods when new Job Runs are not started. If a Job Run has been scheduled but not yet executed and the blackout period starts, the behavior depends on the policy field AbortInBlackoutPeriod.

cdp_scheduling_policy (SchedulingPolicy): Specifies the CDP backup

schedule of a Protection Job and how long log files captured by this schedule are retained on the Cohesity Cluster.

cloud_deploy_policies (list of SnapshotCloudCopyPolicy): Array of

Cloud Deploy Policies. Specifies settings for copying Snapshots to Cloud. CloudDeploy target where backup snapshots may be converted and stored. It also defines the retention of copied Snapshots on the Cloud.

datalock_config (DataLockConfig): Specifies WORM retention type for

the log snapshots. When a WORM retention type is specified, the snapshots of the Protection Groups using this policy will be kept for the last N days as specified in the duration of the datalock. During that time, the snapshots cannot be deleted.

datalock_config_log (DataLockConfig): Specifies WORM retention type

for the log snapshots. When a WORM retention type is specified,the snapshots of the Protection Groups using this policy will be kept for the last N days as specified in the duration of the datalock. During that time, the snapshots cannot be deleted.

datalock_config_system (DataLockConfig): Specifies WORM retention type

for the log snapshots. When a WORM retention type is specified,the snapshots of the Protection Groups using this policy will be kept for the last N days as specified in the duration of the datalock. During that time, the snapshots cannot be deleted.

days_to_keep (long|int): Specifies how many days to retain Snapshots

on the Cohesity Cluster.

days_to_keep_log (long|int): Specifies the number of days to retain

log run if Log Schedule exists.

days_to_keep_system (long|int): Specifies the number of days to retain

system backups made for bare metal recovery. This field is applicable if systemSchedulingPolicy is specified.

description (string): Description of the Protection Policy. extended_retention_policies (list of ExtendedRetentionPolicy):

Specifies additional retention policies that should be applied to the backup snapshots. A backup snapshot will be retained up to a time that is the maximum of all retention policies that are applicable to it.

full_scheduling_policy (SchedulingPolicy): Specifies the Full (no CBT)

backup schedule of a Protection Job and how long Snapshots captured by this schedule are retained on the Cohesity Cluster.

id (string): Specifies a unique Policy id assigned by the Cohesity

Cluster.

incremental_scheduling_policy (SchedulingPolicy): Specifies the

CBT-based backup schedule of a Protection Job and how long Snapshots captured by this schedule are retained on the Cohesity Cluster.

is_usable (bool): Specifies if the policy can be used to create a

job.

last_modified_time_msecs (long|int): Specifies the epoch time (in

milliseconds) when the Protection Policy was last modified.

log_scheduling_policy (SchedulingPolicy): Specifies settings that

define a backup schedule for a Protection Job.

name (string): Specifies the name of the Protection Policy. num_linked_policies (long|int): Species the number of policies linked

to a global policy.

parent_policy_id (string): Specifies the parent global policy Id. This

must be specified when creating a policy from global policy template.

retries (int): Specifies the number of times to retry capturing

Snapshots before the Job Run fails.

retry_interval_mins (int): Specifies the number of minutes before

retrying a failed Protection Job.

rpo_policy_settings (RpoPolicySettings): Specifies all the additional

settings that are applicable only to an RPO policy. This can include storage domain, settings of different environments, etc.

skip_interval_mins (int): Specifies the period of time before skipping

the execution of new Job Runs if an existing queued Job Run of the same Protection Job has not started. For example if this field is set to 30 minutes and a Job Run is scheduled to start at 5:00 AM every day but does not start due to conflicts (such as too many Jobs are running). If the new Job Run does not start by 5:30AM, the Cohesity Cluster will skip the new Job Run. If the original Job Run completes before 5:30AM the next day, a new Job Run is created and starts executing. This field is optional.

snapshot_archival_copy_policies (list of SnapshotArchivalCopyPolicy):

Array of External Targets. Specifies settings for copying Snapshots to Archival External Targets (such as AWS or Tape). It also defines the retention of copied Snapshots on an External Targets such as AWS and Tape.

snapshot_replication_copy_policies (list of

SnapshotReplicationCopyPolicy): Array of Remote Clusters. Specifies settings for copying Snapshots to Remote Clusters. It also defines the retention of copied Snapshots on a Remote Cluster.

system_scheduling_policy (SchedulingPolicy): Specifies settings that

define a backup schedule for a Protection Job.

tenant_ids (list of string): Specifies which organizations have been

assigned this policy. This value is only populated for the cluster admin for now.

mtype (TypeProtectionPolicyEnum): Specifies the type of the protection

policy. ‘kRegular’ means a regular Protection Policy. ‘kRPO’ means an RPO Protection Policy.

worm_retention_type (WormRetentionTypeProtectionPolicyEnum): Specifies

WORM retention type for the snapshots. When a WORM retention type is specified, the snapshots of the Protection Jobs using this policy will be kept until the maximum of the snapshot retention time. During that time, the snapshots cannot be deleted. This field is deprecated. Use DataLockConfig for incremental runs, DataLockConfigLog for log runs, DataLockConfigSystem for BMR runs, and DataLockConfig in extended retention and for copy targets config. deprecated: true. ‘kNone’ implies there is no WORM retention set. ‘kCompliance’ implies WORM retention is set for compliance reason. ‘kAdministrative’ implies WORM retention is set for administrative purposes.

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.