github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/servicequotas/templateAssociation.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 servicequotas 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 // Resource for managing an AWS Service Quotas Template Association. 15 // 16 // > Only the management account of an organization can associate Service Quota templates, and this must be done from the `us-east-1` region. 17 // 18 // ## Example Usage 19 // 20 // ### Basic Usage 21 // 22 // <!--Start PulumiCodeChooser --> 23 // ```go 24 // package main 25 // 26 // import ( 27 // 28 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/servicequotas" 29 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 30 // 31 // ) 32 // 33 // func main() { 34 // pulumi.Run(func(ctx *pulumi.Context) error { 35 // _, err := servicequotas.NewTemplateAssociation(ctx, "example", nil) 36 // if err != nil { 37 // return err 38 // } 39 // return nil 40 // }) 41 // } 42 // 43 // ``` 44 // <!--End PulumiCodeChooser --> 45 // 46 // ## Import 47 // 48 // Using `pulumi import`, import Service Quotas Template Association using the `id`. For example: 49 // 50 // ```sh 51 // $ pulumi import aws:servicequotas/templateAssociation:TemplateAssociation example 012345678901 52 // ``` 53 type TemplateAssociation struct { 54 pulumi.CustomResourceState 55 56 SkipDestroy pulumi.BoolPtrOutput `pulumi:"skipDestroy"` 57 // Association status. Creating this resource will result in an `ASSOCIATED` status, and quota increase requests in the template are automatically applied to new AWS accounts in the organization. 58 Status pulumi.StringOutput `pulumi:"status"` 59 } 60 61 // NewTemplateAssociation registers a new resource with the given unique name, arguments, and options. 62 func NewTemplateAssociation(ctx *pulumi.Context, 63 name string, args *TemplateAssociationArgs, opts ...pulumi.ResourceOption) (*TemplateAssociation, error) { 64 if args == nil { 65 args = &TemplateAssociationArgs{} 66 } 67 68 opts = internal.PkgResourceDefaultOpts(opts) 69 var resource TemplateAssociation 70 err := ctx.RegisterResource("aws:servicequotas/templateAssociation:TemplateAssociation", name, args, &resource, opts...) 71 if err != nil { 72 return nil, err 73 } 74 return &resource, nil 75 } 76 77 // GetTemplateAssociation gets an existing TemplateAssociation resource's state with the given name, ID, and optional 78 // state properties that are used to uniquely qualify the lookup (nil if not required). 79 func GetTemplateAssociation(ctx *pulumi.Context, 80 name string, id pulumi.IDInput, state *TemplateAssociationState, opts ...pulumi.ResourceOption) (*TemplateAssociation, error) { 81 var resource TemplateAssociation 82 err := ctx.ReadResource("aws:servicequotas/templateAssociation:TemplateAssociation", name, id, state, &resource, opts...) 83 if err != nil { 84 return nil, err 85 } 86 return &resource, nil 87 } 88 89 // Input properties used for looking up and filtering TemplateAssociation resources. 90 type templateAssociationState struct { 91 SkipDestroy *bool `pulumi:"skipDestroy"` 92 // Association status. Creating this resource will result in an `ASSOCIATED` status, and quota increase requests in the template are automatically applied to new AWS accounts in the organization. 93 Status *string `pulumi:"status"` 94 } 95 96 type TemplateAssociationState struct { 97 SkipDestroy pulumi.BoolPtrInput 98 // Association status. Creating this resource will result in an `ASSOCIATED` status, and quota increase requests in the template are automatically applied to new AWS accounts in the organization. 99 Status pulumi.StringPtrInput 100 } 101 102 func (TemplateAssociationState) ElementType() reflect.Type { 103 return reflect.TypeOf((*templateAssociationState)(nil)).Elem() 104 } 105 106 type templateAssociationArgs struct { 107 SkipDestroy *bool `pulumi:"skipDestroy"` 108 } 109 110 // The set of arguments for constructing a TemplateAssociation resource. 111 type TemplateAssociationArgs struct { 112 SkipDestroy pulumi.BoolPtrInput 113 } 114 115 func (TemplateAssociationArgs) ElementType() reflect.Type { 116 return reflect.TypeOf((*templateAssociationArgs)(nil)).Elem() 117 } 118 119 type TemplateAssociationInput interface { 120 pulumi.Input 121 122 ToTemplateAssociationOutput() TemplateAssociationOutput 123 ToTemplateAssociationOutputWithContext(ctx context.Context) TemplateAssociationOutput 124 } 125 126 func (*TemplateAssociation) ElementType() reflect.Type { 127 return reflect.TypeOf((**TemplateAssociation)(nil)).Elem() 128 } 129 130 func (i *TemplateAssociation) ToTemplateAssociationOutput() TemplateAssociationOutput { 131 return i.ToTemplateAssociationOutputWithContext(context.Background()) 132 } 133 134 func (i *TemplateAssociation) ToTemplateAssociationOutputWithContext(ctx context.Context) TemplateAssociationOutput { 135 return pulumi.ToOutputWithContext(ctx, i).(TemplateAssociationOutput) 136 } 137 138 // TemplateAssociationArrayInput is an input type that accepts TemplateAssociationArray and TemplateAssociationArrayOutput values. 139 // You can construct a concrete instance of `TemplateAssociationArrayInput` via: 140 // 141 // TemplateAssociationArray{ TemplateAssociationArgs{...} } 142 type TemplateAssociationArrayInput interface { 143 pulumi.Input 144 145 ToTemplateAssociationArrayOutput() TemplateAssociationArrayOutput 146 ToTemplateAssociationArrayOutputWithContext(context.Context) TemplateAssociationArrayOutput 147 } 148 149 type TemplateAssociationArray []TemplateAssociationInput 150 151 func (TemplateAssociationArray) ElementType() reflect.Type { 152 return reflect.TypeOf((*[]*TemplateAssociation)(nil)).Elem() 153 } 154 155 func (i TemplateAssociationArray) ToTemplateAssociationArrayOutput() TemplateAssociationArrayOutput { 156 return i.ToTemplateAssociationArrayOutputWithContext(context.Background()) 157 } 158 159 func (i TemplateAssociationArray) ToTemplateAssociationArrayOutputWithContext(ctx context.Context) TemplateAssociationArrayOutput { 160 return pulumi.ToOutputWithContext(ctx, i).(TemplateAssociationArrayOutput) 161 } 162 163 // TemplateAssociationMapInput is an input type that accepts TemplateAssociationMap and TemplateAssociationMapOutput values. 164 // You can construct a concrete instance of `TemplateAssociationMapInput` via: 165 // 166 // TemplateAssociationMap{ "key": TemplateAssociationArgs{...} } 167 type TemplateAssociationMapInput interface { 168 pulumi.Input 169 170 ToTemplateAssociationMapOutput() TemplateAssociationMapOutput 171 ToTemplateAssociationMapOutputWithContext(context.Context) TemplateAssociationMapOutput 172 } 173 174 type TemplateAssociationMap map[string]TemplateAssociationInput 175 176 func (TemplateAssociationMap) ElementType() reflect.Type { 177 return reflect.TypeOf((*map[string]*TemplateAssociation)(nil)).Elem() 178 } 179 180 func (i TemplateAssociationMap) ToTemplateAssociationMapOutput() TemplateAssociationMapOutput { 181 return i.ToTemplateAssociationMapOutputWithContext(context.Background()) 182 } 183 184 func (i TemplateAssociationMap) ToTemplateAssociationMapOutputWithContext(ctx context.Context) TemplateAssociationMapOutput { 185 return pulumi.ToOutputWithContext(ctx, i).(TemplateAssociationMapOutput) 186 } 187 188 type TemplateAssociationOutput struct{ *pulumi.OutputState } 189 190 func (TemplateAssociationOutput) ElementType() reflect.Type { 191 return reflect.TypeOf((**TemplateAssociation)(nil)).Elem() 192 } 193 194 func (o TemplateAssociationOutput) ToTemplateAssociationOutput() TemplateAssociationOutput { 195 return o 196 } 197 198 func (o TemplateAssociationOutput) ToTemplateAssociationOutputWithContext(ctx context.Context) TemplateAssociationOutput { 199 return o 200 } 201 202 func (o TemplateAssociationOutput) SkipDestroy() pulumi.BoolPtrOutput { 203 return o.ApplyT(func(v *TemplateAssociation) pulumi.BoolPtrOutput { return v.SkipDestroy }).(pulumi.BoolPtrOutput) 204 } 205 206 // Association status. Creating this resource will result in an `ASSOCIATED` status, and quota increase requests in the template are automatically applied to new AWS accounts in the organization. 207 func (o TemplateAssociationOutput) Status() pulumi.StringOutput { 208 return o.ApplyT(func(v *TemplateAssociation) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput) 209 } 210 211 type TemplateAssociationArrayOutput struct{ *pulumi.OutputState } 212 213 func (TemplateAssociationArrayOutput) ElementType() reflect.Type { 214 return reflect.TypeOf((*[]*TemplateAssociation)(nil)).Elem() 215 } 216 217 func (o TemplateAssociationArrayOutput) ToTemplateAssociationArrayOutput() TemplateAssociationArrayOutput { 218 return o 219 } 220 221 func (o TemplateAssociationArrayOutput) ToTemplateAssociationArrayOutputWithContext(ctx context.Context) TemplateAssociationArrayOutput { 222 return o 223 } 224 225 func (o TemplateAssociationArrayOutput) Index(i pulumi.IntInput) TemplateAssociationOutput { 226 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *TemplateAssociation { 227 return vs[0].([]*TemplateAssociation)[vs[1].(int)] 228 }).(TemplateAssociationOutput) 229 } 230 231 type TemplateAssociationMapOutput struct{ *pulumi.OutputState } 232 233 func (TemplateAssociationMapOutput) ElementType() reflect.Type { 234 return reflect.TypeOf((*map[string]*TemplateAssociation)(nil)).Elem() 235 } 236 237 func (o TemplateAssociationMapOutput) ToTemplateAssociationMapOutput() TemplateAssociationMapOutput { 238 return o 239 } 240 241 func (o TemplateAssociationMapOutput) ToTemplateAssociationMapOutputWithContext(ctx context.Context) TemplateAssociationMapOutput { 242 return o 243 } 244 245 func (o TemplateAssociationMapOutput) MapIndex(k pulumi.StringInput) TemplateAssociationOutput { 246 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *TemplateAssociation { 247 return vs[0].(map[string]*TemplateAssociation)[vs[1].(string)] 248 }).(TemplateAssociationOutput) 249 } 250 251 func init() { 252 pulumi.RegisterInputType(reflect.TypeOf((*TemplateAssociationInput)(nil)).Elem(), &TemplateAssociation{}) 253 pulumi.RegisterInputType(reflect.TypeOf((*TemplateAssociationArrayInput)(nil)).Elem(), TemplateAssociationArray{}) 254 pulumi.RegisterInputType(reflect.TypeOf((*TemplateAssociationMapInput)(nil)).Elem(), TemplateAssociationMap{}) 255 pulumi.RegisterOutputType(TemplateAssociationOutput{}) 256 pulumi.RegisterOutputType(TemplateAssociationArrayOutput{}) 257 pulumi.RegisterOutputType(TemplateAssociationMapOutput{}) 258 }