[ aws . servicecatalog ]

provision-product

Description

Provisions the specified 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. You can check the status of this request using DescribeRecord .

If the request contains a tag key with an empty list of values, there is a tag conflict for that key. Do not include conflicted keys as tags, or this causes the error “Parameter validation failed: Missing required parameter in Tags[N ]:Value “.

See also: AWS API Documentation

See ‘aws help’ for descriptions of global parameters.

Synopsis

  provision-product
[--accept-language <value>]
--product-id <value>
--provisioning-artifact-id <value>
[--path-id <value>]
--provisioned-product-name <value>
[--provisioning-parameters <value>]
[--provisioning-preferences <value>]
[--tags <value>]
[--notification-arns <value>]
[--provision-token <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--cli-auto-prompt <value>]

Options

--accept-language (string)

The language code.

  • en - English (default)

  • jp - Japanese

  • zh - Chinese

--product-id (string)

The product identifier.

--provisioning-artifact-id (string)

The identifier of the provisioning artifact.

--path-id (string)

The 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 ListLaunchPaths .

--provisioned-product-name (string)

A user-friendly name for the provisioned product. This value must be unique for the AWS account and cannot be updated after the product is provisioned.

--provisioning-parameters (list)

Parameters specified by the administrator that are required for provisioning the product.

(structure)

Information about a parameter used to provision a product.

Key -> (string)

The parameter key.

Value -> (string)

The parameter value.

Shorthand Syntax:

Key=string,Value=string ...

JSON Syntax:

[
  {
    "Key": "string",
    "Value": "string"
  }
  ...
]

--provisioning-preferences (structure)

An object that contains information about the provisioning preferences for a stack set.

StackSetAccounts -> (list)

One or more AWS accounts that will have access to the provisioned product.

Applicable only to a CFN_STACKSET provisioned product type.

The AWS accounts specified should be within the list of accounts in the STACKSET constraint. To get the list of accounts in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all accounts from the STACKSET constraint.

(string)

StackSetRegions -> (list)

One or more AWS Regions where the provisioned product will be available.

Applicable only to a CFN_STACKSET provisioned product type.

The specified regions should be within the list of regions from the STACKSET constraint. To get the list of regions in the STACKSET constraint, use the DescribeProvisioningParameters operation.

If no values are specified, the default value is all regions from the STACKSET constraint.

(string)

StackSetFailureToleranceCount -> (integer)

The number of accounts, per region, for which this operation can fail before AWS Service Catalog stops the operation in that region. If the operation is stopped in a region, AWS Service Catalog doesn’t attempt the operation in any subsequent regions.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage , but not both.

The default value is 0 if no value is specified.

StackSetFailureTolerancePercentage -> (integer)

The percentage of accounts, per region, for which this stack operation can fail before AWS Service Catalog stops the operation in that region. If the operation is stopped in a region, AWS Service Catalog doesn’t attempt the operation in any subsequent regions.

When calculating the number of accounts based on the specified percentage, AWS Service Catalog rounds down to the next whole number.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetFailureToleranceCount or StackSetFailureTolerancePercentage , but not both.

StackSetMaxConcurrencyCount -> (integer)

The maximum number of accounts in which to perform this operation at one time. This is dependent on the value of StackSetFailureToleranceCount . StackSetMaxConcurrentCount is at most one more than the StackSetFailureToleranceCount .

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetMaxConcurrentCount or StackSetMaxConcurrentPercentage , but not both.

StackSetMaxConcurrencyPercentage -> (integer)

The maximum percentage of accounts in which to perform this operation at one time.

When calculating the number of accounts based on the specified percentage, AWS Service Catalog rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, AWS Service Catalog sets the number as 1 instead.

Note that this setting lets you specify the maximum for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling.

Applicable only to a CFN_STACKSET provisioned product type.

Conditional: You must specify either StackSetMaxConcurrentCount or StackSetMaxConcurrentPercentage , but not both.

Shorthand Syntax:

StackSetAccounts=string,string,StackSetRegions=string,string,StackSetFailureToleranceCount=integer,StackSetFailureTolerancePercentage=integer,StackSetMaxConcurrencyCount=integer,StackSetMaxConcurrencyPercentage=integer

JSON Syntax:

