Plan

class Plan : KotlinCustomResource

Resource for managing an AWS SSM Contact Plan.

Example Usage

Basic Usage

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ssmcontacts.Plan;
import com.pulumi.aws.ssmcontacts.PlanArgs;
import com.pulumi.aws.ssmcontacts.inputs.PlanStageArgs;
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 Plan("example", PlanArgs.builder()
.contactId("arn:aws:ssm-contacts:us-west-2:123456789012:contact/contactalias")
.stages(PlanStageArgs.builder()
.durationInMinutes(1)
.build())
.build());
}
}

Usage with SSM Contact

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ssmcontacts.Contact;
import com.pulumi.aws.ssmcontacts.ContactArgs;
import com.pulumi.aws.ssmcontacts.Plan;
import com.pulumi.aws.ssmcontacts.PlanArgs;
import com.pulumi.aws.ssmcontacts.inputs.PlanStageArgs;
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 contact = new Contact("contact", ContactArgs.builder()
.alias("alias")
.type("PERSONAL")
.build());
var plan = new Plan("plan", PlanArgs.builder()
.contactId(contact.arn())
.stages(PlanStageArgs.builder()
.durationInMinutes(1)
.build())
.build());
}
}

Usage With All Fields

package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.ssmcontacts.Contact;
import com.pulumi.aws.ssmcontacts.ContactArgs;
import com.pulumi.aws.ssmcontacts.Plan;
import com.pulumi.aws.ssmcontacts.PlanArgs;
import com.pulumi.aws.ssmcontacts.inputs.PlanStageArgs;
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 escalationPlan = new Contact("escalationPlan", ContactArgs.builder()
.alias("escalation-plan-alias")
.type("ESCALATION")
.build());
var contactOne = new Contact("contactOne", ContactArgs.builder()
.alias("alias")
.type("PERSONAL")
.build());
var contactTwo = new Contact("contactTwo", ContactArgs.builder()
.alias("alias")
.type("PERSONAL")
.build());
var test = new Plan("test", PlanArgs.builder()
.contactId(escalationPlan.arn())
.stages(PlanStageArgs.builder()
.durationInMinutes(0)
.targets(
PlanStageTargetArgs.builder()
.contactTargetInfo(PlanStageTargetContactTargetInfoArgs.builder()
.isEssential(false)
.contactId(contactOne.arn())
.build())
.build(),
PlanStageTargetArgs.builder()
.contactTargetInfo(PlanStageTargetContactTargetInfoArgs.builder()
.isEssential(true)
.contactId(contactTwo.arn())
.build())
.build())
.build())
.build());
}
}

Import

Import SSM Contact Plan using the Contact ARN. For example

$ pulumi import aws:ssmcontacts/plan:Plan example {ARNValue}

Properties

Link copied to clipboard
val contactId: Output<String>

The Amazon Resource Name (ARN) of the contact or escalation plan.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val stages: Output<List<PlanStage>>

List of stages. A contact has an engagement plan with stages that contact specified contact channels. An escalation plan uses stages that contact specified contacts.

Link copied to clipboard
val urn: Output<String>