ComponentArgs

data class ComponentArgs(val changeDescription: Output<String>? = null, val data: Output<String>? = null, val description: Output<String>? = null, val kmsKeyId: Output<String>? = null, val name: Output<String>? = null, val platform: Output<String>? = null, val skipDestroy: Output<Boolean>? = null, val supportedOsVersions: Output<List<String>>? = null, val tags: Output<Map<String, String>>? = null, val uri: Output<String>? = null, val version: Output<String>? = null) : ConvertibleToJava<ComponentArgs>

Manages an Image Builder Component.

Example Usage

URI Document

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.imagebuilder.Component("example", {
name: "example",
platform: "Linux",
uri: `s3://${exampleAwsS3Object.bucket}/${exampleAwsS3Object.key}`,
version: "1.0.0",
});
import pulumi
import pulumi_aws as aws
example = aws.imagebuilder.Component("example",
name="example",
platform="Linux",
uri=f"s3://{example_aws_s3_object['bucket']}/{example_aws_s3_object['key']}",
version="1.0.0")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.ImageBuilder.Component("example", new()
{
Name = "example",
Platform = "Linux",
Uri = $"s3://{exampleAwsS3Object.Bucket}/{exampleAwsS3Object.Key}",
Version = "1.0.0",
});
});
package main
import (
"fmt"
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/imagebuilder"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := imagebuilder.NewComponent(ctx, "example", &imagebuilder.ComponentArgs{
Name: pulumi.String("example"),
Platform: pulumi.String("Linux"),
Uri: pulumi.Sprintf("s3://%v/%v", exampleAwsS3Object.Bucket, exampleAwsS3Object.Key),
Version: pulumi.String("1.0.0"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.imagebuilder.Component;
import com.pulumi.aws.imagebuilder.ComponentArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new Component("example", ComponentArgs.builder()
.name("example")
.platform("Linux")
.uri(String.format("s3://%s/%s", exampleAwsS3Object.bucket(),exampleAwsS3Object.key()))
.version("1.0.0")
.build());
}
}
resources:
example:
type: aws:imagebuilder:Component
properties:
name: example
platform: Linux
uri: s3://${exampleAwsS3Object.bucket}/${exampleAwsS3Object.key}
version: 1.0.0

Import

Using pulumi import, import aws_imagebuilder_components resources using the Amazon Resource Name (ARN). For example:

$ pulumi import aws:imagebuilder/component:Component example arn:aws:imagebuilder:us-east-1:123456789012:component/example/1.0.0/1

Certain resource arguments, such as uri, cannot be read via the API and imported into the provider. The provider will display a difference for these arguments the first run after import if declared in the the provider configuration for an imported resource.

Constructors

Link copied to clipboard
constructor(changeDescription: Output<String>? = null, data: Output<String>? = null, description: Output<String>? = null, kmsKeyId: Output<String>? = null, name: Output<String>? = null, platform: Output<String>? = null, skipDestroy: Output<Boolean>? = null, supportedOsVersions: Output<List<String>>? = null, tags: Output<Map<String, String>>? = null, uri: Output<String>? = null, version: Output<String>? = null)

Properties

Link copied to clipboard
val changeDescription: Output<String>? = null

Change description of the component.

Link copied to clipboard
val data: Output<String>? = null

Inline YAML string with data of the component. Exactly one of data and uri can be specified. the provider will only perform drift detection of its value when present in a configuration.

Link copied to clipboard
val description: Output<String>? = null

Description of the component.

Link copied to clipboard
val kmsKeyId: Output<String>? = null

Amazon Resource Name (ARN) of the Key Management Service (KMS) Key used to encrypt the component.

Link copied to clipboard
val name: Output<String>? = null

Name of the component.

Link copied to clipboard
val platform: Output<String>? = null

Platform of the component.

Link copied to clipboard
val skipDestroy: Output<Boolean>? = null

Whether to retain the old version when the resource is destroyed or replacement is necessary. Defaults to false.

Link copied to clipboard
val supportedOsVersions: Output<List<String>>? = null

Set of Operating Systems (OS) supported by the component.

Link copied to clipboard
val tags: Output<Map<String, String>>? = null

Key-value map of resource tags for the component. If configured with a provider default_tags configuration block present, tags with matching keys will overwrite those defined at the provider-level.

Link copied to clipboard
val uri: Output<String>? = null

S3 URI with data of the component. Exactly one of data and uri can be specified.

Link copied to clipboard
val version: Output<String>? = null

Version of the component. The following attributes are optional:

Functions

Link copied to clipboard
open override fun toJava(): ComponentArgs