github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/globalaccelerator/getAccelerator.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 globalaccelerator
     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  // Provides information about a Global Accelerator accelerator.
    15  //
    16  // ## Example Usage
    17  //
    18  // <!--Start PulumiCodeChooser -->
    19  // ```go
    20  // package main
    21  //
    22  // import (
    23  //
    24  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/globalaccelerator"
    25  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    26  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
    27  //
    28  // )
    29  //
    30  //	func main() {
    31  //		pulumi.Run(func(ctx *pulumi.Context) error {
    32  //			cfg := config.New(ctx, "")
    33  //			acceleratorArn := ""
    34  //			if param := cfg.Get("acceleratorArn"); param != "" {
    35  //				acceleratorArn = param
    36  //			}
    37  //			acceleratorName := ""
    38  //			if param := cfg.Get("acceleratorName"); param != "" {
    39  //				acceleratorName = param
    40  //			}
    41  //			_, err := globalaccelerator.LookupAccelerator(ctx, &globalaccelerator.LookupAcceleratorArgs{
    42  //				Arn:  pulumi.StringRef(acceleratorArn),
    43  //				Name: pulumi.StringRef(acceleratorName),
    44  //			}, nil)
    45  //			if err != nil {
    46  //				return err
    47  //			}
    48  //			return nil
    49  //		})
    50  //	}
    51  //
    52  // ```
    53  // <!--End PulumiCodeChooser -->
    54  func LookupAccelerator(ctx *pulumi.Context, args *LookupAcceleratorArgs, opts ...pulumi.InvokeOption) (*LookupAcceleratorResult, error) {
    55  	opts = internal.PkgInvokeDefaultOpts(opts)
    56  	var rv LookupAcceleratorResult
    57  	err := ctx.Invoke("aws:globalaccelerator/getAccelerator:getAccelerator", args, &rv, opts...)
    58  	if err != nil {
    59  		return nil, err
    60  	}
    61  	return &rv, nil
    62  }
    63  
    64  // A collection of arguments for invoking getAccelerator.
    65  type LookupAcceleratorArgs struct {
    66  	// Full ARN of the Global Accelerator.
    67  	Arn *string `pulumi:"arn"`
    68  	Id  *string `pulumi:"id"`
    69  	// Unique name of the Global Accelerator.
    70  	//
    71  	// > **NOTE:** When both `arn` and `name` are specified, `arn` takes precedence.
    72  	Name *string `pulumi:"name"`
    73  }
    74  
    75  // A collection of values returned by getAccelerator.
    76  type LookupAcceleratorResult struct {
    77  	Arn              string                    `pulumi:"arn"`
    78  	Attributes       []GetAcceleratorAttribute `pulumi:"attributes"`
    79  	DnsName          string                    `pulumi:"dnsName"`
    80  	DualStackDnsName string                    `pulumi:"dualStackDnsName"`
    81  	Enabled          bool                      `pulumi:"enabled"`
    82  	HostedZoneId     string                    `pulumi:"hostedZoneId"`
    83  	Id               string                    `pulumi:"id"`
    84  	IpAddressType    string                    `pulumi:"ipAddressType"`
    85  	IpSets           []GetAcceleratorIpSet     `pulumi:"ipSets"`
    86  	Name             string                    `pulumi:"name"`
    87  	Tags             map[string]string         `pulumi:"tags"`
    88  }
    89  
    90  func LookupAcceleratorOutput(ctx *pulumi.Context, args LookupAcceleratorOutputArgs, opts ...pulumi.InvokeOption) LookupAcceleratorResultOutput {
    91  	return pulumi.ToOutputWithContext(context.Background(), args).
    92  		ApplyT(func(v interface{}) (LookupAcceleratorResult, error) {
    93  			args := v.(LookupAcceleratorArgs)
    94  			r, err := LookupAccelerator(ctx, &args, opts...)
    95  			var s LookupAcceleratorResult
    96  			if r != nil {
    97  				s = *r
    98  			}
    99  			return s, err
   100  		}).(LookupAcceleratorResultOutput)
   101  }
   102  
   103  // A collection of arguments for invoking getAccelerator.
   104  type LookupAcceleratorOutputArgs struct {
   105  	// Full ARN of the Global Accelerator.
   106  	Arn pulumi.StringPtrInput `pulumi:"arn"`
   107  	Id  pulumi.StringPtrInput `pulumi:"id"`
   108  	// Unique name of the Global Accelerator.
   109  	//
   110  	// > **NOTE:** When both `arn` and `name` are specified, `arn` takes precedence.
   111  	Name pulumi.StringPtrInput `pulumi:"name"`
   112  }
   113  
   114  func (LookupAcceleratorOutputArgs) ElementType() reflect.Type {
   115  	return reflect.TypeOf((*LookupAcceleratorArgs)(nil)).Elem()
   116  }
   117  
   118  // A collection of values returned by getAccelerator.
   119  type LookupAcceleratorResultOutput struct{ *pulumi.OutputState }
   120  
   121  func (LookupAcceleratorResultOutput) ElementType() reflect.Type {
   122  	return reflect.TypeOf((*LookupAcceleratorResult)(nil)).Elem()
   123  }
   124  
   125  func (o LookupAcceleratorResultOutput) ToLookupAcceleratorResultOutput() LookupAcceleratorResultOutput {
   126  	return o
   127  }
   128  
   129  func (o LookupAcceleratorResultOutput) ToLookupAcceleratorResultOutputWithContext(ctx context.Context) LookupAcceleratorResultOutput {
   130  	return o
   131  }
   132  
   133  func (o LookupAcceleratorResultOutput) Arn() pulumi.StringOutput {
   134  	return o.ApplyT(func(v LookupAcceleratorResult) string { return v.Arn }).(pulumi.StringOutput)
   135  }
   136  
   137  func (o LookupAcceleratorResultOutput) Attributes() GetAcceleratorAttributeArrayOutput {
   138  	return o.ApplyT(func(v LookupAcceleratorResult) []GetAcceleratorAttribute { return v.Attributes }).(GetAcceleratorAttributeArrayOutput)
   139  }
   140  
   141  func (o LookupAcceleratorResultOutput) DnsName() pulumi.StringOutput {
   142  	return o.ApplyT(func(v LookupAcceleratorResult) string { return v.DnsName }).(pulumi.StringOutput)
   143  }
   144  
   145  func (o LookupAcceleratorResultOutput) DualStackDnsName() pulumi.StringOutput {
   146  	return o.ApplyT(func(v LookupAcceleratorResult) string { return v.DualStackDnsName }).(pulumi.StringOutput)
   147  }
   148  
   149  func (o LookupAcceleratorResultOutput) Enabled() pulumi.BoolOutput {
   150  	return o.ApplyT(func(v LookupAcceleratorResult) bool { return v.Enabled }).(pulumi.BoolOutput)
   151  }
   152  
   153  func (o LookupAcceleratorResultOutput) HostedZoneId() pulumi.StringOutput {
   154  	return o.ApplyT(func(v LookupAcceleratorResult) string { return v.HostedZoneId }).(pulumi.StringOutput)
   155  }
   156  
   157  func (o LookupAcceleratorResultOutput) Id() pulumi.StringOutput {
   158  	return o.ApplyT(func(v LookupAcceleratorResult) string { return v.Id }).(pulumi.StringOutput)
   159  }
   160  
   161  func (o LookupAcceleratorResultOutput) IpAddressType() pulumi.StringOutput {
   162  	return o.ApplyT(func(v LookupAcceleratorResult) string { return v.IpAddressType }).(pulumi.StringOutput)
   163  }
   164  
   165  func (o LookupAcceleratorResultOutput) IpSets() GetAcceleratorIpSetArrayOutput {
   166  	return o.ApplyT(func(v LookupAcceleratorResult) []GetAcceleratorIpSet { return v.IpSets }).(GetAcceleratorIpSetArrayOutput)
   167  }
   168  
   169  func (o LookupAcceleratorResultOutput) Name() pulumi.StringOutput {
   170  	return o.ApplyT(func(v LookupAcceleratorResult) string { return v.Name }).(pulumi.StringOutput)
   171  }
   172  
   173  func (o LookupAcceleratorResultOutput) Tags() pulumi.StringMapOutput {
   174  	return o.ApplyT(func(v LookupAcceleratorResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput)
   175  }
   176  
   177  func init() {
   178  	pulumi.RegisterOutputType(LookupAcceleratorResultOutput{})
   179  }