AWS Service Catalog Product
This page shows how to write Terraform and CloudFormation for AWS Service Catalog Product and write them securely.
aws_servicecatalog_product (Terraform)
The Product in AWS Service Catalog can be configured in Terraform with the resource name aws_servicecatalog_product
. The following sections describe 1 example of how to use the resource and its parameters.
Example Usage from GitHub
resource "aws_servicecatalog_product" "example" {
name = "example"
owner = "Dev"
type = "CLOUD_FORMATION_TEMPLATE"
provisioning_artifact_parameters {
Parameters
The following arguments are required:
name
- (Required) Name of the product.owner
- (Required) Owner of the product.provisioning_artifact_parameters
- (Required) Configuration block for provisioning artifact (i.e., version) parameters. Detailed below.type
- (Required) Type of product. Valid values areCLOUD_FORMATION_TEMPLATE
,MARKETPLACE
.
The following arguments are optional:
accept_language
- (Optional) Language code. Valid values:en
(English),jp
(Japanese),zh
(Chinese). Default value isen
.description
- (Optional) Description of the product.distributor
- (Optional) Distributor (i.e., vendor) of the product.support_description
- (Optional) Support information about the product.support_email
- (Optional) Contact email for product support.support_url
- (Optional) Contact URL for product support.tags
- (Optional) Tags to apply to the product. If configured with a providerdefault_tags
configuration block present, tags with matching keys will overwrite those defined at the provider-level.
provisioning_artifact_parameters
The following arguments are supported:
description
- (Optional) Description of the provisioning artifact (i.e., version), including how it differs from the previous provisioning artifact.disable_template_validation
- (Optional) Whether AWS Service Catalog stops validating the specified provisioning artifact template even if it is invalid.name
- (Optional) Name of the provisioning artifact (for example,v1
,v2beta
). No spaces are allowed.template_physical_id
- (Required iftemplate_url
is not provided) Template source as the physical ID of the resource that contains the template. Currently only supports CloudFormation stack ARN. Specify the physical ID asarn:[partition]:cloudformation:[region]:[account ID]:stack/[stack name]/[resource ID]
.template_url
- (Required iftemplate_physical_id
is not provided) Template source as URL of the CloudFormation template in Amazon S3.type
- (Optional) Type of provisioning artifact. Valid values:CLOUD_FORMATION_TEMPLATE
,MARKETPLACE_AMI
,MARKETPLACE_CAR
(Marketplace Clusters and AWS Resources).
In addition to all arguments above, the following attributes are exported:
arn
- ARN of the product.created_time
- Time when the product was created.has_default_path
- Whether the product has a default path. If the product does not have a default path, callListLaunchPaths
to disambiguate between paths. Otherwise,ListLaunchPaths
is not required, and the output of ProductViewSummary can be used directly withDescribeProvisioningParameters
.id
- Product ID. For example,prod-dnigbtea24ste
.status
- Status of the product.tags_all
- A map of tags assigned to the resource, including those inherited from the providerdefault_tags
configuration block.
Explanation in Terraform Registry
Manages a Service Catalog Product.
NOTE: The user or role that uses this resources must have the
cloudformation:GetTemplate
IAM policy permission. This policy permission is required when using thetemplate_physical_id
argument. -> A "provisioning artifact" is also referred to as a "version." A "distributor" is also referred to as a "vendor."
AWS::ServiceCatalog::CloudFormationProduct (CloudFormation)
The CloudFormationProduct in ServiceCatalog can be configured in CloudFormation with the resource name AWS::ServiceCatalog::CloudFormationProduct
. The following sections describe how to use the resource and its parameters.
Example Usage from GitHub
An example could not be found in GitHub.
Parameters
-
ReplaceProvisioningArtifacts
optional - Boolean -
Owner
required - String -
SupportDescription
optional - String -
Description
optional - String -
Distributor
optional - String -
SupportEmail
optional - String -
AcceptLanguage
optional - String -
SupportUrl
optional - String -
Tags
optional - List of Tag -
Name
required - String -
ProvisioningArtifactParameters
required - List of ProvisioningArtifactProperties
Explanation in CloudFormation Registry
Specifies a product.
Frequently asked questions
What is AWS Service Catalog Product?
AWS Service Catalog Product is a resource for Service Catalog of Amazon Web Service. Settings can be wrote in Terraform and CloudFormation.
Where can I find the example code for the AWS Service Catalog Product?
For Terraform, the seanremenyi/service_catalog source code example is useful. See the Terraform Example section for further details.