github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/outposts/getOutpost.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 outposts
     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 details about an Outposts Outpost.
    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/outposts"
    25  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    26  //
    27  // )
    28  //
    29  //	func main() {
    30  //		pulumi.Run(func(ctx *pulumi.Context) error {
    31  //			_, err := outposts.GetOutpost(ctx, &outposts.GetOutpostArgs{
    32  //				Name: pulumi.StringRef("example"),
    33  //			}, nil)
    34  //			if err != nil {
    35  //				return err
    36  //			}
    37  //			return nil
    38  //		})
    39  //	}
    40  //
    41  // ```
    42  // <!--End PulumiCodeChooser -->
    43  func GetOutpost(ctx *pulumi.Context, args *GetOutpostArgs, opts ...pulumi.InvokeOption) (*GetOutpostResult, error) {
    44  	opts = internal.PkgInvokeDefaultOpts(opts)
    45  	var rv GetOutpostResult
    46  	err := ctx.Invoke("aws:outposts/getOutpost:getOutpost", args, &rv, opts...)
    47  	if err != nil {
    48  		return nil, err
    49  	}
    50  	return &rv, nil
    51  }
    52  
    53  // A collection of arguments for invoking getOutpost.
    54  type GetOutpostArgs struct {
    55  	// ARN.
    56  	Arn *string `pulumi:"arn"`
    57  	// Identifier of the Outpost.
    58  	Id *string `pulumi:"id"`
    59  	// Name of the Outpost.
    60  	Name *string `pulumi:"name"`
    61  	// AWS Account identifier of the Outpost owner.
    62  	OwnerId *string `pulumi:"ownerId"`
    63  	// The Outpost tags.
    64  	Tags map[string]string `pulumi:"tags"`
    65  }
    66  
    67  // A collection of values returned by getOutpost.
    68  type GetOutpostResult struct {
    69  	Arn string `pulumi:"arn"`
    70  	// Availability Zone name.
    71  	AvailabilityZone string `pulumi:"availabilityZone"`
    72  	// Availability Zone identifier.
    73  	AvailabilityZoneId string `pulumi:"availabilityZoneId"`
    74  	// The description of the Outpost.
    75  	Description string `pulumi:"description"`
    76  	Id          string `pulumi:"id"`
    77  	// The life cycle status.
    78  	LifecycleStatus string  `pulumi:"lifecycleStatus"`
    79  	Name            string  `pulumi:"name"`
    80  	OwnerId         *string `pulumi:"ownerId"`
    81  	// The Amazon Resource Name (ARN) of the site.
    82  	SiteArn string `pulumi:"siteArn"`
    83  	// The ID of the site.
    84  	SiteId string `pulumi:"siteId"`
    85  	// The hardware type.
    86  	SupportedHardwareType string `pulumi:"supportedHardwareType"`
    87  	// The Outpost tags.
    88  	Tags map[string]string `pulumi:"tags"`
    89  }
    90  
    91  func GetOutpostOutput(ctx *pulumi.Context, args GetOutpostOutputArgs, opts ...pulumi.InvokeOption) GetOutpostResultOutput {
    92  	return pulumi.ToOutputWithContext(context.Background(), args).
    93  		ApplyT(func(v interface{}) (GetOutpostResult, error) {
    94  			args := v.(GetOutpostArgs)
    95  			r, err := GetOutpost(ctx, &args, opts...)
    96  			var s GetOutpostResult
    97  			if r != nil {
    98  				s = *r
    99  			}
   100  			return s, err
   101  		}).(GetOutpostResultOutput)
   102  }
   103  
   104  // A collection of arguments for invoking getOutpost.
   105  type GetOutpostOutputArgs struct {
   106  	// ARN.
   107  	Arn pulumi.StringPtrInput `pulumi:"arn"`
   108  	// Identifier of the Outpost.
   109  	Id pulumi.StringPtrInput `pulumi:"id"`
   110  	// Name of the Outpost.
   111  	Name pulumi.StringPtrInput `pulumi:"name"`
   112  	// AWS Account identifier of the Outpost owner.
   113  	OwnerId pulumi.StringPtrInput `pulumi:"ownerId"`
   114  	// The Outpost tags.
   115  	Tags pulumi.StringMapInput `pulumi:"tags"`
   116  }
   117  
   118  func (GetOutpostOutputArgs) ElementType() reflect.Type {
   119  	return reflect.TypeOf((*GetOutpostArgs)(nil)).Elem()
   120  }
   121  
   122  // A collection of values returned by getOutpost.
   123  type GetOutpostResultOutput struct{ *pulumi.OutputState }
   124  
   125  func (GetOutpostResultOutput) ElementType() reflect.Type {
   126  	return reflect.TypeOf((*GetOutpostResult)(nil)).Elem()
   127  }
   128  
   129  func (o GetOutpostResultOutput) ToGetOutpostResultOutput() GetOutpostResultOutput {
   130  	return o
   131  }
   132  
   133  func (o GetOutpostResultOutput) ToGetOutpostResultOutputWithContext(ctx context.Context) GetOutpostResultOutput {
   134  	return o
   135  }
   136  
   137  func (o GetOutpostResultOutput) Arn() pulumi.StringOutput {
   138  	return o.ApplyT(func(v GetOutpostResult) string { return v.Arn }).(pulumi.StringOutput)
   139  }
   140  
   141  // Availability Zone name.
   142  func (o GetOutpostResultOutput) AvailabilityZone() pulumi.StringOutput {
   143  	return o.ApplyT(func(v GetOutpostResult) string { return v.AvailabilityZone }).(pulumi.StringOutput)
   144  }
   145  
   146  // Availability Zone identifier.
   147  func (o GetOutpostResultOutput) AvailabilityZoneId() pulumi.StringOutput {
   148  	return o.ApplyT(func(v GetOutpostResult) string { return v.AvailabilityZoneId }).(pulumi.StringOutput)
   149  }
   150  
   151  // The description of the Outpost.
   152  func (o GetOutpostResultOutput) Description() pulumi.StringOutput {
   153  	return o.ApplyT(func(v GetOutpostResult) string { return v.Description }).(pulumi.StringOutput)
   154  }
   155  
   156  func (o GetOutpostResultOutput) Id() pulumi.StringOutput {
   157  	return o.ApplyT(func(v GetOutpostResult) string { return v.Id }).(pulumi.StringOutput)
   158  }
   159  
   160  // The life cycle status.
   161  func (o GetOutpostResultOutput) LifecycleStatus() pulumi.StringOutput {
   162  	return o.ApplyT(func(v GetOutpostResult) string { return v.LifecycleStatus }).(pulumi.StringOutput)
   163  }
   164  
   165  func (o GetOutpostResultOutput) Name() pulumi.StringOutput {
   166  	return o.ApplyT(func(v GetOutpostResult) string { return v.Name }).(pulumi.StringOutput)
   167  }
   168  
   169  func (o GetOutpostResultOutput) OwnerId() pulumi.StringPtrOutput {
   170  	return o.ApplyT(func(v GetOutpostResult) *string { return v.OwnerId }).(pulumi.StringPtrOutput)
   171  }
   172  
   173  // The Amazon Resource Name (ARN) of the site.
   174  func (o GetOutpostResultOutput) SiteArn() pulumi.StringOutput {
   175  	return o.ApplyT(func(v GetOutpostResult) string { return v.SiteArn }).(pulumi.StringOutput)
   176  }
   177  
   178  // The ID of the site.
   179  func (o GetOutpostResultOutput) SiteId() pulumi.StringOutput {
   180  	return o.ApplyT(func(v GetOutpostResult) string { return v.SiteId }).(pulumi.StringOutput)
   181  }
   182  
   183  // The hardware type.
   184  func (o GetOutpostResultOutput) SupportedHardwareType() pulumi.StringOutput {
   185  	return o.ApplyT(func(v GetOutpostResult) string { return v.SupportedHardwareType }).(pulumi.StringOutput)
   186  }
   187  
   188  // The Outpost tags.
   189  func (o GetOutpostResultOutput) Tags() pulumi.StringMapOutput {
   190  	return o.ApplyT(func(v GetOutpostResult) map[string]string { return v.Tags }).(pulumi.StringMapOutput)
   191  }
   192  
   193  func init() {
   194  	pulumi.RegisterOutputType(GetOutpostResultOutput{})
   195  }