

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# AWS Service Catalog 部署操作参考
<a name="action-reference-ServiceCatalog"></a>

您可以使用 AWS Service Catalog 操作通过管道部署模板。这些是您在 Service Catalog 中创建的资源模板。

## 操作类型
<a name="action-reference-ServiceCatalog-type"></a>
+ 类别：`Deploy`
+ 拥有者：`AWS`
+ 提供方：`ServiceCatalog`
+ 版本：`1`

## 配置参数
<a name="action-reference-ServiceCatalog-config"></a>

**TemplateFilePath**  
是否必需：是  
您的资源模板在源位置中的文件路径。

**ProductVersionName**  
是否必需：是  
Service Catalog 中的产品版本。

**ProductType**  
是否必需：是  
Service Catalog 中的产品类型。

**ProductId**  
是否必需：是  
Service Catalog 中的产品 ID。

**ProductVersionDescription**  
必需：否  
Service Catalog 中的产品版本描述。

## 输入构件
<a name="action-reference-ServiceCatalog-input"></a>
+ **构件数：**`1`
+ **描述：**这是您操作的输入构件。

## 输出构件
<a name="action-reference-ServiceCatalog-output"></a>
+ **构件数：**`0`
+ **描述：**输出构件不适用于此操作类型。

## 服务角色权限：Service Catalog 操作
<a name="edit-role-servicecatalog"></a>

对于 Service Catalog 支持，请将以下内容添加到策略语句中：

```
{
    "Effect": "Allow",
    "Action": [
        "servicecatalog:ListProvisioningArtifacts",
        "servicecatalog:CreateProvisioningArtifact",
        "servicecatalog:DescribeProvisioningArtifact",
        "servicecatalog:DeleteProvisioningArtifact",
        "servicecatalog:UpdateProduct"
    ],
    "Resource": "resource_ARN"
},
{
    "Effect": "Allow",
    "Action": [
        "cloudformation:ValidateTemplate"
    ],
    "Resource": "resource_ARN"
}
```

## 按配置文件类型划分的操作配置示例
<a name="action-reference-ServiceCatalog-example"></a>

以下示例为使用 Service Catalog 的部署操作显示了一个有效的配置，用于在控制台中创建的管道（没有单独的配置文件）：

```
"configuration": {
  "TemplateFilePath": "S3_template.json",
  "ProductVersionName": "devops S3 v2",
  "ProductType": "CLOUD_FORMATION_TEMPLATE",
  "ProductVersionDescription": "Product version description",
  "ProductId": "prod-example123456"
}
```

以下示例为使用 Service Catalog 的部署操作显示了一个有效的配置，用于在控制台中创建的管道（有单独的 `sample_config.json` 配置文件）：

```
"configuration": {
  "ConfigurationFilePath": "sample_config.json",
  "ProductId": "prod-example123456"
}
```

### 操作配置示例
<a name="action-reference-ServiceCatalog-example-default"></a>

------
#### [ YAML ]

```
Name: ActionName
ActionTypeId:
  Category: Deploy
  Owner: AWS
  Version: 1
  Provider: ServiceCatalog
OutputArtifacts:
- Name: myOutputArtifact
Configuration:
  TemplateFilePath: S3_template.json
  ProductVersionName: devops S3 v2
  ProductType: CLOUD_FORMATION_TEMPLATE
  ProductVersionDescription: Product version description
  ProductId: prod-example123456
```

------
#### [ JSON ]

```
{
    "Name": "ActionName",
    "ActionTypeId": {
        "Category": "Deploy",
        "Owner": "AWS",
        "Version": 1,
        "Provider": "ServiceCatalog"
    },
    "OutputArtifacts": [
        {
            "Name": "myOutputArtifact"
        }
    ],
    "Configuration": {
        "TemplateFilePath": "S3_template.json",
        "ProductVersionName": "devops S3 v2",
        "ProductType": "CLOUD_FORMATION_TEMPLATE",
        "ProductVersionDescription": "Product version description",
        "ProductId": "prod-example123456"
    }
}
```

------

## 另请参阅
<a name="action-reference-ServiceCatalog-links"></a>

下列相关资源在您使用此操作的过程中会有所帮助。
+ [Service Catalog 用户指南](https://docs.aws.amazon.com/servicecatalog/latest/userguide/) - 有关 Service Catalog 中的资源和模板的信息，请参阅《Service Catalog 用户指南》**。
+ [教程：创建部署到 Service Catalog 的管道](tutorials-S3-servicecatalog.md)：此教程介绍如何创建和配置一个管道将您的产品模板部署到 Service Catalog，并交付您已在源存储库中所做的更改。