github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/ec2/getVpcDhcpOptions.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 ec2 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 // Retrieve information about an EC2 DHCP Options configuration. 15 // 16 // ## Example Usage 17 // 18 // ### Lookup by DHCP Options ID 19 // 20 // <!--Start PulumiCodeChooser --> 21 // ```go 22 // package main 23 // 24 // import ( 25 // 26 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2" 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 := ec2.LookupVpcDhcpOptions(ctx, &ec2.LookupVpcDhcpOptionsArgs{ 34 // DhcpOptionsId: pulumi.StringRef("dopts-12345678"), 35 // }, nil) 36 // if err != nil { 37 // return err 38 // } 39 // return nil 40 // }) 41 // } 42 // 43 // ``` 44 // <!--End PulumiCodeChooser --> 45 // 46 // ### Lookup by Filter 47 // 48 // <!--Start PulumiCodeChooser --> 49 // ```go 50 // package main 51 // 52 // import ( 53 // 54 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/ec2" 55 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 56 // 57 // ) 58 // 59 // func main() { 60 // pulumi.Run(func(ctx *pulumi.Context) error { 61 // _, err := ec2.LookupVpcDhcpOptions(ctx, &ec2.LookupVpcDhcpOptionsArgs{ 62 // Filters: []ec2.GetVpcDhcpOptionsFilter{ 63 // { 64 // Name: "key", 65 // Values: []string{ 66 // "domain-name", 67 // }, 68 // }, 69 // { 70 // Name: "value", 71 // Values: []string{ 72 // "example.com", 73 // }, 74 // }, 75 // }, 76 // }, nil) 77 // if err != nil { 78 // return err 79 // } 80 // return nil 81 // }) 82 // } 83 // 84 // ``` 85 // <!--End PulumiCodeChooser --> 86 func LookupVpcDhcpOptions(ctx *pulumi.Context, args *LookupVpcDhcpOptionsArgs, opts ...pulumi.InvokeOption) (*LookupVpcDhcpOptionsResult, error) { 87 opts = internal.PkgInvokeDefaultOpts(opts) 88 var rv LookupVpcDhcpOptionsResult 89 err := ctx.Invoke("aws:ec2/getVpcDhcpOptions:getVpcDhcpOptions", args, &rv, opts...) 90 if err != nil { 91 return nil, err 92 } 93 return &rv, nil 94 } 95 96 // A collection of arguments for invoking getVpcDhcpOptions. 97 type LookupVpcDhcpOptionsArgs struct { 98 // EC2 DHCP Options ID. 99 DhcpOptionsId *string `pulumi:"dhcpOptionsId"` 100 // List of custom filters as described below. 101 Filters []GetVpcDhcpOptionsFilter `pulumi:"filters"` 102 // Map of tags assigned to the resource. 103 Tags map[string]string `pulumi:"tags"` 104 } 105 106 // A collection of values returned by getVpcDhcpOptions. 107 type LookupVpcDhcpOptionsResult struct { 108 // ARN of the DHCP Options Set. 109 Arn string `pulumi:"arn"` 110 // EC2 DHCP Options ID 111 DhcpOptionsId string `pulumi:"dhcpOptionsId"` 112 // Suffix domain name to used when resolving non Fully Qualified Domain NamesE.g., the `search` value in the `/etc/resolv.conf` file. 113 DomainName string `pulumi:"domainName"` 114 // List of name servers. 115 DomainNameServers []string `pulumi:"domainNameServers"` 116 Filters []GetVpcDhcpOptionsFilter `pulumi:"filters"` 117 // The provider-assigned unique ID for this managed resource. 118 Id string `pulumi:"id"` 119 // How frequently, in seconds, a running instance with an IPv6 assigned to it goes through DHCPv6 lease renewal. 120 Ipv6AddressPreferredLeaseTime string `pulumi:"ipv6AddressPreferredLeaseTime"` 121 // List of NETBIOS name servers. 122 NetbiosNameServers []string `pulumi:"netbiosNameServers"` 123 // NetBIOS node type (1, 2, 4, or 8). For more information about these node types, see [RFC 2132](http://www.ietf.org/rfc/rfc2132.txt). 124 NetbiosNodeType string `pulumi:"netbiosNodeType"` 125 // List of NTP servers. 126 NtpServers []string `pulumi:"ntpServers"` 127 // ID of the AWS account that owns the DHCP options set. 128 OwnerId string `pulumi:"ownerId"` 129 // Map of tags assigned to the resource. 130 Tags map[string]string `pulumi:"tags"` 131 } 132 133 func LookupVpcDhcpOptionsOutput(ctx *pulumi.Context, args LookupVpcDhcpOptionsOutputArgs, opts ...pulumi.InvokeOption) LookupVpcDhcpOptionsResultOutput { 134 return pulumi.ToOutputWithContext(context.Background(), args). 135 ApplyT(func(v interface{}) (LookupVpcDhcpOptionsResult, error) { 136 args := v.(LookupVpcDhcpOptionsArgs) 137 r, err := LookupVpcDhcpOptions(ctx, &args, opts...) 138 var s LookupVpcDhcpOptionsResult 139 if r != nil { 140 s = *r 141 } 142 return s, err 143 }).(LookupVpcDhcpOptionsResultOutput) 144 } 145 146 // A collection of arguments for invoking getVpcDhcpOptions. 147 type LookupVpcDhcpOptionsOutputArgs struct { 148 // EC2 DHCP Options ID. 149 DhcpOptionsId pulumi.StringPtrInput `pulumi:"dhcpOptionsId"` 150 // List of custom filters as described below. 151 Filters GetVpcDhcpOptionsFilterArrayInput `pulumi:"filters"` 152 // Map of tags assigned to the resource. 153 Tags pulumi.StringMapInput `pulumi:"tags"` 154 } 155 156 func (LookupVpcDhcpOptionsOutputArgs) ElementType() reflect.Type { 157 return reflect.TypeOf((*LookupVpcDhcpOptionsArgs)(nil)).Elem() 158 } 159 160 // A collection of values returned by getVpcDhcpOptions. 161 type LookupVpcDhcpOptionsResultOutput struct{ *pulumi.OutputState } 162 163 func (LookupVpcDhcpOptionsResultOutput) ElementType() reflect.Type { 164 return reflect.TypeOf((*LookupVpcDhcpOptionsResult)(nil)).Elem() 165 } 166 167 func (o LookupVpcDhcpOptionsResultOutput) ToLookupVpcDhcpOptionsResultOutput() LookupVpcDhcpOptionsResultOutput { 168 return o 169 } 170 171 func (o LookupVpcDhcpOptionsResultOutput) ToLookupVpcDhcpOptionsResultOutputWithContext(ctx context.Context) LookupVpcDhcpOptionsResultOutput { 172 return o 173 } 174 175 // ARN of the DHCP Options Set. 176 func (o LookupVpcDhcpOptionsResultOutput) Arn() pulumi.StringOutput { 177 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) string { return v.Arn }).(pulumi.StringOutput) 178 } 179 180 // EC2 DHCP Options ID 181 func (o LookupVpcDhcpOptionsResultOutput) DhcpOptionsId() pulumi.StringOutput { 182 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) string { return v.DhcpOptionsId }).(pulumi.StringOutput) 183 } 184 185 // Suffix domain name to used when resolving non Fully Qualified Domain NamesE.g., the `search` value in the `/etc/resolv.conf` file. 186 func (o LookupVpcDhcpOptionsResultOutput) DomainName() pulumi.StringOutput { 187 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) string { return v.DomainName }).(pulumi.StringOutput) 188 } 189 190 // List of name servers. 191 func (o LookupVpcDhcpOptionsResultOutput) DomainNameServers() pulumi.StringArrayOutput { 192 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) []string { return v.DomainNameServers }).(pulumi.StringArrayOutput) 193 } 194 195 func (o LookupVpcDhcpOptionsResultOutput) Filters() GetVpcDhcpOptionsFilterArrayOutput { 196 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) []GetVpcDhcpOptionsFilter { return v.Filters }).(GetVpcDhcpOptionsFilterArrayOutput) 197 } 198 199 // The provider-assigned unique ID for this managed resource. 200 func (o LookupVpcDhcpOptionsResultOutput) Id() pulumi.StringOutput { 201 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) string { return v.Id }).(pulumi.StringOutput) 202 } 203 204 // How frequently, in seconds, a running instance with an IPv6 assigned to it goes through DHCPv6 lease renewal. 205 func (o LookupVpcDhcpOptionsResultOutput) Ipv6AddressPreferredLeaseTime() pulumi.StringOutput { 206 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) string { return v.Ipv6AddressPreferredLeaseTime }).(pulumi.StringOutput) 207 } 208 209 // List of NETBIOS name servers. 210 func (o LookupVpcDhcpOptionsResultOutput) NetbiosNameServers() pulumi.StringArrayOutput { 211 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) []string { return v.NetbiosNameServers }).(pulumi.StringArrayOutput) 212 } 213 214 // NetBIOS node type (1, 2, 4, or 8). For more information about these node types, see [RFC 2132](http://www.ietf.org/rfc/rfc2132.txt). 215 func (o LookupVpcDhcpOptionsResultOutput) NetbiosNodeType() pulumi.StringOutput { 216 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) string { return v.NetbiosNodeType }).(pulumi.StringOutput) 217 } 218 219 // List of NTP servers. 220 func (o LookupVpcDhcpOptionsResultOutput) NtpServers() pulumi.StringArrayOutput { 221 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) []string { return v.NtpServers }).(pulumi.StringArrayOutput) 222 } 223 224 // ID of the AWS account that owns the DHCP options set. 225 func (o LookupVpcDhcpOptionsResultOutput) OwnerId() pulumi.StringOutput { 226 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) string { return v.OwnerId }).(pulumi.StringOutput) 227 } 228 229 // Map of tags assigned to the resource. 230 func (o LookupVpcDhcpOptionsResultOutput) Tags() pulumi.StringMapOutput { 231 return o.ApplyT(func(v LookupVpcDhcpOptionsResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput) 232 } 233 234 func init() { 235 pulumi.RegisterOutputType(LookupVpcDhcpOptionsResultOutput{}) 236 }