github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/route53/getResolverEndpoint.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  	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal"
    11  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    12  )
    13  
    14  // `route53.ResolverEndpoint` provides details about a specific Route53 Resolver Endpoint.
    15  //
    16  // This data source allows to find a list of IPaddresses associated with a specific Route53 Resolver Endpoint.
    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/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  //			_, err := route53.LookupResolverEndpoint(ctx, &route53.LookupResolverEndpointArgs{
    34  //				ResolverEndpointId: pulumi.StringRef("rslvr-in-1abc2345ef678g91h"),
    35  //			}, nil)
    36  //			if err != nil {
    37  //				return err
    38  //			}
    39  //			return nil
    40  //		})
    41  //	}
    42  //
    43  // ```
    44  // <!--End PulumiCodeChooser -->
    45  //
    46  // <!--Start PulumiCodeChooser -->
    47  // ```go
    48  // package main
    49  //
    50  // import (
    51  //
    52  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/route53"
    53  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    54  //
    55  // )
    56  //
    57  //	func main() {
    58  //		pulumi.Run(func(ctx *pulumi.Context) error {
    59  //			_, err := route53.LookupResolverEndpoint(ctx, &route53.LookupResolverEndpointArgs{
    60  //				Filters: []route53.GetResolverEndpointFilter{
    61  //					{
    62  //						Name: "NAME",
    63  //						Values: []string{
    64  //							"MyResolverExampleName",
    65  //						},
    66  //					},
    67  //				},
    68  //			}, nil)
    69  //			if err != nil {
    70  //				return err
    71  //			}
    72  //			return nil
    73  //		})
    74  //	}
    75  //
    76  // ```
    77  // <!--End PulumiCodeChooser -->
    78  func LookupResolverEndpoint(ctx *pulumi.Context, args *LookupResolverEndpointArgs, opts ...pulumi.InvokeOption) (*LookupResolverEndpointResult, error) {
    79  	opts = internal.PkgInvokeDefaultOpts(opts)
    80  	var rv LookupResolverEndpointResult
    81  	err := ctx.Invoke("aws:route53/getResolverEndpoint:getResolverEndpoint", args, &rv, opts...)
    82  	if err != nil {
    83  		return nil, err
    84  	}
    85  	return &rv, nil
    86  }
    87  
    88  // A collection of arguments for invoking getResolverEndpoint.
    89  type LookupResolverEndpointArgs struct {
    90  	// One or more name/value pairs to use as filters. There are
    91  	// several valid keys, for a full reference, check out
    92  	// [Route53resolver Filter value in the AWS API reference][1].
    93  	//
    94  	// In addition to all arguments above, the following attributes are exported:
    95  	Filters []GetResolverEndpointFilter `pulumi:"filters"`
    96  	// ID of the Route53 Resolver Endpoint.
    97  	ResolverEndpointId *string `pulumi:"resolverEndpointId"`
    98  }
    99  
   100  // A collection of values returned by getResolverEndpoint.
   101  type LookupResolverEndpointResult struct {
   102  	Arn       string                      `pulumi:"arn"`
   103  	Direction string                      `pulumi:"direction"`
   104  	Filters   []GetResolverEndpointFilter `pulumi:"filters"`
   105  	// The provider-assigned unique ID for this managed resource.
   106  	Id                   string   `pulumi:"id"`
   107  	IpAddresses          []string `pulumi:"ipAddresses"`
   108  	Name                 string   `pulumi:"name"`
   109  	Protocols            []string `pulumi:"protocols"`
   110  	ResolverEndpointId   *string  `pulumi:"resolverEndpointId"`
   111  	ResolverEndpointType string   `pulumi:"resolverEndpointType"`
   112  	Status               string   `pulumi:"status"`
   113  	VpcId                string   `pulumi:"vpcId"`
   114  }
   115  
   116  func LookupResolverEndpointOutput(ctx *pulumi.Context, args LookupResolverEndpointOutputArgs, opts ...pulumi.InvokeOption) LookupResolverEndpointResultOutput {
   117  	return pulumi.ToOutputWithContext(context.Background(), args).
   118  		ApplyT(func(v interface{}) (LookupResolverEndpointResult, error) {
   119  			args := v.(LookupResolverEndpointArgs)
   120  			r, err := LookupResolverEndpoint(ctx, &args, opts...)
   121  			var s LookupResolverEndpointResult
   122  			if r != nil {
   123  				s = *r
   124  			}
   125  			return s, err
   126  		}).(LookupResolverEndpointResultOutput)
   127  }
   128  
   129  // A collection of arguments for invoking getResolverEndpoint.
   130  type LookupResolverEndpointOutputArgs struct {
   131  	// One or more name/value pairs to use as filters. There are
   132  	// several valid keys, for a full reference, check out
   133  	// [Route53resolver Filter value in the AWS API reference][1].
   134  	//
   135  	// In addition to all arguments above, the following attributes are exported:
   136  	Filters GetResolverEndpointFilterArrayInput `pulumi:"filters"`
   137  	// ID of the Route53 Resolver Endpoint.
   138  	ResolverEndpointId pulumi.StringPtrInput `pulumi:"resolverEndpointId"`
   139  }
   140  
   141  func (LookupResolverEndpointOutputArgs) ElementType() reflect.Type {
   142  	return reflect.TypeOf((*LookupResolverEndpointArgs)(nil)).Elem()
   143  }
   144  
   145  // A collection of values returned by getResolverEndpoint.
   146  type LookupResolverEndpointResultOutput struct{ *pulumi.OutputState }
   147  
   148  func (LookupResolverEndpointResultOutput) ElementType() reflect.Type {
   149  	return reflect.TypeOf((*LookupResolverEndpointResult)(nil)).Elem()
   150  }
   151  
   152  func (o LookupResolverEndpointResultOutput) ToLookupResolverEndpointResultOutput() LookupResolverEndpointResultOutput {
   153  	return o
   154  }
   155  
   156  func (o LookupResolverEndpointResultOutput) ToLookupResolverEndpointResultOutputWithContext(ctx context.Context) LookupResolverEndpointResultOutput {
   157  	return o
   158  }
   159  
   160  func (o LookupResolverEndpointResultOutput) Arn() pulumi.StringOutput {
   161  	return o.ApplyT(func(v LookupResolverEndpointResult) string { return v.Arn }).(pulumi.StringOutput)
   162  }
   163  
   164  func (o LookupResolverEndpointResultOutput) Direction() pulumi.StringOutput {
   165  	return o.ApplyT(func(v LookupResolverEndpointResult) string { return v.Direction }).(pulumi.StringOutput)
   166  }
   167  
   168  func (o LookupResolverEndpointResultOutput) Filters() GetResolverEndpointFilterArrayOutput {
   169  	return o.ApplyT(func(v LookupResolverEndpointResult) []GetResolverEndpointFilter { return v.Filters }).(GetResolverEndpointFilterArrayOutput)
   170  }
   171  
   172  // The provider-assigned unique ID for this managed resource.
   173  func (o LookupResolverEndpointResultOutput) Id() pulumi.StringOutput {
   174  	return o.ApplyT(func(v LookupResolverEndpointResult) string { return v.Id }).(pulumi.StringOutput)
   175  }
   176  
   177  func (o LookupResolverEndpointResultOutput) IpAddresses() pulumi.StringArrayOutput {
   178  	return o.ApplyT(func(v LookupResolverEndpointResult) []string { return v.IpAddresses }).(pulumi.StringArrayOutput)
   179  }
   180  
   181  func (o LookupResolverEndpointResultOutput) Name() pulumi.StringOutput {
   182  	return o.ApplyT(func(v LookupResolverEndpointResult) string { return v.Name }).(pulumi.StringOutput)
   183  }
   184  
   185  func (o LookupResolverEndpointResultOutput) Protocols() pulumi.StringArrayOutput {
   186  	return o.ApplyT(func(v LookupResolverEndpointResult) []string { return v.Protocols }).(pulumi.StringArrayOutput)
   187  }
   188  
   189  func (o LookupResolverEndpointResultOutput) ResolverEndpointId() pulumi.StringPtrOutput {
   190  	return o.ApplyT(func(v LookupResolverEndpointResult) *string { return v.ResolverEndpointId }).(pulumi.StringPtrOutput)
   191  }
   192  
   193  func (o LookupResolverEndpointResultOutput) ResolverEndpointType() pulumi.StringOutput {
   194  	return o.ApplyT(func(v LookupResolverEndpointResult) string { return v.ResolverEndpointType }).(pulumi.StringOutput)
   195  }
   196  
   197  func (o LookupResolverEndpointResultOutput) Status() pulumi.StringOutput {
   198  	return o.ApplyT(func(v LookupResolverEndpointResult) string { return v.Status }).(pulumi.StringOutput)
   199  }
   200  
   201  func (o LookupResolverEndpointResultOutput) VpcId() pulumi.StringOutput {
   202  	return o.ApplyT(func(v LookupResolverEndpointResult) string { return v.VpcId }).(pulumi.StringOutput)
   203  }
   204  
   205  func init() {
   206  	pulumi.RegisterOutputType(LookupResolverEndpointResultOutput{})
   207  }