github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/ssmincidents/getResponsePlan.go (about)

     1  // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
     2  // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
     3  
     4  package ssmincidents
     5  
     6  import (
     7  	"context"
     8  	"reflect"
     9  
    10  	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal"
    11  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    12  )
    13  
    14  // Use this data source to manage a response plan in AWS Systems Manager Incident Manager.
    15  //
    16  // ## Example Usage
    17  func LookupResponsePlan(ctx *pulumi.Context, args *LookupResponsePlanArgs, opts ...pulumi.InvokeOption) (*LookupResponsePlanResult, error) {
    18  	opts = internal.PkgInvokeDefaultOpts(opts)
    19  	var rv LookupResponsePlanResult
    20  	err := ctx.Invoke("aws:ssmincidents/getResponsePlan:getResponsePlan", args, &rv, opts...)
    21  	if err != nil {
    22  		return nil, err
    23  	}
    24  	return &rv, nil
    25  }
    26  
    27  // A collection of arguments for invoking getResponsePlan.
    28  type LookupResponsePlanArgs struct {
    29  	// The Amazon Resource Name (ARN) of the response plan.
    30  	Arn string `pulumi:"arn"`
    31  	// The tags applied to the response plan.
    32  	Tags map[string]string `pulumi:"tags"`
    33  }
    34  
    35  // A collection of values returned by getResponsePlan.
    36  type LookupResponsePlanResult struct {
    37  	// (Optional) The actions that the response plan starts at the beginning of an incident.
    38  	Actions []GetResponsePlanAction `pulumi:"actions"`
    39  	Arn     string                  `pulumi:"arn"`
    40  	// The Chatbot chat channel used for collaboration during an incident.
    41  	ChatChannels []string `pulumi:"chatChannels"`
    42  	// The long format of the response plan name. This field can contain spaces.
    43  	DisplayName string `pulumi:"displayName"`
    44  	// The Amazon Resource Name (ARN) for the contacts and escalation plans that the response plan engages during an incident.
    45  	Engagements []string `pulumi:"engagements"`
    46  	// The provider-assigned unique ID for this managed resource.
    47  	Id                string                            `pulumi:"id"`
    48  	IncidentTemplates []GetResponsePlanIncidentTemplate `pulumi:"incidentTemplates"`
    49  	// Information about third-party services integrated into the response plan. The following values are supported:
    50  	Integrations []GetResponsePlanIntegration `pulumi:"integrations"`
    51  	// The name of the PagerDuty configuration.
    52  	Name string `pulumi:"name"`
    53  	// The tags applied to the response plan.
    54  	Tags map[string]string `pulumi:"tags"`
    55  }
    56  
    57  func LookupResponsePlanOutput(ctx *pulumi.Context, args LookupResponsePlanOutputArgs, opts ...pulumi.InvokeOption) LookupResponsePlanResultOutput {
    58  	return pulumi.ToOutputWithContext(context.Background(), args).
    59  		ApplyT(func(v interface{}) (LookupResponsePlanResult, error) {
    60  			args := v.(LookupResponsePlanArgs)
    61  			r, err := LookupResponsePlan(ctx, &args, opts...)
    62  			var s LookupResponsePlanResult
    63  			if r != nil {
    64  				s = *r
    65  			}
    66  			return s, err
    67  		}).(LookupResponsePlanResultOutput)
    68  }
    69  
    70  // A collection of arguments for invoking getResponsePlan.
    71  type LookupResponsePlanOutputArgs struct {
    72  	// The Amazon Resource Name (ARN) of the response plan.
    73  	Arn pulumi.StringInput `pulumi:"arn"`
    74  	// The tags applied to the response plan.
    75  	Tags pulumi.StringMapInput `pulumi:"tags"`
    76  }
    77  
    78  func (LookupResponsePlanOutputArgs) ElementType() reflect.Type {
    79  	return reflect.TypeOf((*LookupResponsePlanArgs)(nil)).Elem()
    80  }
    81  
    82  // A collection of values returned by getResponsePlan.
    83  type LookupResponsePlanResultOutput struct{ *pulumi.OutputState }
    84  
    85  func (LookupResponsePlanResultOutput) ElementType() reflect.Type {
    86  	return reflect.TypeOf((*LookupResponsePlanResult)(nil)).Elem()
    87  }
    88  
    89  func (o LookupResponsePlanResultOutput) ToLookupResponsePlanResultOutput() LookupResponsePlanResultOutput {
    90  	return o
    91  }
    92  
    93  func (o LookupResponsePlanResultOutput) ToLookupResponsePlanResultOutputWithContext(ctx context.Context) LookupResponsePlanResultOutput {
    94  	return o
    95  }
    96  
    97  // (Optional) The actions that the response plan starts at the beginning of an incident.
    98  func (o LookupResponsePlanResultOutput) Actions() GetResponsePlanActionArrayOutput {
    99  	return o.ApplyT(func(v LookupResponsePlanResult) []GetResponsePlanAction { return v.Actions }).(GetResponsePlanActionArrayOutput)
   100  }
   101  
   102  func (o LookupResponsePlanResultOutput) Arn() pulumi.StringOutput {
   103  	return o.ApplyT(func(v LookupResponsePlanResult) string { return v.Arn }).(pulumi.StringOutput)
   104  }
   105  
   106  // The Chatbot chat channel used for collaboration during an incident.
   107  func (o LookupResponsePlanResultOutput) ChatChannels() pulumi.StringArrayOutput {
   108  	return o.ApplyT(func(v LookupResponsePlanResult) []string { return v.ChatChannels }).(pulumi.StringArrayOutput)
   109  }
   110  
   111  // The long format of the response plan name. This field can contain spaces.
   112  func (o LookupResponsePlanResultOutput) DisplayName() pulumi.StringOutput {
   113  	return o.ApplyT(func(v LookupResponsePlanResult) string { return v.DisplayName }).(pulumi.StringOutput)
   114  }
   115  
   116  // The Amazon Resource Name (ARN) for the contacts and escalation plans that the response plan engages during an incident.
   117  func (o LookupResponsePlanResultOutput) Engagements() pulumi.StringArrayOutput {
   118  	return o.ApplyT(func(v LookupResponsePlanResult) []string { return v.Engagements }).(pulumi.StringArrayOutput)
   119  }
   120  
   121  // The provider-assigned unique ID for this managed resource.
   122  func (o LookupResponsePlanResultOutput) Id() pulumi.StringOutput {
   123  	return o.ApplyT(func(v LookupResponsePlanResult) string { return v.Id }).(pulumi.StringOutput)
   124  }
   125  
   126  func (o LookupResponsePlanResultOutput) IncidentTemplates() GetResponsePlanIncidentTemplateArrayOutput {
   127  	return o.ApplyT(func(v LookupResponsePlanResult) []GetResponsePlanIncidentTemplate { return v.IncidentTemplates }).(GetResponsePlanIncidentTemplateArrayOutput)
   128  }
   129  
   130  // Information about third-party services integrated into the response plan. The following values are supported:
   131  func (o LookupResponsePlanResultOutput) Integrations() GetResponsePlanIntegrationArrayOutput {
   132  	return o.ApplyT(func(v LookupResponsePlanResult) []GetResponsePlanIntegration { return v.Integrations }).(GetResponsePlanIntegrationArrayOutput)
   133  }
   134  
   135  // The name of the PagerDuty configuration.
   136  func (o LookupResponsePlanResultOutput) Name() pulumi.StringOutput {
   137  	return o.ApplyT(func(v LookupResponsePlanResult) string { return v.Name }).(pulumi.StringOutput)
   138  }
   139  
   140  // The tags applied to the response plan.
   141  func (o LookupResponsePlanResultOutput) Tags() pulumi.StringMapOutput {
   142  	return o.ApplyT(func(v LookupResponsePlanResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput)
   143  }
   144  
   145  func init() {
   146  	pulumi.RegisterOutputType(LookupResponsePlanResultOutput{})
   147  }