ProvisionedProductArgs

data class ProvisionedProductArgs(val acceptLanguage: Output<String>? = null, val ignoreErrors: Output<Boolean>? = null, val name: Output<String>? = null, val notificationArns: Output<List<String>>? = null, val pathId: Output<String>? = null, val pathName: Output<String>? = null, val productId: Output<String>? = null, val productName: Output<String>? = null, val provisioningArtifactId: Output<String>? = null, val provisioningArtifactName: Output<String>? = null, val provisioningParameters: Output<List<ProvisionedProductProvisioningParameterArgs>>? = null, val retainPhysicalResources: Output<Boolean>? = null, val stackSetProvisioningPreferences: Output<ProvisionedProductStackSetProvisioningPreferencesArgs>? = null, val tags: Output<Map<String, String>>? = null) : ConvertibleToJava<ProvisionedProductArgs>

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

Constructors

Link copied to clipboard
constructor(acceptLanguage: Output<String>? = null, ignoreErrors: Output<Boolean>? = null, name: Output<String>? = null, notificationArns: Output<List<String>>? = null, pathId: Output<String>? = null, pathName: Output<String>? = null, productId: Output<String>? = null, productName: Output<String>? = null, provisioningArtifactId: Output<String>? = null, provisioningArtifactName: Output<String>? = null, provisioningParameters: Output<List<ProvisionedProductProvisioningParameterArgs>>? = null, retainPhysicalResources: Output<Boolean>? = null, stackSetProvisioningPreferences: Output<ProvisionedProductStackSetProvisioningPreferencesArgs>? = null, tags: Output<Map<String, String>>? = null)

Properties

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

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

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

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
val name: Output<String>? = null

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

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

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

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

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>? = null

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

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

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>? = null

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

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

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
val provisioningArtifactName: Output<String>? = null

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 retainPhysicalResources: Output<Boolean>? = null

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 tags: Output<Map<String, String>>? = null

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.

Functions

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