Framework
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.FrameworkControlScopeArgs;
import java.util.List;
import java.util.ArrayList;
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()
.name("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_PLAN")
.scope(FrameworkControlScopeArgs.builder()
.complianceResourceTypes("EBS")
.build())
.build(),
FrameworkControlArgs.builder()
.name("BACKUP_RECOVERY_POINT_MANUAL_DELETION_DISABLED")
.build(),
FrameworkControlArgs.builder()
.inputParameters(
FrameworkControlInputParameterArgs.builder()
.name("maxRetentionDays")
.value("100")
.build(),
FrameworkControlInputParameterArgs.builder()
.name("minRetentionDays")
.value("1")
.build())
.name("BACKUP_RESOURCES_PROTECTED_BY_BACKUP_VAULT_LOCK")
.scope(FrameworkControlScopeArgs.builder()
.complianceResourceTypes("EBS")
.build())
.build(),
FrameworkControlArgs.builder()
.inputParameters(
FrameworkControlInputParameterArgs.builder()
.name("recoveryPointAgeUnit")
.value("days")
.build(),
FrameworkControlInputParameterArgs.builder()
.name("recoveryPointAgeValue")
.value("1")
.build())
.name("BACKUP_LAST_RECOVERY_POINT_CREATED")
.scope(FrameworkControlScopeArgs.builder()
.complianceResourceTypes("EBS")
.build())
.build())
.description("this is an example framework")
.tags(Map.of("Name", "Example Framework"))
.build());
}
}
Import
Backup Framework can be imported using the id
which corresponds to the name of the Backup Framework, e.g.,
$ pulumi import aws:backup/framework:Framework test <id>
Properties
One or more control blocks that make up the framework. Each control in the list has a name, input parameters, and scope. Detailed below.
The date and time that a framework is created, in Unix format and Coordinated Universal Time (UTC).
The deployment status of a framework. The statuses are: CREATE_IN_PROGRESS
| UPDATE_IN_PROGRESS
| DELETE_IN_PROGRESS
| COMPLETED
| FAILED
.
The description of the framework with a maximum of 1,024 characters
A 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