{
  "StackSetAccounts": ["string", ...],
  "StackSetRegions": ["string", ...],
  "StackSetFailureToleranceCount": integer,
  "StackSetFailureTolerancePercentage": integer,
  "StackSetMaxConcurrencyCount": integer,
  "StackSetMaxConcurrencyPercentage": integer
}

--tags (list)

One or more tags.

(structure)

Information about a tag. A tag is a key-value pair. Tags are propagated to the resources created when provisioning a product.

Key -> (string)

The tag key.

Value -> (string)

The value for this key.

Shorthand Syntax:

Key=string,Value=string ...

JSON Syntax:

[
  {
    "Key": "string",
    "Value": "string"
  }
  ...
]

--notification-arns (list)

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

(string)

Syntax:

"string" "string" ...

--provision-token (string)

An idempotency token that uniquely identifies the provisioning request.

--cli-input-json | --cli-input-yaml (string) Reads arguments from the JSON string provided. The JSON string follows the format provided by --generate-cli-skeleton. If other arguments are provided on the command line, those values will override the JSON-provided values. It is not possible to pass arbitrary binary values using a JSON-provided value as the string will be taken literally. This may not be specified along with --cli-input-yaml.

--generate-cli-skeleton (string) Prints a JSON skeleton to standard output without sending an API request. If provided with no value or the value input, prints a sample input JSON that can be used as an argument for --cli-input-json. Similarly, if provided yaml-input it will print a sample input YAML that can be used with --cli-input-yaml. If provided with the value output, it validates the command inputs and returns a sample output JSON for that command.

--cli-auto-prompt (boolean) Automatically prompt for CLI input parameters.

See ‘aws help’ for descriptions of global parameters.

Examples

To provision a product

The following provision-product example provisions the specified product using the specified provisioning artifact.

aws servicecatalog provision-product \
    --product-id prod-abcdfz3syn2rg \
    --provisioning-artifact-id pa-abc347pcsccfm \
    --provisioned-product-name "mytestppname3"

Output:

{
    "RecordDetail": {
        "RecordId": "rec-tfuawdabcdege",
        "CreatedTime": 1577222793.362,
        "ProvisionedProductId": "pp-abcd27bm4mldq",
        "PathId": "lpv2-abcdg3jp6t5k6",
        "RecordErrors": [],
        "ProductId": "prod-abcdfz3syn2rg",
        "UpdatedTime": 1577222793.362,
        "RecordType": "PROVISION_PRODUCT",
        "ProvisionedProductName": "mytestppname3",
        "ProvisioningArtifactId": "pa-pcz347abcdcfm",
        "RecordTags": [],
        "Status": "CREATED",
        "ProvisionedProductType": "CFN_STACK"
    }
}

Output

RecordDetail -> (structure)

Information about the result of provisioning the product.

RecordId -> (string)

The identifier of the record.

ProvisionedProductName -> (string)

The user-friendly name of the provisioned product.

Status -> (string)

The status of the provisioned product.

  • CREATED - The request was created but the operation has not started.

  • IN_PROGRESS - The requested operation is in progress.

  • IN_PROGRESS_IN_ERROR - The provisioned product is under change but the requested operation failed and some remediation is occurring. For example, a rollback.

  • SUCCEEDED - The requested operation has successfully completed.

  • FAILED - The requested operation has unsuccessfully completed. Investigate using the error messages returned.

CreatedTime -> (timestamp)

The UTC time stamp of the creation time.

UpdatedTime -> (timestamp)

The time when the record was last updated.

ProvisionedProductType -> (string)

The type of provisioned product. The supported values are CFN_STACK and CFN_STACKSET .

RecordType -> (string)

The record type.

  • PROVISION_PRODUCT

  • UPDATE_PROVISIONED_PRODUCT

  • TERMINATE_PROVISIONED_PRODUCT

ProvisionedProductId -> (string)

The identifier of the provisioned product.

ProductId -> (string)

The product identifier.

ProvisioningArtifactId -> (string)

The identifier of the provisioning artifact.

PathId -> (string)

The path identifier.

RecordErrors -> (list)

The errors that occurred.

(structure)

The error code and description resulting from an operation.

Code -> (string)

The numeric value of the error.

Description -> (string)

The description of the error.

RecordTags -> (list)

One or more tags.

(structure)

Information about a tag, which is a key-value pair.

Key -> (string)

The key for this tag.

Value -> (string)

The value for this tag.