github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/route53/resolverDnsSecConfig.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 route53 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 a Route 53 Resolver DNSSEC config resource. 16 // 17 // ## Example Usage 18 // 19 // <!--Start PulumiCodeChooser --> 20 // ```go 21 // package main 22 // 23 // import ( 24 // 25 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2" 26 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53" 27 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 28 // 29 // ) 30 // 31 // func main() { 32 // pulumi.Run(func(ctx *pulumi.Context) error { 33 // example, err := ec2.NewVpc(ctx, "example", &ec2.VpcArgs{ 34 // CidrBlock: pulumi.String("10.0.0.0/16"), 35 // EnableDnsSupport: pulumi.Bool(true), 36 // EnableDnsHostnames: pulumi.Bool(true), 37 // }) 38 // if err != nil { 39 // return err 40 // } 41 // _, err = route53.NewResolverDnsSecConfig(ctx, "example", &route53.ResolverDnsSecConfigArgs{ 42 // ResourceId: example.ID(), 43 // }) 44 // if err != nil { 45 // return err 46 // } 47 // return nil 48 // }) 49 // } 50 // 51 // ``` 52 // <!--End PulumiCodeChooser --> 53 // 54 // ## Import 55 // 56 // Using `pulumi import`, import Route 53 Resolver DNSSEC configs using the Route 53 Resolver DNSSEC config ID. For example: 57 // 58 // ```sh 59 // $ pulumi import aws:route53/resolverDnsSecConfig:ResolverDnsSecConfig example rdsc-be1866ecc1683e95 60 // ``` 61 type ResolverDnsSecConfig struct { 62 pulumi.CustomResourceState 63 64 // The ARN for a configuration for DNSSEC validation. 65 Arn pulumi.StringOutput `pulumi:"arn"` 66 // The owner account ID of the virtual private cloud (VPC) for a configuration for DNSSEC validation. 67 OwnerId pulumi.StringOutput `pulumi:"ownerId"` 68 // The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for. 69 ResourceId pulumi.StringOutput `pulumi:"resourceId"` 70 // The validation status for a DNSSEC configuration. The status can be one of the following: `ENABLING`, `ENABLED`, `DISABLING` and `DISABLED`. 71 ValidationStatus pulumi.StringOutput `pulumi:"validationStatus"` 72 } 73 74 // NewResolverDnsSecConfig registers a new resource with the given unique name, arguments, and options. 75 func NewResolverDnsSecConfig(ctx *pulumi.Context, 76 name string, args *ResolverDnsSecConfigArgs, opts ...pulumi.ResourceOption) (*ResolverDnsSecConfig, error) { 77 if args == nil { 78 return nil, errors.New("missing one or more required arguments") 79 } 80 81 if args.ResourceId == nil { 82 return nil, errors.New("invalid value for required argument 'ResourceId'") 83 } 84 opts = internal.PkgResourceDefaultOpts(opts) 85 var resource ResolverDnsSecConfig 86 err := ctx.RegisterResource("aws:route53/resolverDnsSecConfig:ResolverDnsSecConfig", name, args, &resource, opts...) 87 if err != nil { 88 return nil, err 89 } 90 return &resource, nil 91 } 92 93 // GetResolverDnsSecConfig gets an existing ResolverDnsSecConfig resource's state with the given name, ID, and optional 94 // state properties that are used to uniquely qualify the lookup (nil if not required). 95 func GetResolverDnsSecConfig(ctx *pulumi.Context, 96 name string, id pulumi.IDInput, state *ResolverDnsSecConfigState, opts ...pulumi.ResourceOption) (*ResolverDnsSecConfig, error) { 97 var resource ResolverDnsSecConfig 98 err := ctx.ReadResource("aws:route53/resolverDnsSecConfig:ResolverDnsSecConfig", name, id, state, &resource, opts...) 99 if err != nil { 100 return nil, err 101 } 102 return &resource, nil 103 } 104 105 // Input properties used for looking up and filtering ResolverDnsSecConfig resources. 106 type resolverDnsSecConfigState struct { 107 // The ARN for a configuration for DNSSEC validation. 108 Arn *string `pulumi:"arn"` 109 // The owner account ID of the virtual private cloud (VPC) for a configuration for DNSSEC validation. 110 OwnerId *string `pulumi:"ownerId"` 111 // The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for. 112 ResourceId *string `pulumi:"resourceId"` 113 // The validation status for a DNSSEC configuration. The status can be one of the following: `ENABLING`, `ENABLED`, `DISABLING` and `DISABLED`. 114 ValidationStatus *string `pulumi:"validationStatus"` 115 } 116 117 type ResolverDnsSecConfigState struct { 118 // The ARN for a configuration for DNSSEC validation. 119 Arn pulumi.StringPtrInput 120 // The owner account ID of the virtual private cloud (VPC) for a configuration for DNSSEC validation. 121 OwnerId pulumi.StringPtrInput 122 // The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for. 123 ResourceId pulumi.StringPtrInput 124 // The validation status for a DNSSEC configuration. The status can be one of the following: `ENABLING`, `ENABLED`, `DISABLING` and `DISABLED`. 125 ValidationStatus pulumi.StringPtrInput 126 } 127 128 func (ResolverDnsSecConfigState) ElementType() reflect.Type { 129 return reflect.TypeOf((*resolverDnsSecConfigState)(nil)).Elem() 130 } 131 132 type resolverDnsSecConfigArgs struct { 133 // The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for. 134 ResourceId string `pulumi:"resourceId"` 135 } 136 137 // The set of arguments for constructing a ResolverDnsSecConfig resource. 138 type ResolverDnsSecConfigArgs struct { 139 // The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for. 140 ResourceId pulumi.StringInput 141 } 142 143 func (ResolverDnsSecConfigArgs) ElementType() reflect.Type { 144 return reflect.TypeOf((*resolverDnsSecConfigArgs)(nil)).Elem() 145 } 146 147 type ResolverDnsSecConfigInput interface { 148 pulumi.Input 149 150 ToResolverDnsSecConfigOutput() ResolverDnsSecConfigOutput 151 ToResolverDnsSecConfigOutputWithContext(ctx context.Context) ResolverDnsSecConfigOutput 152 } 153 154 func (*ResolverDnsSecConfig) ElementType() reflect.Type { 155 return reflect.TypeOf((**ResolverDnsSecConfig)(nil)).Elem() 156 } 157 158 func (i *ResolverDnsSecConfig) ToResolverDnsSecConfigOutput() ResolverDnsSecConfigOutput { 159 return i.ToResolverDnsSecConfigOutputWithContext(context.Background()) 160 } 161 162 func (i *ResolverDnsSecConfig) ToResolverDnsSecConfigOutputWithContext(ctx context.Context) ResolverDnsSecConfigOutput { 163 return pulumi.ToOutputWithContext(ctx, i).(ResolverDnsSecConfigOutput) 164 } 165 166 // ResolverDnsSecConfigArrayInput is an input type that accepts ResolverDnsSecConfigArray and ResolverDnsSecConfigArrayOutput values. 167 // You can construct a concrete instance of `ResolverDnsSecConfigArrayInput` via: 168 // 169 // ResolverDnsSecConfigArray{ ResolverDnsSecConfigArgs{...} } 170 type ResolverDnsSecConfigArrayInput interface { 171 pulumi.Input 172 173 ToResolverDnsSecConfigArrayOutput() ResolverDnsSecConfigArrayOutput 174 ToResolverDnsSecConfigArrayOutputWithContext(context.Context) ResolverDnsSecConfigArrayOutput 175 } 176 177 type ResolverDnsSecConfigArray []ResolverDnsSecConfigInput 178 179 func (ResolverDnsSecConfigArray) ElementType() reflect.Type { 180 return reflect.TypeOf((*[]*ResolverDnsSecConfig)(nil)).Elem() 181 } 182 183 func (i ResolverDnsSecConfigArray) ToResolverDnsSecConfigArrayOutput() ResolverDnsSecConfigArrayOutput { 184 return i.ToResolverDnsSecConfigArrayOutputWithContext(context.Background()) 185 } 186 187 func (i ResolverDnsSecConfigArray) ToResolverDnsSecConfigArrayOutputWithContext(ctx context.Context) ResolverDnsSecConfigArrayOutput { 188 return pulumi.ToOutputWithContext(ctx, i).(ResolverDnsSecConfigArrayOutput) 189 } 190 191 // ResolverDnsSecConfigMapInput is an input type that accepts ResolverDnsSecConfigMap and ResolverDnsSecConfigMapOutput values. 192 // You can construct a concrete instance of `ResolverDnsSecConfigMapInput` via: 193 // 194 // ResolverDnsSecConfigMap{ "key": ResolverDnsSecConfigArgs{...} } 195 type ResolverDnsSecConfigMapInput interface { 196 pulumi.Input 197 198 ToResolverDnsSecConfigMapOutput() ResolverDnsSecConfigMapOutput 199 ToResolverDnsSecConfigMapOutputWithContext(context.Context) ResolverDnsSecConfigMapOutput 200 } 201 202 type ResolverDnsSecConfigMap map[string]ResolverDnsSecConfigInput 203 204 func (ResolverDnsSecConfigMap) ElementType() reflect.Type { 205 return reflect.TypeOf((*map[string]*ResolverDnsSecConfig)(nil)).Elem() 206 } 207 208 func (i ResolverDnsSecConfigMap) ToResolverDnsSecConfigMapOutput() ResolverDnsSecConfigMapOutput { 209 return i.ToResolverDnsSecConfigMapOutputWithContext(context.Background()) 210 } 211 212 func (i ResolverDnsSecConfigMap) ToResolverDnsSecConfigMapOutputWithContext(ctx context.Context) ResolverDnsSecConfigMapOutput { 213 return pulumi.ToOutputWithContext(ctx, i).(ResolverDnsSecConfigMapOutput) 214 } 215 216 type ResolverDnsSecConfigOutput struct{ *pulumi.OutputState } 217 218 func (ResolverDnsSecConfigOutput) ElementType() reflect.Type { 219 return reflect.TypeOf((**ResolverDnsSecConfig)(nil)).Elem() 220 } 221 222 func (o ResolverDnsSecConfigOutput) ToResolverDnsSecConfigOutput() ResolverDnsSecConfigOutput { 223 return o 224 } 225 226 func (o ResolverDnsSecConfigOutput) ToResolverDnsSecConfigOutputWithContext(ctx context.Context) ResolverDnsSecConfigOutput { 227 return o 228 } 229 230 // The ARN for a configuration for DNSSEC validation. 231 func (o ResolverDnsSecConfigOutput) Arn() pulumi.StringOutput { 232 return o.ApplyT(func(v *ResolverDnsSecConfig) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 233 } 234 235 // The owner account ID of the virtual private cloud (VPC) for a configuration for DNSSEC validation. 236 func (o ResolverDnsSecConfigOutput) OwnerId() pulumi.StringOutput { 237 return o.ApplyT(func(v *ResolverDnsSecConfig) pulumi.StringOutput { return v.OwnerId }).(pulumi.StringOutput) 238 } 239 240 // The ID of the virtual private cloud (VPC) that you're updating the DNSSEC validation status for. 241 func (o ResolverDnsSecConfigOutput) ResourceId() pulumi.StringOutput { 242 return o.ApplyT(func(v *ResolverDnsSecConfig) pulumi.StringOutput { return v.ResourceId }).(pulumi.StringOutput) 243 } 244 245 // The validation status for a DNSSEC configuration. The status can be one of the following: `ENABLING`, `ENABLED`, `DISABLING` and `DISABLED`. 246 func (o ResolverDnsSecConfigOutput) ValidationStatus() pulumi.StringOutput { 247 return o.ApplyT(func(v *ResolverDnsSecConfig) pulumi.StringOutput { return v.ValidationStatus }).(pulumi.StringOutput) 248 } 249 250 type ResolverDnsSecConfigArrayOutput struct{ *pulumi.OutputState } 251 252 func (ResolverDnsSecConfigArrayOutput) ElementType() reflect.Type { 253 return reflect.TypeOf((*[]*ResolverDnsSecConfig)(nil)).Elem() 254 } 255 256 func (o ResolverDnsSecConfigArrayOutput) ToResolverDnsSecConfigArrayOutput() ResolverDnsSecConfigArrayOutput { 257 return o 258 } 259 260 func (o ResolverDnsSecConfigArrayOutput) ToResolverDnsSecConfigArrayOutputWithContext(ctx context.Context) ResolverDnsSecConfigArrayOutput { 261 return o 262 } 263 264 func (o ResolverDnsSecConfigArrayOutput) Index(i pulumi.IntInput) ResolverDnsSecConfigOutput { 265 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ResolverDnsSecConfig { 266 return vs[0].([]*ResolverDnsSecConfig)[vs[1].(int)] 267 }).(ResolverDnsSecConfigOutput) 268 } 269 270 type ResolverDnsSecConfigMapOutput struct{ *pulumi.OutputState } 271 272 func (ResolverDnsSecConfigMapOutput) ElementType() reflect.Type { 273 return reflect.TypeOf((*map[string]*ResolverDnsSecConfig)(nil)).Elem() 274 } 275 276 func (o ResolverDnsSecConfigMapOutput) ToResolverDnsSecConfigMapOutput() ResolverDnsSecConfigMapOutput { 277 return o 278 } 279 280 func (o ResolverDnsSecConfigMapOutput) ToResolverDnsSecConfigMapOutputWithContext(ctx context.Context) ResolverDnsSecConfigMapOutput { 281 return o 282 } 283 284 func (o ResolverDnsSecConfigMapOutput) MapIndex(k pulumi.StringInput) ResolverDnsSecConfigOutput { 285 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ResolverDnsSecConfig { 286 return vs[0].(map[string]*ResolverDnsSecConfig)[vs[1].(string)] 287 }).(ResolverDnsSecConfigOutput) 288 } 289 290 func init() { 291 pulumi.RegisterInputType(reflect.TypeOf((*ResolverDnsSecConfigInput)(nil)).Elem(), &ResolverDnsSecConfig{}) 292 pulumi.RegisterInputType(reflect.TypeOf((*ResolverDnsSecConfigArrayInput)(nil)).Elem(), ResolverDnsSecConfigArray{}) 293 pulumi.RegisterInputType(reflect.TypeOf((*ResolverDnsSecConfigMapInput)(nil)).Elem(), ResolverDnsSecConfigMap{}) 294 pulumi.RegisterOutputType(ResolverDnsSecConfigOutput{}) 295 pulumi.RegisterOutputType(ResolverDnsSecConfigArrayOutput{}) 296 pulumi.RegisterOutputType(ResolverDnsSecConfigMapOutput{}) 297 }