ProvisionedProduct

class ProvisionedProduct : KotlinCustomResource

This resource provisions and manages a Service Catalog provisioned product. A provisioned product is a resourced instance of a product. For example, provisioning a product based on a CloudFormation template launches a CloudFormation stack and its underlying resources. Like this resource, the aws_servicecatalog_record data source also provides information about a provisioned product. Although a Service Catalog record provides some overlapping information with this resource, a record is tied to a provisioned product event, such as provisioning, termination, and updating.

Tip: If you include conflicted keys as tags, AWS will report an error, "Parameter validation failed: Missing required parameter in TagsN:Value". Tip: A "provisioning artifact" is also referred to as a "version." A "distributor" is also referred to as a "vendor."

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.servicecatalog.ProvisionedProduct("example", {
name: "example",
productName: "Example product",
provisioningArtifactName: "Example version",
provisioningParameters: [{
key: "foo",
value: "bar",
}],
tags: {
foo: "bar",
},
});
import pulumi
import pulumi_aws as aws
example = aws.servicecatalog.ProvisionedProduct("example",
name="example",
product_name="Example product",
provisioning_artifact_name="Example version",
provisioning_parameters=[{
"key": "foo",
"value": "bar",
}],
tags={
"foo": "bar",
})
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.ServiceCatalog.ProvisionedProduct("example", new()
{
Name = "example",
ProductName = "Example product",
ProvisioningArtifactName = "Example version",
ProvisioningParameters = new[]
{
new Aws.ServiceCatalog.Inputs.ProvisionedProductProvisioningParameterArgs
{
Key = "foo",
Value = "bar",
},
},
Tags =
{
{ "foo", "bar" },
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/servicecatalog"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := servicecatalog.NewProvisionedProduct(ctx, "example", &servicecatalog.ProvisionedProductArgs{
Name: pulumi.String("example"),
ProductName: pulumi.String("Example product"),
ProvisioningArtifactName: pulumi.String("Example version"),
ProvisioningParameters: servicecatalog.ProvisionedProductProvisioningParameterArray{
&servicecatalog.ProvisionedProductProvisioningParameterArgs{
Key: pulumi.String("foo"),
Value: pulumi.String("bar"),
},
},
Tags: pulumi.StringMap{
"foo": pulumi.String("bar"),
},
})
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.servicecatalog.ProvisionedProduct;
import com.pulumi.aws.servicecatalog.ProvisionedProductArgs;
import com.pulumi.aws.servicecatalog.inputs.ProvisionedProductProvisioningParameterArgs;
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 ProvisionedProduct("example", ProvisionedProductArgs.builder()
.name("example")
.productName("Example product")
.provisioningArtifactName("Example version")
.provisioningParameters(ProvisionedProductProvisioningParameterArgs.builder()
.key("foo")
.value("bar")
.build())
.tags(Map.of("foo", "bar"))
.build());
}
}
resources:
example:
type: aws:servicecatalog:ProvisionedProduct
properties:
name: example
productName: Example product
provisioningArtifactName: Example version
provisioningParameters:
- key: foo
value: bar
tags:
foo: bar

Import

Using pulumi import, import aws_servicecatalog_provisioned_product using the provisioned product ID. For example:

$ pulumi import aws:servicecatalog/provisionedProduct:ProvisionedProduct example pp-dnigbtea24ste

Properties

Link copied to clipboard
val acceptLanguage: Output<String>?

Language code. Valid values: en (English), jp (Japanese), zh (Chinese). Default value is en.

Link copied to clipboard
val arn: Output<String>

ARN of the provisioned product.

Link copied to clipboard

Set of CloudWatch dashboards that were created when provisioning the product.

Link copied to clipboard
val createdTime: Output<String>

Time when the provisioned product was created.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val ignoreErrors: Output<Boolean>?

Only applies to deleting. If set to true, AWS Service Catalog stops managing the specified provisioned product even if it cannot delete the underlying resources. The default value is false.

Link copied to clipboard

Record identifier of the last request performed on this provisioned product of the following types: ProvisionedProduct, UpdateProvisionedProduct, ExecuteProvisionedProductPlan, TerminateProvisionedProduct.

Link copied to clipboard
val lastRecordId: Output<String>

Record identifier of the last request performed on this provisioned product.

Link copied to clipboard

Record identifier of the last successful request performed on this provisioned product of the following types: ProvisionedProduct, UpdateProvisionedProduct, ExecuteProvisionedProductPlan, TerminateProvisionedProduct.

Link copied to clipboard
val launchRoleArn: Output<String>

ARN of the launch role associated with the provisioned product.

Link copied to clipboard
val name: Output<String>

User-friendly name of the provisioned product. The following arguments are optional:

Link copied to clipboard

Passed to CloudFormation. The SNS topic ARNs to which to publish stack-related events.

Link copied to clipboard

The set of outputs for the product created.

Link copied to clipboard
val pathId: Output<String>

Path identifier of the product. This value is optional if the product has a default path, and required if the product has more than one path. To list the paths for a product, use aws.servicecatalog.getLaunchPaths. When required, you must provide path_id or path_name, but not both.

Link copied to clipboard
val pathName: Output<String>?

Name of the path. You must provide path_id or path_name, but not both.

Link copied to clipboard
val productId: Output<String>

Product identifier. For example, prod-abcdzk7xy33qa. You must provide product_id or product_name, but not both.

Link copied to clipboard
val productName: Output<String>?

Name of the product. You must provide product_id or product_name, but not both.

Link copied to clipboard

Identifier of the provisioning artifact. For example, pa-4abcdjnxjj6ne. You must provide the provisioning_artifact_id or provisioning_artifact_name, but not both.

Link copied to clipboard

Name of the provisioning artifact. You must provide the provisioning_artifact_id or provisioning_artifact_name, but not both.

Link copied to clipboard

Configuration block with parameters specified by the administrator that are required for provisioning the product. See provisioning_parameters Block for details.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Only applies to deleting. Whether to delete the Service Catalog provisioned product but leave the CloudFormation stack, stack set, or the underlying resources of the deleted provisioned product. The default value is false.

Link copied to clipboard

Configuration block with information about the provisioning preferences for a stack set. See stack_set_provisioning_preferences Block for details.

Link copied to clipboard
val status: Output<String>

Current status of the provisioned product. See meanings below.

Link copied to clipboard
val statusMessage: Output<String>

Current status message of the provisioned product.

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

Tags to apply to the provisioned product. 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 tagsAll: Output<Map<String, String>>

Map of tags assigned to the resource, including those inherited from the provider default_tags configuration block.

Link copied to clipboard
val type: Output<String>

Type of provisioned product. Valid values are CFN_STACK and CFN_STACKSET.

Link copied to clipboard
val urn: Output<String>