github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/connect/lambdaFunctionAssociation.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 connect 5 6 import ( 7 "context" 8 "reflect" 9 10 "errors" 11 "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal" 12 "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 13 ) 14 15 // Provides an Amazon Connect Lambda Function Association. For more information see 16 // [Amazon Connect: Getting Started](https://docs.aws.amazon.com/connect/latest/adminguide/amazon-connect-get-started.html) and [Invoke AWS Lambda functions](https://docs.aws.amazon.com/connect/latest/adminguide/connect-lambda-functions.html). 17 // 18 // ## Example Usage 19 // 20 // <!--Start PulumiCodeChooser --> 21 // ```go 22 // package main 23 // 24 // import ( 25 // 26 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/connect" 27 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 28 // 29 // ) 30 // 31 // func main() { 32 // pulumi.Run(func(ctx *pulumi.Context) error { 33 // _, err := connect.NewLambdaFunctionAssociation(ctx, "example", &connect.LambdaFunctionAssociationArgs{ 34 // FunctionArn: pulumi.Any(exampleAwsLambdaFunction.Arn), 35 // InstanceId: pulumi.Any(exampleAwsConnectInstance.Id), 36 // }) 37 // if err != nil { 38 // return err 39 // } 40 // return nil 41 // }) 42 // } 43 // 44 // ``` 45 // <!--End PulumiCodeChooser --> 46 // 47 // ## Import 48 // 49 // Using `pulumi import`, import `aws_connect_lambda_function_association` using the `instance_id` and `function_arn` separated by a comma (`,`). For example: 50 // 51 // ```sh 52 // $ pulumi import aws:connect/lambdaFunctionAssociation:LambdaFunctionAssociation example aaaaaaaa-bbbb-cccc-dddd-111111111111,arn:aws:lambda:us-west-2:123456789123:function:example 53 // ``` 54 type LambdaFunctionAssociation struct { 55 pulumi.CustomResourceState 56 57 // Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier. 58 FunctionArn pulumi.StringOutput `pulumi:"functionArn"` 59 // The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance. 60 InstanceId pulumi.StringOutput `pulumi:"instanceId"` 61 } 62 63 // NewLambdaFunctionAssociation registers a new resource with the given unique name, arguments, and options. 64 func NewLambdaFunctionAssociation(ctx *pulumi.Context, 65 name string, args *LambdaFunctionAssociationArgs, opts ...pulumi.ResourceOption) (*LambdaFunctionAssociation, error) { 66 if args == nil { 67 return nil, errors.New("missing one or more required arguments") 68 } 69 70 if args.FunctionArn == nil { 71 return nil, errors.New("invalid value for required argument 'FunctionArn'") 72 } 73 if args.InstanceId == nil { 74 return nil, errors.New("invalid value for required argument 'InstanceId'") 75 } 76 opts = internal.PkgResourceDefaultOpts(opts) 77 var resource LambdaFunctionAssociation 78 err := ctx.RegisterResource("aws:connect/lambdaFunctionAssociation:LambdaFunctionAssociation", name, args, &resource, opts...) 79 if err != nil { 80 return nil, err 81 } 82 return &resource, nil 83 } 84 85 // GetLambdaFunctionAssociation gets an existing LambdaFunctionAssociation resource's state with the given name, ID, and optional 86 // state properties that are used to uniquely qualify the lookup (nil if not required). 87 func GetLambdaFunctionAssociation(ctx *pulumi.Context, 88 name string, id pulumi.IDInput, state *LambdaFunctionAssociationState, opts ...pulumi.ResourceOption) (*LambdaFunctionAssociation, error) { 89 var resource LambdaFunctionAssociation 90 err := ctx.ReadResource("aws:connect/lambdaFunctionAssociation:LambdaFunctionAssociation", name, id, state, &resource, opts...) 91 if err != nil { 92 return nil, err 93 } 94 return &resource, nil 95 } 96 97 // Input properties used for looking up and filtering LambdaFunctionAssociation resources. 98 type lambdaFunctionAssociationState struct { 99 // Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier. 100 FunctionArn *string `pulumi:"functionArn"` 101 // The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance. 102 InstanceId *string `pulumi:"instanceId"` 103 } 104 105 type LambdaFunctionAssociationState struct { 106 // Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier. 107 FunctionArn pulumi.StringPtrInput 108 // The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance. 109 InstanceId pulumi.StringPtrInput 110 } 111 112 func (LambdaFunctionAssociationState) ElementType() reflect.Type { 113 return reflect.TypeOf((*lambdaFunctionAssociationState)(nil)).Elem() 114 } 115 116 type lambdaFunctionAssociationArgs struct { 117 // Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier. 118 FunctionArn string `pulumi:"functionArn"` 119 // The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance. 120 InstanceId string `pulumi:"instanceId"` 121 } 122 123 // The set of arguments for constructing a LambdaFunctionAssociation resource. 124 type LambdaFunctionAssociationArgs struct { 125 // Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier. 126 FunctionArn pulumi.StringInput 127 // The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance. 128 InstanceId pulumi.StringInput 129 } 130 131 func (LambdaFunctionAssociationArgs) ElementType() reflect.Type { 132 return reflect.TypeOf((*lambdaFunctionAssociationArgs)(nil)).Elem() 133 } 134 135 type LambdaFunctionAssociationInput interface { 136 pulumi.Input 137 138 ToLambdaFunctionAssociationOutput() LambdaFunctionAssociationOutput 139 ToLambdaFunctionAssociationOutputWithContext(ctx context.Context) LambdaFunctionAssociationOutput 140 } 141 142 func (*LambdaFunctionAssociation) ElementType() reflect.Type { 143 return reflect.TypeOf((**LambdaFunctionAssociation)(nil)).Elem() 144 } 145 146 func (i *LambdaFunctionAssociation) ToLambdaFunctionAssociationOutput() LambdaFunctionAssociationOutput { 147 return i.ToLambdaFunctionAssociationOutputWithContext(context.Background()) 148 } 149 150 func (i *LambdaFunctionAssociation) ToLambdaFunctionAssociationOutputWithContext(ctx context.Context) LambdaFunctionAssociationOutput { 151 return pulumi.ToOutputWithContext(ctx, i).(LambdaFunctionAssociationOutput) 152 } 153 154 // LambdaFunctionAssociationArrayInput is an input type that accepts LambdaFunctionAssociationArray and LambdaFunctionAssociationArrayOutput values. 155 // You can construct a concrete instance of `LambdaFunctionAssociationArrayInput` via: 156 // 157 // LambdaFunctionAssociationArray{ LambdaFunctionAssociationArgs{...} } 158 type LambdaFunctionAssociationArrayInput interface { 159 pulumi.Input 160 161 ToLambdaFunctionAssociationArrayOutput() LambdaFunctionAssociationArrayOutput 162 ToLambdaFunctionAssociationArrayOutputWithContext(context.Context) LambdaFunctionAssociationArrayOutput 163 } 164 165 type LambdaFunctionAssociationArray []LambdaFunctionAssociationInput 166 167 func (LambdaFunctionAssociationArray) ElementType() reflect.Type { 168 return reflect.TypeOf((*[]*LambdaFunctionAssociation)(nil)).Elem() 169 } 170 171 func (i LambdaFunctionAssociationArray) ToLambdaFunctionAssociationArrayOutput() LambdaFunctionAssociationArrayOutput { 172 return i.ToLambdaFunctionAssociationArrayOutputWithContext(context.Background()) 173 } 174 175 func (i LambdaFunctionAssociationArray) ToLambdaFunctionAssociationArrayOutputWithContext(ctx context.Context) LambdaFunctionAssociationArrayOutput { 176 return pulumi.ToOutputWithContext(ctx, i).(LambdaFunctionAssociationArrayOutput) 177 } 178 179 // LambdaFunctionAssociationMapInput is an input type that accepts LambdaFunctionAssociationMap and LambdaFunctionAssociationMapOutput values. 180 // You can construct a concrete instance of `LambdaFunctionAssociationMapInput` via: 181 // 182 // LambdaFunctionAssociationMap{ "key": LambdaFunctionAssociationArgs{...} } 183 type LambdaFunctionAssociationMapInput interface { 184 pulumi.Input 185 186 ToLambdaFunctionAssociationMapOutput() LambdaFunctionAssociationMapOutput 187 ToLambdaFunctionAssociationMapOutputWithContext(context.Context) LambdaFunctionAssociationMapOutput 188 } 189 190 type LambdaFunctionAssociationMap map[string]LambdaFunctionAssociationInput 191 192 func (LambdaFunctionAssociationMap) ElementType() reflect.Type { 193 return reflect.TypeOf((*map[string]*LambdaFunctionAssociation)(nil)).Elem() 194 } 195 196 func (i LambdaFunctionAssociationMap) ToLambdaFunctionAssociationMapOutput() LambdaFunctionAssociationMapOutput { 197 return i.ToLambdaFunctionAssociationMapOutputWithContext(context.Background()) 198 } 199 200 func (i LambdaFunctionAssociationMap) ToLambdaFunctionAssociationMapOutputWithContext(ctx context.Context) LambdaFunctionAssociationMapOutput { 201 return pulumi.ToOutputWithContext(ctx, i).(LambdaFunctionAssociationMapOutput) 202 } 203 204 type LambdaFunctionAssociationOutput struct{ *pulumi.OutputState } 205 206 func (LambdaFunctionAssociationOutput) ElementType() reflect.Type { 207 return reflect.TypeOf((**LambdaFunctionAssociation)(nil)).Elem() 208 } 209 210 func (o LambdaFunctionAssociationOutput) ToLambdaFunctionAssociationOutput() LambdaFunctionAssociationOutput { 211 return o 212 } 213 214 func (o LambdaFunctionAssociationOutput) ToLambdaFunctionAssociationOutputWithContext(ctx context.Context) LambdaFunctionAssociationOutput { 215 return o 216 } 217 218 // Amazon Resource Name (ARN) of the Lambda Function, omitting any version or alias qualifier. 219 func (o LambdaFunctionAssociationOutput) FunctionArn() pulumi.StringOutput { 220 return o.ApplyT(func(v *LambdaFunctionAssociation) pulumi.StringOutput { return v.FunctionArn }).(pulumi.StringOutput) 221 } 222 223 // The identifier of the Amazon Connect instance. You can find the instanceId in the ARN of the instance. 224 func (o LambdaFunctionAssociationOutput) InstanceId() pulumi.StringOutput { 225 return o.ApplyT(func(v *LambdaFunctionAssociation) pulumi.StringOutput { return v.InstanceId }).(pulumi.StringOutput) 226 } 227 228 type LambdaFunctionAssociationArrayOutput struct{ *pulumi.OutputState } 229 230 func (LambdaFunctionAssociationArrayOutput) ElementType() reflect.Type { 231 return reflect.TypeOf((*[]*LambdaFunctionAssociation)(nil)).Elem() 232 } 233 234 func (o LambdaFunctionAssociationArrayOutput) ToLambdaFunctionAssociationArrayOutput() LambdaFunctionAssociationArrayOutput { 235 return o 236 } 237 238 func (o LambdaFunctionAssociationArrayOutput) ToLambdaFunctionAssociationArrayOutputWithContext(ctx context.Context) LambdaFunctionAssociationArrayOutput { 239 return o 240 } 241 242 func (o LambdaFunctionAssociationArrayOutput) Index(i pulumi.IntInput) LambdaFunctionAssociationOutput { 243 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *LambdaFunctionAssociation { 244 return vs[0].([]*LambdaFunctionAssociation)[vs[1].(int)] 245 }).(LambdaFunctionAssociationOutput) 246 } 247 248 type LambdaFunctionAssociationMapOutput struct{ *pulumi.OutputState } 249 250 func (LambdaFunctionAssociationMapOutput) ElementType() reflect.Type { 251 return reflect.TypeOf((*map[string]*LambdaFunctionAssociation)(nil)).Elem() 252 } 253 254 func (o LambdaFunctionAssociationMapOutput) ToLambdaFunctionAssociationMapOutput() LambdaFunctionAssociationMapOutput { 255 return o 256 } 257 258 func (o LambdaFunctionAssociationMapOutput) ToLambdaFunctionAssociationMapOutputWithContext(ctx context.Context) LambdaFunctionAssociationMapOutput { 259 return o 260 } 261 262 func (o LambdaFunctionAssociationMapOutput) MapIndex(k pulumi.StringInput) LambdaFunctionAssociationOutput { 263 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *LambdaFunctionAssociation { 264 return vs[0].(map[string]*LambdaFunctionAssociation)[vs[1].(string)] 265 }).(LambdaFunctionAssociationOutput) 266 } 267 268 func init() { 269 pulumi.RegisterInputType(reflect.TypeOf((*LambdaFunctionAssociationInput)(nil)).Elem(), &LambdaFunctionAssociation{}) 270 pulumi.RegisterInputType(reflect.TypeOf((*LambdaFunctionAssociationArrayInput)(nil)).Elem(), LambdaFunctionAssociationArray{}) 271 pulumi.RegisterInputType(reflect.TypeOf((*LambdaFunctionAssociationMapInput)(nil)).Elem(), LambdaFunctionAssociationMap{}) 272 pulumi.RegisterOutputType(LambdaFunctionAssociationOutput{}) 273 pulumi.RegisterOutputType(LambdaFunctionAssociationArrayOutput{}) 274 pulumi.RegisterOutputType(LambdaFunctionAssociationMapOutput{}) 275 }