Provisioning Artifact
Manages a Service Catalog Provisioning Artifact for a specified product.
A "provisioning artifact" is also referred to as a "version." NOTE: You cannot create a provisioning artifact for a product that was shared with you. NOTE: The user or role that use this resource must have the
cloudformation:GetTemplateIAM policy permission. This policy permission is required when using thetemplate_physical_idargument.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const example = new aws.servicecatalog.ProvisioningArtifact("example", {
name: "example",
productId: exampleAwsServicecatalogProduct.id,
type: "CLOUD_FORMATION_TEMPLATE",
templateUrl: `https://${exampleAwsS3Bucket.bucketRegionalDomainName}/${exampleAwsS3Object.key}`,
});import pulumi
import pulumi_aws as aws
example = aws.servicecatalog.ProvisioningArtifact("example",
name="example",
product_id=example_aws_servicecatalog_product["id"],
type="CLOUD_FORMATION_TEMPLATE",
template_url=f"https://{example_aws_s3_bucket['bucketRegionalDomainName']}/{example_aws_s3_object['key']}")using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var example = new Aws.ServiceCatalog.ProvisioningArtifact("example", new()
{
Name = "example",
ProductId = exampleAwsServicecatalogProduct.Id,
Type = "CLOUD_FORMATION_TEMPLATE",
TemplateUrl = $"https://{exampleAwsS3Bucket.BucketRegionalDomainName}/{exampleAwsS3Object.Key}",
});
});package main
import (
"fmt"
"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.NewProvisioningArtifact(ctx, "example", &servicecatalog.ProvisioningArtifactArgs{
Name: pulumi.String("example"),
ProductId: pulumi.Any(exampleAwsServicecatalogProduct.Id),
Type: pulumi.String("CLOUD_FORMATION_TEMPLATE"),
TemplateUrl: pulumi.String(fmt.Sprintf("https://%v/%v", exampleAwsS3Bucket.BucketRegionalDomainName, exampleAwsS3Object.Key)),
})
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.ProvisioningArtifact;
import com.pulumi.aws.servicecatalog.ProvisioningArtifactArgs;
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 ProvisioningArtifact("example", ProvisioningArtifactArgs.builder()
.name("example")
.productId(exampleAwsServicecatalogProduct.id())
.type("CLOUD_FORMATION_TEMPLATE")
.templateUrl(String.format("https://%s/%s", exampleAwsS3Bucket.bucketRegionalDomainName(),exampleAwsS3Object.key()))
.build());
}
}resources:
example:
type: aws:servicecatalog:ProvisioningArtifact
properties:
name: example
productId: ${exampleAwsServicecatalogProduct.id}
type: CLOUD_FORMATION_TEMPLATE
templateUrl: https://${exampleAwsS3Bucket.bucketRegionalDomainName}/${exampleAwsS3Object.key}Import
Using pulumi import, import aws_servicecatalog_provisioning_artifact using the provisioning artifact ID and product ID separated by a colon. For example:
$ pulumi import aws:servicecatalog/provisioningArtifact:ProvisioningArtifact example pa-ij2b6lusy6dec:prod-el3an0rma3Properties
Information set by the administrator to provide guidance to end users about which provisioning artifacts to use. Valid values are DEFAULT and DEPRECATED. The default is DEFAULT. Users are able to make updates to a provisioned product of a deprecated version but cannot launch new provisioned products using a deprecated version.