github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/imagebuilder/getDistributionConfigurations.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 imagebuilder
     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  // Use this data source to get the ARNs and names of Image Builder Distribution Configurations matching the specified criteria.
    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/imagebuilder"
    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 := imagebuilder.GetDistributionConfigurations(ctx, &imagebuilder.GetDistributionConfigurationsArgs{
    32  //				Filters: []imagebuilder.GetDistributionConfigurationsFilter{
    33  //					{
    34  //						Name: "name",
    35  //						Values: []string{
    36  //							"example",
    37  //						},
    38  //					},
    39  //				},
    40  //			}, nil)
    41  //			if err != nil {
    42  //				return err
    43  //			}
    44  //			return nil
    45  //		})
    46  //	}
    47  //
    48  // ```
    49  // <!--End PulumiCodeChooser -->
    50  func GetDistributionConfigurations(ctx *pulumi.Context, args *GetDistributionConfigurationsArgs, opts ...pulumi.InvokeOption) (*GetDistributionConfigurationsResult, error) {
    51  	opts = internal.PkgInvokeDefaultOpts(opts)
    52  	var rv GetDistributionConfigurationsResult
    53  	err := ctx.Invoke("aws:imagebuilder/getDistributionConfigurations:getDistributionConfigurations", args, &rv, opts...)
    54  	if err != nil {
    55  		return nil, err
    56  	}
    57  	return &rv, nil
    58  }
    59  
    60  // A collection of arguments for invoking getDistributionConfigurations.
    61  type GetDistributionConfigurationsArgs struct {
    62  	// Configuration block(s) for filtering. Detailed below.
    63  	Filters []GetDistributionConfigurationsFilter `pulumi:"filters"`
    64  }
    65  
    66  // A collection of values returned by getDistributionConfigurations.
    67  type GetDistributionConfigurationsResult struct {
    68  	// Set of ARNs of the matched Image Builder Distribution Configurations.
    69  	Arns    []string                              `pulumi:"arns"`
    70  	Filters []GetDistributionConfigurationsFilter `pulumi:"filters"`
    71  	// The provider-assigned unique ID for this managed resource.
    72  	Id string `pulumi:"id"`
    73  	// Set of names of the matched Image Builder Distribution Configurations.
    74  	Names []string `pulumi:"names"`
    75  }
    76  
    77  func GetDistributionConfigurationsOutput(ctx *pulumi.Context, args GetDistributionConfigurationsOutputArgs, opts ...pulumi.InvokeOption) GetDistributionConfigurationsResultOutput {
    78  	return pulumi.ToOutputWithContext(context.Background(), args).
    79  		ApplyT(func(v interface{}) (GetDistributionConfigurationsResult, error) {
    80  			args := v.(GetDistributionConfigurationsArgs)
    81  			r, err := GetDistributionConfigurations(ctx, &args, opts...)
    82  			var s GetDistributionConfigurationsResult
    83  			if r != nil {
    84  				s = *r
    85  			}
    86  			return s, err
    87  		}).(GetDistributionConfigurationsResultOutput)
    88  }
    89  
    90  // A collection of arguments for invoking getDistributionConfigurations.
    91  type GetDistributionConfigurationsOutputArgs struct {
    92  	// Configuration block(s) for filtering. Detailed below.
    93  	Filters GetDistributionConfigurationsFilterArrayInput `pulumi:"filters"`
    94  }
    95  
    96  func (GetDistributionConfigurationsOutputArgs) ElementType() reflect.Type {
    97  	return reflect.TypeOf((*GetDistributionConfigurationsArgs)(nil)).Elem()
    98  }
    99  
   100  // A collection of values returned by getDistributionConfigurations.
   101  type GetDistributionConfigurationsResultOutput struct{ *pulumi.OutputState }
   102  
   103  func (GetDistributionConfigurationsResultOutput) ElementType() reflect.Type {
   104  	return reflect.TypeOf((*GetDistributionConfigurationsResult)(nil)).Elem()
   105  }
   106  
   107  func (o GetDistributionConfigurationsResultOutput) ToGetDistributionConfigurationsResultOutput() GetDistributionConfigurationsResultOutput {
   108  	return o
   109  }
   110  
   111  func (o GetDistributionConfigurationsResultOutput) ToGetDistributionConfigurationsResultOutputWithContext(ctx context.Context) GetDistributionConfigurationsResultOutput {
   112  	return o
   113  }
   114  
   115  // Set of ARNs of the matched Image Builder Distribution Configurations.
   116  func (o GetDistributionConfigurationsResultOutput) Arns() pulumi.StringArrayOutput {
   117  	return o.ApplyT(func(v GetDistributionConfigurationsResult) []string { return v.Arns }).(pulumi.StringArrayOutput)
   118  }
   119  
   120  func (o GetDistributionConfigurationsResultOutput) Filters() GetDistributionConfigurationsFilterArrayOutput {
   121  	return o.ApplyT(func(v GetDistributionConfigurationsResult) []GetDistributionConfigurationsFilter { return v.Filters }).(GetDistributionConfigurationsFilterArrayOutput)
   122  }
   123  
   124  // The provider-assigned unique ID for this managed resource.
   125  func (o GetDistributionConfigurationsResultOutput) Id() pulumi.StringOutput {
   126  	return o.ApplyT(func(v GetDistributionConfigurationsResult) string { return v.Id }).(pulumi.StringOutput)
   127  }
   128  
   129  // Set of names of the matched Image Builder Distribution Configurations.
   130  func (o GetDistributionConfigurationsResultOutput) Names() pulumi.StringArrayOutput {
   131  	return o.ApplyT(func(v GetDistributionConfigurationsResult) []string { return v.Names }).(pulumi.StringArrayOutput)
   132  }
   133  
   134  func init() {
   135  	pulumi.RegisterOutputType(GetDistributionConfigurationsResultOutput{})
   136  }