Provisioned Product
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
Language code. Valid values: en
(English), jp
(Japanese), zh
(Chinese). Default value is en
.
Set of CloudWatch dashboards that were created when provisioning the product.
Time when the provisioned product was created.
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
.
Record identifier of the last request performed on this provisioned product of the following types: ProvisionedProduct
, UpdateProvisionedProduct
, ExecuteProvisionedProductPlan
, TerminateProvisionedProduct
.
Record identifier of the last request performed on this provisioned product.
Record identifier of the last successful request performed on this provisioned product of the following types: ProvisionedProduct
, UpdateProvisionedProduct
, ExecuteProvisionedProductPlan
, TerminateProvisionedProduct
.
ARN of the launch role associated with the provisioned product.
Passed to CloudFormation. The SNS topic ARNs to which to publish stack-related events.
The set of outputs for the product created.
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.
Name of the product. You must provide product_id
or product_name
, but not both.
Identifier of the provisioning artifact. For example, pa-4abcdjnxjj6ne
. You must provide the provisioning_artifact_id
or provisioning_artifact_name
, but not both.
Name of the provisioning artifact. You must provide the provisioning_artifact_id
or provisioning_artifact_name
, but not both.
Configuration block with parameters specified by the administrator that are required for provisioning the product. See provisioning_parameters
Block for details.
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
.
Configuration block with information about the provisioning preferences for a stack set. See stack_set_provisioning_preferences
Block for details.
Current status message of the provisioned product.