github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/imagebuilder/imagePipeline.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  	"errors"
    11  	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal"
    12  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    13  )
    14  
    15  // Manages an Image Builder Image Pipeline.
    16  //
    17  // ## Example Usage
    18  //
    19  // <!--Start PulumiCodeChooser -->
    20  // ```go
    21  // package main
    22  //
    23  // import (
    24  //
    25  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/imagebuilder"
    26  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    27  //
    28  // )
    29  //
    30  //	func main() {
    31  //		pulumi.Run(func(ctx *pulumi.Context) error {
    32  //			_, err := imagebuilder.NewImagePipeline(ctx, "example", &imagebuilder.ImagePipelineArgs{
    33  //				ImageRecipeArn:                 pulumi.Any(exampleAwsImagebuilderImageRecipe.Arn),
    34  //				InfrastructureConfigurationArn: pulumi.Any(exampleAwsImagebuilderInfrastructureConfiguration.Arn),
    35  //				Name:                           pulumi.String("example"),
    36  //				Schedule: &imagebuilder.ImagePipelineScheduleArgs{
    37  //					ScheduleExpression: pulumi.String("cron(0 0 * * ? *)"),
    38  //				},
    39  //			})
    40  //			if err != nil {
    41  //				return err
    42  //			}
    43  //			return nil
    44  //		})
    45  //	}
    46  //
    47  // ```
    48  // <!--End PulumiCodeChooser -->
    49  //
    50  // ## Import
    51  //
    52  // Using `pulumi import`, import `aws_imagebuilder_image_pipeline` resources using the Amazon Resource Name (ARN). For example:
    53  //
    54  // ```sh
    55  // $ pulumi import aws:imagebuilder/imagePipeline:ImagePipeline example arn:aws:imagebuilder:us-east-1:123456789012:image-pipeline/example
    56  // ```
    57  type ImagePipeline struct {
    58  	pulumi.CustomResourceState
    59  
    60  	// Amazon Resource Name (ARN) of the image pipeline.
    61  	Arn pulumi.StringOutput `pulumi:"arn"`
    62  	// Amazon Resource Name (ARN) of the container recipe.
    63  	ContainerRecipeArn pulumi.StringPtrOutput `pulumi:"containerRecipeArn"`
    64  	// Date the image pipeline was created.
    65  	DateCreated pulumi.StringOutput `pulumi:"dateCreated"`
    66  	// Date the image pipeline was last run.
    67  	DateLastRun pulumi.StringOutput `pulumi:"dateLastRun"`
    68  	// Date the image pipeline will run next.
    69  	DateNextRun pulumi.StringOutput `pulumi:"dateNextRun"`
    70  	// Date the image pipeline was updated.
    71  	DateUpdated pulumi.StringOutput `pulumi:"dateUpdated"`
    72  	// Description of the image pipeline.
    73  	Description pulumi.StringPtrOutput `pulumi:"description"`
    74  	// Amazon Resource Name (ARN) of the Image Builder Distribution Configuration.
    75  	DistributionConfigurationArn pulumi.StringPtrOutput `pulumi:"distributionConfigurationArn"`
    76  	// Whether additional information about the image being created is collected. Defaults to `true`.
    77  	EnhancedImageMetadataEnabled pulumi.BoolPtrOutput `pulumi:"enhancedImageMetadataEnabled"`
    78  	// Amazon Resource Name (ARN) of the image recipe.
    79  	ImageRecipeArn pulumi.StringPtrOutput `pulumi:"imageRecipeArn"`
    80  	// Configuration block with image scanning configuration. Detailed below.
    81  	ImageScanningConfiguration ImagePipelineImageScanningConfigurationOutput `pulumi:"imageScanningConfiguration"`
    82  	// Configuration block with image tests configuration. Detailed below.
    83  	ImageTestsConfiguration ImagePipelineImageTestsConfigurationOutput `pulumi:"imageTestsConfiguration"`
    84  	// Amazon Resource Name (ARN) of the Image Builder Infrastructure Configuration.
    85  	InfrastructureConfigurationArn pulumi.StringOutput `pulumi:"infrastructureConfigurationArn"`
    86  	// Name of the image pipeline.
    87  	//
    88  	// The following arguments are optional:
    89  	Name pulumi.StringOutput `pulumi:"name"`
    90  	// Platform of the image pipeline.
    91  	Platform pulumi.StringOutput `pulumi:"platform"`
    92  	// Configuration block with schedule settings. Detailed below.
    93  	Schedule ImagePipelineSchedulePtrOutput `pulumi:"schedule"`
    94  	// Status of the image pipeline. Valid values are `DISABLED` and `ENABLED`. Defaults to `ENABLED`.
    95  	Status pulumi.StringPtrOutput `pulumi:"status"`
    96  	// Key-value map of resource tags for the image pipeline. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    97  	Tags pulumi.StringMapOutput `pulumi:"tags"`
    98  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
    99  	//
   100  	// Deprecated: Please use `tags` instead.
   101  	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
   102  }
   103  
   104  // NewImagePipeline registers a new resource with the given unique name, arguments, and options.
   105  func NewImagePipeline(ctx *pulumi.Context,
   106  	name string, args *ImagePipelineArgs, opts ...pulumi.ResourceOption) (*ImagePipeline, error) {
   107  	if args == nil {
   108  		return nil, errors.New("missing one or more required arguments")
   109  	}
   110  
   111  	if args.InfrastructureConfigurationArn == nil {
   112  		return nil, errors.New("invalid value for required argument 'InfrastructureConfigurationArn'")
   113  	}
   114  	opts = internal.PkgResourceDefaultOpts(opts)
   115  	var resource ImagePipeline
   116  	err := ctx.RegisterResource("aws:imagebuilder/imagePipeline:ImagePipeline", name, args, &resource, opts...)
   117  	if err != nil {
   118  		return nil, err
   119  	}
   120  	return &resource, nil
   121  }
   122  
   123  // GetImagePipeline gets an existing ImagePipeline resource's state with the given name, ID, and optional
   124  // state properties that are used to uniquely qualify the lookup (nil if not required).
   125  func GetImagePipeline(ctx *pulumi.Context,
   126  	name string, id pulumi.IDInput, state *ImagePipelineState, opts ...pulumi.ResourceOption) (*ImagePipeline, error) {
   127  	var resource ImagePipeline
   128  	err := ctx.ReadResource("aws:imagebuilder/imagePipeline:ImagePipeline", name, id, state, &resource, opts...)
   129  	if err != nil {
   130  		return nil, err
   131  	}
   132  	return &resource, nil
   133  }
   134  
   135  // Input properties used for looking up and filtering ImagePipeline resources.
   136  type imagePipelineState struct {
   137  	// Amazon Resource Name (ARN) of the image pipeline.
   138  	Arn *string `pulumi:"arn"`
   139  	// Amazon Resource Name (ARN) of the container recipe.
   140  	ContainerRecipeArn *string `pulumi:"containerRecipeArn"`
   141  	// Date the image pipeline was created.
   142  	DateCreated *string `pulumi:"dateCreated"`
   143  	// Date the image pipeline was last run.
   144  	DateLastRun *string `pulumi:"dateLastRun"`
   145  	// Date the image pipeline will run next.
   146  	DateNextRun *string `pulumi:"dateNextRun"`
   147  	// Date the image pipeline was updated.
   148  	DateUpdated *string `pulumi:"dateUpdated"`
   149  	// Description of the image pipeline.
   150  	Description *string `pulumi:"description"`
   151  	// Amazon Resource Name (ARN) of the Image Builder Distribution Configuration.
   152  	DistributionConfigurationArn *string `pulumi:"distributionConfigurationArn"`
   153  	// Whether additional information about the image being created is collected. Defaults to `true`.
   154  	EnhancedImageMetadataEnabled *bool `pulumi:"enhancedImageMetadataEnabled"`
   155  	// Amazon Resource Name (ARN) of the image recipe.
   156  	ImageRecipeArn *string `pulumi:"imageRecipeArn"`
   157  	// Configuration block with image scanning configuration. Detailed below.
   158  	ImageScanningConfiguration *ImagePipelineImageScanningConfiguration `pulumi:"imageScanningConfiguration"`
   159  	// Configuration block with image tests configuration. Detailed below.
   160  	ImageTestsConfiguration *ImagePipelineImageTestsConfiguration `pulumi:"imageTestsConfiguration"`
   161  	// Amazon Resource Name (ARN) of the Image Builder Infrastructure Configuration.
   162  	InfrastructureConfigurationArn *string `pulumi:"infrastructureConfigurationArn"`
   163  	// Name of the image pipeline.
   164  	//
   165  	// The following arguments are optional:
   166  	Name *string `pulumi:"name"`
   167  	// Platform of the image pipeline.
   168  	Platform *string `pulumi:"platform"`
   169  	// Configuration block with schedule settings. Detailed below.
   170  	Schedule *ImagePipelineSchedule `pulumi:"schedule"`
   171  	// Status of the image pipeline. Valid values are `DISABLED` and `ENABLED`. Defaults to `ENABLED`.
   172  	Status *string `pulumi:"status"`
   173  	// Key-value map of resource tags for the image pipeline. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   174  	Tags map[string]string `pulumi:"tags"`
   175  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   176  	//
   177  	// Deprecated: Please use `tags` instead.
   178  	TagsAll map[string]string `pulumi:"tagsAll"`
   179  }
   180  
   181  type ImagePipelineState struct {
   182  	// Amazon Resource Name (ARN) of the image pipeline.
   183  	Arn pulumi.StringPtrInput
   184  	// Amazon Resource Name (ARN) of the container recipe.
   185  	ContainerRecipeArn pulumi.StringPtrInput
   186  	// Date the image pipeline was created.
   187  	DateCreated pulumi.StringPtrInput
   188  	// Date the image pipeline was last run.
   189  	DateLastRun pulumi.StringPtrInput
   190  	// Date the image pipeline will run next.
   191  	DateNextRun pulumi.StringPtrInput
   192  	// Date the image pipeline was updated.
   193  	DateUpdated pulumi.StringPtrInput
   194  	// Description of the image pipeline.
   195  	Description pulumi.StringPtrInput
   196  	// Amazon Resource Name (ARN) of the Image Builder Distribution Configuration.
   197  	DistributionConfigurationArn pulumi.StringPtrInput
   198  	// Whether additional information about the image being created is collected. Defaults to `true`.
   199  	EnhancedImageMetadataEnabled pulumi.BoolPtrInput
   200  	// Amazon Resource Name (ARN) of the image recipe.
   201  	ImageRecipeArn pulumi.StringPtrInput
   202  	// Configuration block with image scanning configuration. Detailed below.
   203  	ImageScanningConfiguration ImagePipelineImageScanningConfigurationPtrInput
   204  	// Configuration block with image tests configuration. Detailed below.
   205  	ImageTestsConfiguration ImagePipelineImageTestsConfigurationPtrInput
   206  	// Amazon Resource Name (ARN) of the Image Builder Infrastructure Configuration.
   207  	InfrastructureConfigurationArn pulumi.StringPtrInput
   208  	// Name of the image pipeline.
   209  	//
   210  	// The following arguments are optional:
   211  	Name pulumi.StringPtrInput
   212  	// Platform of the image pipeline.
   213  	Platform pulumi.StringPtrInput
   214  	// Configuration block with schedule settings. Detailed below.
   215  	Schedule ImagePipelineSchedulePtrInput
   216  	// Status of the image pipeline. Valid values are `DISABLED` and `ENABLED`. Defaults to `ENABLED`.
   217  	Status pulumi.StringPtrInput
   218  	// Key-value map of resource tags for the image pipeline. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   219  	Tags pulumi.StringMapInput
   220  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   221  	//
   222  	// Deprecated: Please use `tags` instead.
   223  	TagsAll pulumi.StringMapInput
   224  }
   225  
   226  func (ImagePipelineState) ElementType() reflect.Type {
   227  	return reflect.TypeOf((*imagePipelineState)(nil)).Elem()
   228  }
   229  
   230  type imagePipelineArgs struct {
   231  	// Amazon Resource Name (ARN) of the container recipe.
   232  	ContainerRecipeArn *string `pulumi:"containerRecipeArn"`
   233  	// Description of the image pipeline.
   234  	Description *string `pulumi:"description"`
   235  	// Amazon Resource Name (ARN) of the Image Builder Distribution Configuration.
   236  	DistributionConfigurationArn *string `pulumi:"distributionConfigurationArn"`
   237  	// Whether additional information about the image being created is collected. Defaults to `true`.
   238  	EnhancedImageMetadataEnabled *bool `pulumi:"enhancedImageMetadataEnabled"`
   239  	// Amazon Resource Name (ARN) of the image recipe.
   240  	ImageRecipeArn *string `pulumi:"imageRecipeArn"`
   241  	// Configuration block with image scanning configuration. Detailed below.
   242  	ImageScanningConfiguration *ImagePipelineImageScanningConfiguration `pulumi:"imageScanningConfiguration"`
   243  	// Configuration block with image tests configuration. Detailed below.
   244  	ImageTestsConfiguration *ImagePipelineImageTestsConfiguration `pulumi:"imageTestsConfiguration"`
   245  	// Amazon Resource Name (ARN) of the Image Builder Infrastructure Configuration.
   246  	InfrastructureConfigurationArn string `pulumi:"infrastructureConfigurationArn"`
   247  	// Name of the image pipeline.
   248  	//
   249  	// The following arguments are optional:
   250  	Name *string `pulumi:"name"`
   251  	// Configuration block with schedule settings. Detailed below.
   252  	Schedule *ImagePipelineSchedule `pulumi:"schedule"`
   253  	// Status of the image pipeline. Valid values are `DISABLED` and `ENABLED`. Defaults to `ENABLED`.
   254  	Status *string `pulumi:"status"`
   255  	// Key-value map of resource tags for the image pipeline. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   256  	Tags map[string]string `pulumi:"tags"`
   257  }
   258  
   259  // The set of arguments for constructing a ImagePipeline resource.
   260  type ImagePipelineArgs struct {
   261  	// Amazon Resource Name (ARN) of the container recipe.
   262  	ContainerRecipeArn pulumi.StringPtrInput
   263  	// Description of the image pipeline.
   264  	Description pulumi.StringPtrInput
   265  	// Amazon Resource Name (ARN) of the Image Builder Distribution Configuration.
   266  	DistributionConfigurationArn pulumi.StringPtrInput
   267  	// Whether additional information about the image being created is collected. Defaults to `true`.
   268  	EnhancedImageMetadataEnabled pulumi.BoolPtrInput
   269  	// Amazon Resource Name (ARN) of the image recipe.
   270  	ImageRecipeArn pulumi.StringPtrInput
   271  	// Configuration block with image scanning configuration. Detailed below.
   272  	ImageScanningConfiguration ImagePipelineImageScanningConfigurationPtrInput
   273  	// Configuration block with image tests configuration. Detailed below.
   274  	ImageTestsConfiguration ImagePipelineImageTestsConfigurationPtrInput
   275  	// Amazon Resource Name (ARN) of the Image Builder Infrastructure Configuration.
   276  	InfrastructureConfigurationArn pulumi.StringInput
   277  	// Name of the image pipeline.
   278  	//
   279  	// The following arguments are optional:
   280  	Name pulumi.StringPtrInput
   281  	// Configuration block with schedule settings. Detailed below.
   282  	Schedule ImagePipelineSchedulePtrInput
   283  	// Status of the image pipeline. Valid values are `DISABLED` and `ENABLED`. Defaults to `ENABLED`.
   284  	Status pulumi.StringPtrInput
   285  	// Key-value map of resource tags for the image pipeline. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   286  	Tags pulumi.StringMapInput
   287  }
   288  
   289  func (ImagePipelineArgs) ElementType() reflect.Type {
   290  	return reflect.TypeOf((*imagePipelineArgs)(nil)).Elem()
   291  }
   292  
   293  type ImagePipelineInput interface {
   294  	pulumi.Input
   295  
   296  	ToImagePipelineOutput() ImagePipelineOutput
   297  	ToImagePipelineOutputWithContext(ctx context.Context) ImagePipelineOutput
   298  }
   299  
   300  func (*ImagePipeline) ElementType() reflect.Type {
   301  	return reflect.TypeOf((**ImagePipeline)(nil)).Elem()
   302  }
   303  
   304  func (i *ImagePipeline) ToImagePipelineOutput() ImagePipelineOutput {
   305  	return i.ToImagePipelineOutputWithContext(context.Background())
   306  }
   307  
   308  func (i *ImagePipeline) ToImagePipelineOutputWithContext(ctx context.Context) ImagePipelineOutput {
   309  	return pulumi.ToOutputWithContext(ctx, i).(ImagePipelineOutput)
   310  }
   311  
   312  // ImagePipelineArrayInput is an input type that accepts ImagePipelineArray and ImagePipelineArrayOutput values.
   313  // You can construct a concrete instance of `ImagePipelineArrayInput` via:
   314  //
   315  //	ImagePipelineArray{ ImagePipelineArgs{...} }
   316  type ImagePipelineArrayInput interface {
   317  	pulumi.Input
   318  
   319  	ToImagePipelineArrayOutput() ImagePipelineArrayOutput
   320  	ToImagePipelineArrayOutputWithContext(context.Context) ImagePipelineArrayOutput
   321  }
   322  
   323  type ImagePipelineArray []ImagePipelineInput
   324  
   325  func (ImagePipelineArray) ElementType() reflect.Type {
   326  	return reflect.TypeOf((*[]*ImagePipeline)(nil)).Elem()
   327  }
   328  
   329  func (i ImagePipelineArray) ToImagePipelineArrayOutput() ImagePipelineArrayOutput {
   330  	return i.ToImagePipelineArrayOutputWithContext(context.Background())
   331  }
   332  
   333  func (i ImagePipelineArray) ToImagePipelineArrayOutputWithContext(ctx context.Context) ImagePipelineArrayOutput {
   334  	return pulumi.ToOutputWithContext(ctx, i).(ImagePipelineArrayOutput)
   335  }
   336  
   337  // ImagePipelineMapInput is an input type that accepts ImagePipelineMap and ImagePipelineMapOutput values.
   338  // You can construct a concrete instance of `ImagePipelineMapInput` via:
   339  //
   340  //	ImagePipelineMap{ "key": ImagePipelineArgs{...} }
   341  type ImagePipelineMapInput interface {
   342  	pulumi.Input
   343  
   344  	ToImagePipelineMapOutput() ImagePipelineMapOutput
   345  	ToImagePipelineMapOutputWithContext(context.Context) ImagePipelineMapOutput
   346  }
   347  
   348  type ImagePipelineMap map[string]ImagePipelineInput
   349  
   350  func (ImagePipelineMap) ElementType() reflect.Type {
   351  	return reflect.TypeOf((*map[string]*ImagePipeline)(nil)).Elem()
   352  }
   353  
   354  func (i ImagePipelineMap) ToImagePipelineMapOutput() ImagePipelineMapOutput {
   355  	return i.ToImagePipelineMapOutputWithContext(context.Background())
   356  }
   357  
   358  func (i ImagePipelineMap) ToImagePipelineMapOutputWithContext(ctx context.Context) ImagePipelineMapOutput {
   359  	return pulumi.ToOutputWithContext(ctx, i).(ImagePipelineMapOutput)
   360  }
   361  
   362  type ImagePipelineOutput struct{ *pulumi.OutputState }
   363  
   364  func (ImagePipelineOutput) ElementType() reflect.Type {
   365  	return reflect.TypeOf((**ImagePipeline)(nil)).Elem()
   366  }
   367  
   368  func (o ImagePipelineOutput) ToImagePipelineOutput() ImagePipelineOutput {
   369  	return o
   370  }
   371  
   372  func (o ImagePipelineOutput) ToImagePipelineOutputWithContext(ctx context.Context) ImagePipelineOutput {
   373  	return o
   374  }
   375  
   376  // Amazon Resource Name (ARN) of the image pipeline.
   377  func (o ImagePipelineOutput) Arn() pulumi.StringOutput {
   378  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput)
   379  }
   380  
   381  // Amazon Resource Name (ARN) of the container recipe.
   382  func (o ImagePipelineOutput) ContainerRecipeArn() pulumi.StringPtrOutput {
   383  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringPtrOutput { return v.ContainerRecipeArn }).(pulumi.StringPtrOutput)
   384  }
   385  
   386  // Date the image pipeline was created.
   387  func (o ImagePipelineOutput) DateCreated() pulumi.StringOutput {
   388  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringOutput { return v.DateCreated }).(pulumi.StringOutput)
   389  }
   390  
   391  // Date the image pipeline was last run.
   392  func (o ImagePipelineOutput) DateLastRun() pulumi.StringOutput {
   393  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringOutput { return v.DateLastRun }).(pulumi.StringOutput)
   394  }
   395  
   396  // Date the image pipeline will run next.
   397  func (o ImagePipelineOutput) DateNextRun() pulumi.StringOutput {
   398  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringOutput { return v.DateNextRun }).(pulumi.StringOutput)
   399  }
   400  
   401  // Date the image pipeline was updated.
   402  func (o ImagePipelineOutput) DateUpdated() pulumi.StringOutput {
   403  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringOutput { return v.DateUpdated }).(pulumi.StringOutput)
   404  }
   405  
   406  // Description of the image pipeline.
   407  func (o ImagePipelineOutput) Description() pulumi.StringPtrOutput {
   408  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringPtrOutput { return v.Description }).(pulumi.StringPtrOutput)
   409  }
   410  
   411  // Amazon Resource Name (ARN) of the Image Builder Distribution Configuration.
   412  func (o ImagePipelineOutput) DistributionConfigurationArn() pulumi.StringPtrOutput {
   413  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringPtrOutput { return v.DistributionConfigurationArn }).(pulumi.StringPtrOutput)
   414  }
   415  
   416  // Whether additional information about the image being created is collected. Defaults to `true`.
   417  func (o ImagePipelineOutput) EnhancedImageMetadataEnabled() pulumi.BoolPtrOutput {
   418  	return o.ApplyT(func(v *ImagePipeline) pulumi.BoolPtrOutput { return v.EnhancedImageMetadataEnabled }).(pulumi.BoolPtrOutput)
   419  }
   420  
   421  // Amazon Resource Name (ARN) of the image recipe.
   422  func (o ImagePipelineOutput) ImageRecipeArn() pulumi.StringPtrOutput {
   423  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringPtrOutput { return v.ImageRecipeArn }).(pulumi.StringPtrOutput)
   424  }
   425  
   426  // Configuration block with image scanning configuration. Detailed below.
   427  func (o ImagePipelineOutput) ImageScanningConfiguration() ImagePipelineImageScanningConfigurationOutput {
   428  	return o.ApplyT(func(v *ImagePipeline) ImagePipelineImageScanningConfigurationOutput {
   429  		return v.ImageScanningConfiguration
   430  	}).(ImagePipelineImageScanningConfigurationOutput)
   431  }
   432  
   433  // Configuration block with image tests configuration. Detailed below.
   434  func (o ImagePipelineOutput) ImageTestsConfiguration() ImagePipelineImageTestsConfigurationOutput {
   435  	return o.ApplyT(func(v *ImagePipeline) ImagePipelineImageTestsConfigurationOutput { return v.ImageTestsConfiguration }).(ImagePipelineImageTestsConfigurationOutput)
   436  }
   437  
   438  // Amazon Resource Name (ARN) of the Image Builder Infrastructure Configuration.
   439  func (o ImagePipelineOutput) InfrastructureConfigurationArn() pulumi.StringOutput {
   440  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringOutput { return v.InfrastructureConfigurationArn }).(pulumi.StringOutput)
   441  }
   442  
   443  // Name of the image pipeline.
   444  //
   445  // The following arguments are optional:
   446  func (o ImagePipelineOutput) Name() pulumi.StringOutput {
   447  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
   448  }
   449  
   450  // Platform of the image pipeline.
   451  func (o ImagePipelineOutput) Platform() pulumi.StringOutput {
   452  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringOutput { return v.Platform }).(pulumi.StringOutput)
   453  }
   454  
   455  // Configuration block with schedule settings. Detailed below.
   456  func (o ImagePipelineOutput) Schedule() ImagePipelineSchedulePtrOutput {
   457  	return o.ApplyT(func(v *ImagePipeline) ImagePipelineSchedulePtrOutput { return v.Schedule }).(ImagePipelineSchedulePtrOutput)
   458  }
   459  
   460  // Status of the image pipeline. Valid values are `DISABLED` and `ENABLED`. Defaults to `ENABLED`.
   461  func (o ImagePipelineOutput) Status() pulumi.StringPtrOutput {
   462  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringPtrOutput { return v.Status }).(pulumi.StringPtrOutput)
   463  }
   464  
   465  // Key-value map of resource tags for the image pipeline. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   466  func (o ImagePipelineOutput) Tags() pulumi.StringMapOutput {
   467  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput)
   468  }
   469  
   470  // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   471  //
   472  // Deprecated: Please use `tags` instead.
   473  func (o ImagePipelineOutput) TagsAll() pulumi.StringMapOutput {
   474  	return o.ApplyT(func(v *ImagePipeline) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput)
   475  }
   476  
   477  type ImagePipelineArrayOutput struct{ *pulumi.OutputState }
   478  
   479  func (ImagePipelineArrayOutput) ElementType() reflect.Type {
   480  	return reflect.TypeOf((*[]*ImagePipeline)(nil)).Elem()
   481  }
   482  
   483  func (o ImagePipelineArrayOutput) ToImagePipelineArrayOutput() ImagePipelineArrayOutput {
   484  	return o
   485  }
   486  
   487  func (o ImagePipelineArrayOutput) ToImagePipelineArrayOutputWithContext(ctx context.Context) ImagePipelineArrayOutput {
   488  	return o
   489  }
   490  
   491  func (o ImagePipelineArrayOutput) Index(i pulumi.IntInput) ImagePipelineOutput {
   492  	return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ImagePipeline {
   493  		return vs[0].([]*ImagePipeline)[vs[1].(int)]
   494  	}).(ImagePipelineOutput)
   495  }
   496  
   497  type ImagePipelineMapOutput struct{ *pulumi.OutputState }
   498  
   499  func (ImagePipelineMapOutput) ElementType() reflect.Type {
   500  	return reflect.TypeOf((*map[string]*ImagePipeline)(nil)).Elem()
   501  }
   502  
   503  func (o ImagePipelineMapOutput) ToImagePipelineMapOutput() ImagePipelineMapOutput {
   504  	return o
   505  }
   506  
   507  func (o ImagePipelineMapOutput) ToImagePipelineMapOutputWithContext(ctx context.Context) ImagePipelineMapOutput {
   508  	return o
   509  }
   510  
   511  func (o ImagePipelineMapOutput) MapIndex(k pulumi.StringInput) ImagePipelineOutput {
   512  	return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ImagePipeline {
   513  		return vs[0].(map[string]*ImagePipeline)[vs[1].(string)]
   514  	}).(ImagePipelineOutput)
   515  }
   516  
   517  func init() {
   518  	pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineInput)(nil)).Elem(), &ImagePipeline{})
   519  	pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineArrayInput)(nil)).Elem(), ImagePipelineArray{})
   520  	pulumi.RegisterInputType(reflect.TypeOf((*ImagePipelineMapInput)(nil)).Elem(), ImagePipelineMap{})
   521  	pulumi.RegisterOutputType(ImagePipelineOutput{})
   522  	pulumi.RegisterOutputType(ImagePipelineArrayOutput{})
   523  	pulumi.RegisterOutputType(ImagePipelineMapOutput{})
   524  }