Class Framework


  • public class Framework
    extends com.pulumi.resources.CustomResource
    Provides an AWS Backup Framework resource. > **Note:** For the Deployment Status of the Framework to be successful, please turn on resource tracking to enable AWS Config recording to track configuration changes of your backup resources. This can be done from the AWS Console. ## Example Usage
     
     package generated_program;
     
     import com.pulumi.Context;
     import com.pulumi.Pulumi;
     import com.pulumi.core.Output;
     import com.pulumi.aws.backup.Framework;
     import com.pulumi.aws.backup.FrameworkArgs;
     import com.pulumi.aws.backup.inputs.FrameworkControlArgs;
     import com.pulumi.aws.backup.inputs.FrameworkControlInputParameterArgs;
     import com.pulumi.aws.backup.inputs.FrameworkControlScopeArgs;
     import java.util.ArrayList;
     import java.util.Arrays;
     import java.util.Map;
     import java.io.File;
     import java.nio.file.Files;
     import java.nio.file.Paths;
     
     public class App {
         public static void main(String[] args) {
             Pulumi.run(App::stack);
         }
     
         public static void stack(Context ctx) {
             var example = new Framework("example", FrameworkArgs.builder()
                 .controls(            
                     FrameworkControlArgs.builder()
                         .inputParameters(FrameworkControlInputParameterArgs.builder()
                             .name("requiredRetentionDays")
                             .value("35")
                             .build())
                         .name("BACKUP_RECOVERY_POINT_MINIMUM_RETENTION_CHECK")
                         .build(),
                     FrameworkControlArgs.builder()
                         .inputParameters(                    
                             FrameworkControlInputParameterArgs.builder()
                                 .name("requiredFrequencyUnit")
                                 .value("hours")
                                 .build(),
                             FrameworkControlInputParameterArgs.builder()
                                 .name("requiredRetentionDays")
                                 .value("35")
                                 .build(),
                             FrameworkControlInputParameterArgs.builder()
                                 .name("requiredFrequencyValue")
                                 .value("1")
                                 .build())
                         .name("BACKUP_PLAN_MIN_FREQUENCY_AND_MIN_RETENTION_CHECK")
                         .build(),
                     FrameworkControlArgs.builder()
                         .name("BACKUP_RECOVERY_POINT_ENCRYPTED")
                         .build(),
                     FrameworkControlArgs.builder()
                         .scope(FrameworkControlScopeArgs.builder()
                             .complianceResourceTypes("EBS")
                             .build())
                         .name("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_PLAN")
                         .build(),
                     FrameworkControlArgs.builder()
                         .name("BACKUP_RECOVERY_POINT_MANUAL_DELETION_DISABLED")
                         .build(),
                     FrameworkControlArgs.builder()
                         .scope(FrameworkControlScopeArgs.builder()
                             .complianceResourceTypes("EBS")
                             .build())
                         .inputParameters(                    
                             FrameworkControlInputParameterArgs.builder()
                                 .name("maxRetentionDays")
                                 .value("100")
                                 .build(),
                             FrameworkControlInputParameterArgs.builder()
                                 .name("minRetentionDays")
                                 .value("1")
                                 .build())
                         .name("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_VAULT_LOCK")
                         .build(),
                     FrameworkControlArgs.builder()
                         .scope(FrameworkControlScopeArgs.builder()
                             .complianceResourceTypes("EBS")
                             .build())
                         .inputParameters(                    
                             FrameworkControlInputParameterArgs.builder()
                                 .name("recoveryPointAgeUnit")
                                 .value("days")
                                 .build(),
                             FrameworkControlInputParameterArgs.builder()
                                 .name("recoveryPointAgeValue")
                                 .value("1")
                                 .build())
                         .name("BACKUP_LAST_RECOVERY_POINT_CREATED")
                         .build())
                 .name("exampleFramework")
                 .description("this is an example framework")
                 .tags(Map.of("Name", "Example Framework"))
                 .build());
     
         }
     }
     
     
    ## Import Using `pulumi import`, import Backup Framework using the `id` which corresponds to the name of the Backup Framework. For example: ```sh $ pulumi import aws:backup/framework:Framework test <id> ```
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.pulumi.resources.CustomResource

        com.pulumi.resources.CustomResource.CustomResourceInternal
      • Nested classes/interfaces inherited from class com.pulumi.resources.Resource

        com.pulumi.resources.Resource.LazyField<T extends java.lang.Object>, com.pulumi.resources.Resource.LazyFields, com.pulumi.resources.Resource.ResourceInternal
    • Field Summary

      • Fields inherited from class com.pulumi.resources.Resource

        childResources, remote
    • Constructor Summary

      Constructors 
      Constructor Description
      Framework​(java.lang.String name)  
      Framework​(java.lang.String name, FrameworkArgs args)  
      Framework​(java.lang.String name, FrameworkArgs args, com.pulumi.resources.CustomResourceOptions options)  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.pulumi.core.Output<java.lang.String> arn()  
      com.pulumi.core.Output<java.util.List<FrameworkControl>> controls()  
      com.pulumi.core.Output<java.lang.String> creationTime()  
      com.pulumi.core.Output<java.lang.String> deploymentStatus()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()  
      static Framework get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, FrameworkState state, com.pulumi.resources.CustomResourceOptions options)
      Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
      com.pulumi.core.Output<java.lang.String> name()  
      com.pulumi.core.Output<java.lang.String> region()  
      com.pulumi.core.Output<java.lang.String> status()  
      com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()  
      com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()  
      • Methods inherited from class com.pulumi.resources.CustomResource

        getId, id, idFuture
      • Methods inherited from class com.pulumi.resources.Resource

        getChildResources, getResourceName, getResourceType, getUrn, pulumiChildResources, pulumiResourceName, pulumiResourceType, urn
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Framework

        public Framework​(java.lang.String name)
        Parameters:
        name - The _unique_ name of the resulting resource.
      • Framework

        public Framework​(java.lang.String name,
                         FrameworkArgs args)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
      • Framework

        public Framework​(java.lang.String name,
                         FrameworkArgs args,
                         @Nullable
                         com.pulumi.resources.CustomResourceOptions options)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
        options - A bag of options that control this resource's behavior.
    • Method Detail

      • arn

        public com.pulumi.core.Output<java.lang.String> arn()
        Returns:
        ARN of the backup framework.
      • controls

        public com.pulumi.core.Output<java.util.List<FrameworkControl>> controls()
        Returns:
        One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
      • creationTime

        public com.pulumi.core.Output<java.lang.String> creationTime()
        Returns:
        Date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
      • deploymentStatus

        public com.pulumi.core.Output<java.lang.String> deploymentStatus()
        Returns:
        Deployment status of a framework. The statuses are: `CREATE_IN_PROGRESS` | `UPDATE_IN_PROGRESS` | `DELETE_IN_PROGRESS` | `COMPLETED` | `FAILED`.
      • description

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
        Returns:
        Description of the framework with a maximum of 1,024 characters
      • name

        public com.pulumi.core.Output<java.lang.String> name()
        Returns:
        Unique name of the framework. The name must be between 1 and 256 characters, starting with a letter, and consisting of letters, numbers, and underscores.
      • region

        public com.pulumi.core.Output<java.lang.String> region()
        Returns:
        Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
      • status

        public com.pulumi.core.Output<java.lang.String> status()
        Returns:
        Framework consists of one or more controls. Each control governs a resource, such as backup plans, backup selections, backup vaults, or recovery points. You can also turn AWS Config recording on or off for each resource. For more information refer to the [AWS documentation for Framework Status](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_DescribeFramework.html#Backup-DescribeFramework-response-FrameworkStatus)
      • tags

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> tags()
        Returns:
        Metadata that you can assign to help organize the frameworks you create. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
      • tagsAll

        public com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> tagsAll()
        Returns:
        Map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
      • get

        public static Framework get​(java.lang.String name,
                                    com.pulumi.core.Output<java.lang.String> id,
                                    @Nullable
                                    FrameworkState state,
                                    @Nullable
                                    com.pulumi.resources.CustomResourceOptions options)
        Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.
        Parameters:
        name - The _unique_ name of the resulting resource.
        id - The _unique_ provider ID of the resource to lookup.
        state -
        options - Optional settings to control the behavior of the CustomResource.