Struct aws_sdk_dlm::types::builders::PolicyDetailsBuilder
source · #[non_exhaustive]pub struct PolicyDetailsBuilder { /* private fields */ }
Expand description
A builder for PolicyDetails
.
Implementations§
source§impl PolicyDetailsBuilder
impl PolicyDetailsBuilder
sourcepub fn policy_type(self, input: PolicyTypeValues) -> Self
pub fn policy_type(self, input: PolicyTypeValues) -> Self
[Custom policies only] The valid target resource types and actions a policy can manage. Specify EBS_SNAPSHOT_MANAGEMENT
to create a lifecycle policy that manages the lifecycle of Amazon EBS snapshots. Specify IMAGE_MANAGEMENT
to create a lifecycle policy that manages the lifecycle of EBS-backed AMIs. Specify EVENT_BASED_POLICY
to create an event-based policy that performs specific actions when a defined event occurs in your Amazon Web Services account.
The default is EBS_SNAPSHOT_MANAGEMENT
.
sourcepub fn set_policy_type(self, input: Option<PolicyTypeValues>) -> Self
pub fn set_policy_type(self, input: Option<PolicyTypeValues>) -> Self
[Custom policies only] The valid target resource types and actions a policy can manage. Specify EBS_SNAPSHOT_MANAGEMENT
to create a lifecycle policy that manages the lifecycle of Amazon EBS snapshots. Specify IMAGE_MANAGEMENT
to create a lifecycle policy that manages the lifecycle of EBS-backed AMIs. Specify EVENT_BASED_POLICY
to create an event-based policy that performs specific actions when a defined event occurs in your Amazon Web Services account.
The default is EBS_SNAPSHOT_MANAGEMENT
.
sourcepub fn get_policy_type(&self) -> &Option<PolicyTypeValues>
pub fn get_policy_type(&self) -> &Option<PolicyTypeValues>
[Custom policies only] The valid target resource types and actions a policy can manage. Specify EBS_SNAPSHOT_MANAGEMENT
to create a lifecycle policy that manages the lifecycle of Amazon EBS snapshots. Specify IMAGE_MANAGEMENT
to create a lifecycle policy that manages the lifecycle of EBS-backed AMIs. Specify EVENT_BASED_POLICY
to create an event-based policy that performs specific actions when a defined event occurs in your Amazon Web Services account.
The default is EBS_SNAPSHOT_MANAGEMENT
.
sourcepub fn resource_types(self, input: ResourceTypeValues) -> Self
pub fn resource_types(self, input: ResourceTypeValues) -> Self
Appends an item to resource_types
.
To override the contents of this collection use set_resource_types
.
[Custom snapshot policies only] The target resource type for snapshot and AMI lifecycle policies. Use VOLUME
to create snapshots of individual volumes or use INSTANCE
to create multi-volume snapshots from the volumes for an instance.
sourcepub fn set_resource_types(self, input: Option<Vec<ResourceTypeValues>>) -> Self
pub fn set_resource_types(self, input: Option<Vec<ResourceTypeValues>>) -> Self
[Custom snapshot policies only] The target resource type for snapshot and AMI lifecycle policies. Use VOLUME
to create snapshots of individual volumes or use INSTANCE
to create multi-volume snapshots from the volumes for an instance.
sourcepub fn get_resource_types(&self) -> &Option<Vec<ResourceTypeValues>>
pub fn get_resource_types(&self) -> &Option<Vec<ResourceTypeValues>>
[Custom snapshot policies only] The target resource type for snapshot and AMI lifecycle policies. Use VOLUME
to create snapshots of individual volumes or use INSTANCE
to create multi-volume snapshots from the volumes for an instance.
sourcepub fn resource_locations(self, input: ResourceLocationValues) -> Self
pub fn resource_locations(self, input: ResourceLocationValues) -> Self
Appends an item to resource_locations
.
To override the contents of this collection use set_resource_locations
.
[Custom snapshot and AMI policies only] The location of the resources to backup. If the source resources are located in an Amazon Web Services Region, specify CLOUD
. If the source resources are located on an Outpost in your account, specify OUTPOST
.
If you specify OUTPOST
, Amazon Data Lifecycle Manager backs up all resources of the specified type with matching target tags across all of the Outposts in your account.
sourcepub fn set_resource_locations(
self,
input: Option<Vec<ResourceLocationValues>>
) -> Self
pub fn set_resource_locations( self, input: Option<Vec<ResourceLocationValues>> ) -> Self
[Custom snapshot and AMI policies only] The location of the resources to backup. If the source resources are located in an Amazon Web Services Region, specify CLOUD
. If the source resources are located on an Outpost in your account, specify OUTPOST
.
If you specify OUTPOST
, Amazon Data Lifecycle Manager backs up all resources of the specified type with matching target tags across all of the Outposts in your account.
sourcepub fn get_resource_locations(&self) -> &Option<Vec<ResourceLocationValues>>
pub fn get_resource_locations(&self) -> &Option<Vec<ResourceLocationValues>>
[Custom snapshot and AMI policies only] The location of the resources to backup. If the source resources are located in an Amazon Web Services Region, specify CLOUD
. If the source resources are located on an Outpost in your account, specify OUTPOST
.
If you specify OUTPOST
, Amazon Data Lifecycle Manager backs up all resources of the specified type with matching target tags across all of the Outposts in your account.
Appends an item to target_tags
.
To override the contents of this collection use set_target_tags
.
[Custom snapshot and AMI policies only] The single tag that identifies targeted resources for this policy.
[Custom snapshot and AMI policies only] The single tag that identifies targeted resources for this policy.
[Custom snapshot and AMI policies only] The single tag that identifies targeted resources for this policy.
sourcepub fn schedules(self, input: Schedule) -> Self
pub fn schedules(self, input: Schedule) -> Self
Appends an item to schedules
.
To override the contents of this collection use set_schedules
.
[Custom snapshot and AMI policies only] The schedules of policy-defined actions for snapshot and AMI lifecycle policies. A policy can have up to four schedules—one mandatory schedule and up to three optional schedules.
sourcepub fn set_schedules(self, input: Option<Vec<Schedule>>) -> Self
pub fn set_schedules(self, input: Option<Vec<Schedule>>) -> Self
[Custom snapshot and AMI policies only] The schedules of policy-defined actions for snapshot and AMI lifecycle policies. A policy can have up to four schedules—one mandatory schedule and up to three optional schedules.
sourcepub fn get_schedules(&self) -> &Option<Vec<Schedule>>
pub fn get_schedules(&self) -> &Option<Vec<Schedule>>
[Custom snapshot and AMI policies only] The schedules of policy-defined actions for snapshot and AMI lifecycle policies. A policy can have up to four schedules—one mandatory schedule and up to three optional schedules.
sourcepub fn parameters(self, input: Parameters) -> Self
pub fn parameters(self, input: Parameters) -> Self
[Custom snapshot and AMI policies only] A set of optional parameters for snapshot and AMI lifecycle policies.
If you are modifying a policy that was created or previously modified using the Amazon Data Lifecycle Manager console, then you must include this parameter and specify either the default values or the new values that you require. You can't omit this parameter or set its values to null.
sourcepub fn set_parameters(self, input: Option<Parameters>) -> Self
pub fn set_parameters(self, input: Option<Parameters>) -> Self
[Custom snapshot and AMI policies only] A set of optional parameters for snapshot and AMI lifecycle policies.
If you are modifying a policy that was created or previously modified using the Amazon Data Lifecycle Manager console, then you must include this parameter and specify either the default values or the new values that you require. You can't omit this parameter or set its values to null.
sourcepub fn get_parameters(&self) -> &Option<Parameters>
pub fn get_parameters(&self) -> &Option<Parameters>
[Custom snapshot and AMI policies only] A set of optional parameters for snapshot and AMI lifecycle policies.
If you are modifying a policy that was created or previously modified using the Amazon Data Lifecycle Manager console, then you must include this parameter and specify either the default values or the new values that you require. You can't omit this parameter or set its values to null.
sourcepub fn event_source(self, input: EventSource) -> Self
pub fn event_source(self, input: EventSource) -> Self
[Event-based policies only] The event that activates the event-based policy.
sourcepub fn set_event_source(self, input: Option<EventSource>) -> Self
pub fn set_event_source(self, input: Option<EventSource>) -> Self
[Event-based policies only] The event that activates the event-based policy.
sourcepub fn get_event_source(&self) -> &Option<EventSource>
pub fn get_event_source(&self) -> &Option<EventSource>
[Event-based policies only] The event that activates the event-based policy.
sourcepub fn actions(self, input: Action) -> Self
pub fn actions(self, input: Action) -> Self
Appends an item to actions
.
To override the contents of this collection use set_actions
.
[Event-based policies only] The actions to be performed when the event-based policy is activated. You can specify only one action per policy.
sourcepub fn set_actions(self, input: Option<Vec<Action>>) -> Self
pub fn set_actions(self, input: Option<Vec<Action>>) -> Self
[Event-based policies only] The actions to be performed when the event-based policy is activated. You can specify only one action per policy.
sourcepub fn get_actions(&self) -> &Option<Vec<Action>>
pub fn get_actions(&self) -> &Option<Vec<Action>>
[Event-based policies only] The actions to be performed when the event-based policy is activated. You can specify only one action per policy.
sourcepub fn policy_language(self, input: PolicyLanguageValues) -> Self
pub fn policy_language(self, input: PolicyLanguageValues) -> Self
The type of policy to create. Specify one of the following:
-
SIMPLIFIED
To create a default policy. -
STANDARD
To create a custom policy.
sourcepub fn set_policy_language(self, input: Option<PolicyLanguageValues>) -> Self
pub fn set_policy_language(self, input: Option<PolicyLanguageValues>) -> Self
The type of policy to create. Specify one of the following:
-
SIMPLIFIED
To create a default policy. -
STANDARD
To create a custom policy.
sourcepub fn get_policy_language(&self) -> &Option<PolicyLanguageValues>
pub fn get_policy_language(&self) -> &Option<PolicyLanguageValues>
The type of policy to create. Specify one of the following:
-
SIMPLIFIED
To create a default policy. -
STANDARD
To create a custom policy.
sourcepub fn resource_type(self, input: ResourceTypeValues) -> Self
pub fn resource_type(self, input: ResourceTypeValues) -> Self
[Default policies only] Specify the type of default policy to create.
-
To create a default policy for EBS snapshots, that creates snapshots of all volumes in the Region that do not have recent backups, specify
VOLUME
. -
To create a default policy for EBS-backed AMIs, that creates EBS-backed AMIs from all instances in the Region that do not have recent backups, specify
INSTANCE
.
sourcepub fn set_resource_type(self, input: Option<ResourceTypeValues>) -> Self
pub fn set_resource_type(self, input: Option<ResourceTypeValues>) -> Self
[Default policies only] Specify the type of default policy to create.
-
To create a default policy for EBS snapshots, that creates snapshots of all volumes in the Region that do not have recent backups, specify
VOLUME
. -
To create a default policy for EBS-backed AMIs, that creates EBS-backed AMIs from all instances in the Region that do not have recent backups, specify
INSTANCE
.
sourcepub fn get_resource_type(&self) -> &Option<ResourceTypeValues>
pub fn get_resource_type(&self) -> &Option<ResourceTypeValues>
[Default policies only] Specify the type of default policy to create.
-
To create a default policy for EBS snapshots, that creates snapshots of all volumes in the Region that do not have recent backups, specify
VOLUME
. -
To create a default policy for EBS-backed AMIs, that creates EBS-backed AMIs from all instances in the Region that do not have recent backups, specify
INSTANCE
.
sourcepub fn create_interval(self, input: i32) -> Self
pub fn create_interval(self, input: i32) -> Self
[Default policies only] Specifies how often the policy should run and create snapshots or AMIs. The creation frequency can range from 1 to 7 days. If you do not specify a value, the default is 1.
Default: 1
sourcepub fn set_create_interval(self, input: Option<i32>) -> Self
pub fn set_create_interval(self, input: Option<i32>) -> Self
[Default policies only] Specifies how often the policy should run and create snapshots or AMIs. The creation frequency can range from 1 to 7 days. If you do not specify a value, the default is 1.
Default: 1
sourcepub fn get_create_interval(&self) -> &Option<i32>
pub fn get_create_interval(&self) -> &Option<i32>
[Default policies only] Specifies how often the policy should run and create snapshots or AMIs. The creation frequency can range from 1 to 7 days. If you do not specify a value, the default is 1.
Default: 1
sourcepub fn retain_interval(self, input: i32) -> Self
pub fn retain_interval(self, input: i32) -> Self
[Default policies only] Specifies how long the policy should retain snapshots or AMIs before deleting them. The retention period can range from 2 to 14 days, but it must be greater than the creation frequency to ensure that the policy retains at least 1 snapshot or AMI at any given time. If you do not specify a value, the default is 7.
Default: 7
sourcepub fn set_retain_interval(self, input: Option<i32>) -> Self
pub fn set_retain_interval(self, input: Option<i32>) -> Self
[Default policies only] Specifies how long the policy should retain snapshots or AMIs before deleting them. The retention period can range from 2 to 14 days, but it must be greater than the creation frequency to ensure that the policy retains at least 1 snapshot or AMI at any given time. If you do not specify a value, the default is 7.
Default: 7
sourcepub fn get_retain_interval(&self) -> &Option<i32>
pub fn get_retain_interval(&self) -> &Option<i32>
[Default policies only] Specifies how long the policy should retain snapshots or AMIs before deleting them. The retention period can range from 2 to 14 days, but it must be greater than the creation frequency to ensure that the policy retains at least 1 snapshot or AMI at any given time. If you do not specify a value, the default is 7.
Default: 7
[Default policies only] Indicates whether the policy should copy tags from the source resource to the snapshot or AMI. If you do not specify a value, the default is false
.
Default: false
[Default policies only] Indicates whether the policy should copy tags from the source resource to the snapshot or AMI. If you do not specify a value, the default is false
.
Default: false
[Default policies only] Indicates whether the policy should copy tags from the source resource to the snapshot or AMI. If you do not specify a value, the default is false
.
Default: false
sourcepub fn cross_region_copy_targets(self, input: CrossRegionCopyTarget) -> Self
pub fn cross_region_copy_targets(self, input: CrossRegionCopyTarget) -> Self
Appends an item to cross_region_copy_targets
.
To override the contents of this collection use set_cross_region_copy_targets
.
[Default policies only] Specifies destination Regions for snapshot or AMI copies. You can specify up to 3 destination Regions. If you do not want to create cross-Region copies, omit this parameter.
sourcepub fn set_cross_region_copy_targets(
self,
input: Option<Vec<CrossRegionCopyTarget>>
) -> Self
pub fn set_cross_region_copy_targets( self, input: Option<Vec<CrossRegionCopyTarget>> ) -> Self
[Default policies only] Specifies destination Regions for snapshot or AMI copies. You can specify up to 3 destination Regions. If you do not want to create cross-Region copies, omit this parameter.
sourcepub fn get_cross_region_copy_targets(
&self
) -> &Option<Vec<CrossRegionCopyTarget>>
pub fn get_cross_region_copy_targets( &self ) -> &Option<Vec<CrossRegionCopyTarget>>
[Default policies only] Specifies destination Regions for snapshot or AMI copies. You can specify up to 3 destination Regions. If you do not want to create cross-Region copies, omit this parameter.
sourcepub fn extend_deletion(self, input: bool) -> Self
pub fn extend_deletion(self, input: bool) -> Self
[Default policies only] Defines the snapshot or AMI retention behavior for the policy if the source volume or instance is deleted, or if the policy enters the error, disabled, or deleted state.
By default (ExtendDeletion=false):
-
If a source resource is deleted, Amazon Data Lifecycle Manager will continue to delete previously created snapshots or AMIs, up to but not including the last one, based on the specified retention period. If you want Amazon Data Lifecycle Manager to delete all snapshots or AMIs, including the last one, specify
true
. -
If a policy enters the error, disabled, or deleted state, Amazon Data Lifecycle Manager stops deleting snapshots and AMIs. If you want Amazon Data Lifecycle Manager to continue deleting snapshots or AMIs, including the last one, if the policy enters one of these states, specify
true
.
If you enable extended deletion (ExtendDeletion=true), you override both default behaviors simultaneously.
If you do not specify a value, the default is false
.
Default: false
sourcepub fn set_extend_deletion(self, input: Option<bool>) -> Self
pub fn set_extend_deletion(self, input: Option<bool>) -> Self
[Default policies only] Defines the snapshot or AMI retention behavior for the policy if the source volume or instance is deleted, or if the policy enters the error, disabled, or deleted state.
By default (ExtendDeletion=false):
-
If a source resource is deleted, Amazon Data Lifecycle Manager will continue to delete previously created snapshots or AMIs, up to but not including the last one, based on the specified retention period. If you want Amazon Data Lifecycle Manager to delete all snapshots or AMIs, including the last one, specify
true
. -
If a policy enters the error, disabled, or deleted state, Amazon Data Lifecycle Manager stops deleting snapshots and AMIs. If you want Amazon Data Lifecycle Manager to continue deleting snapshots or AMIs, including the last one, if the policy enters one of these states, specify
true
.
If you enable extended deletion (ExtendDeletion=true), you override both default behaviors simultaneously.
If you do not specify a value, the default is false
.
Default: false
sourcepub fn get_extend_deletion(&self) -> &Option<bool>
pub fn get_extend_deletion(&self) -> &Option<bool>
[Default policies only] Defines the snapshot or AMI retention behavior for the policy if the source volume or instance is deleted, or if the policy enters the error, disabled, or deleted state.
By default (ExtendDeletion=false):
-
If a source resource is deleted, Amazon Data Lifecycle Manager will continue to delete previously created snapshots or AMIs, up to but not including the last one, based on the specified retention period. If you want Amazon Data Lifecycle Manager to delete all snapshots or AMIs, including the last one, specify
true
. -
If a policy enters the error, disabled, or deleted state, Amazon Data Lifecycle Manager stops deleting snapshots and AMIs. If you want Amazon Data Lifecycle Manager to continue deleting snapshots or AMIs, including the last one, if the policy enters one of these states, specify
true
.
If you enable extended deletion (ExtendDeletion=true), you override both default behaviors simultaneously.
If you do not specify a value, the default is false
.
Default: false
sourcepub fn exclusions(self, input: Exclusions) -> Self
pub fn exclusions(self, input: Exclusions) -> Self
[Default policies only] Specifies exclusion parameters for volumes or instances for which you do not want to create snapshots or AMIs. The policy will not create snapshots or AMIs for target resources that match any of the specified exclusion parameters.
sourcepub fn set_exclusions(self, input: Option<Exclusions>) -> Self
pub fn set_exclusions(self, input: Option<Exclusions>) -> Self
[Default policies only] Specifies exclusion parameters for volumes or instances for which you do not want to create snapshots or AMIs. The policy will not create snapshots or AMIs for target resources that match any of the specified exclusion parameters.
sourcepub fn get_exclusions(&self) -> &Option<Exclusions>
pub fn get_exclusions(&self) -> &Option<Exclusions>
[Default policies only] Specifies exclusion parameters for volumes or instances for which you do not want to create snapshots or AMIs. The policy will not create snapshots or AMIs for target resources that match any of the specified exclusion parameters.
sourcepub fn build(self) -> PolicyDetails
pub fn build(self) -> PolicyDetails
Consumes the builder and constructs a PolicyDetails
.
Trait Implementations§
source§impl Clone for PolicyDetailsBuilder
impl Clone for PolicyDetailsBuilder
source§fn clone(&self) -> PolicyDetailsBuilder
fn clone(&self) -> PolicyDetailsBuilder
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for PolicyDetailsBuilder
impl Debug for PolicyDetailsBuilder
source§impl Default for PolicyDetailsBuilder
impl Default for PolicyDetailsBuilder
source§fn default() -> PolicyDetailsBuilder
fn default() -> PolicyDetailsBuilder
source§impl PartialEq for PolicyDetailsBuilder
impl PartialEq for PolicyDetailsBuilder
source§fn eq(&self, other: &PolicyDetailsBuilder) -> bool
fn eq(&self, other: &PolicyDetailsBuilder) -> bool
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for PolicyDetailsBuilder
Auto Trait Implementations§
impl Freeze for PolicyDetailsBuilder
impl RefUnwindSafe for PolicyDetailsBuilder
impl Send for PolicyDetailsBuilder
impl Sync for PolicyDetailsBuilder
impl Unpin for PolicyDetailsBuilder
impl UnwindSafe for PolicyDetailsBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more