

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AWS CodeDeploy 部署動作參考
<a name="action-reference-CodeDeploy"></a>

您可以使用 AWS CodeDeploy 動作將應用程式程式碼部署到您的部署機群。您的部署機群可以包含 Amazon EC2 執行個體、內部部署執行個體或兩者。

**注意**  
此參考主題說明部署平台為 Amazon EC2 之 CodePipeline 的 CodeDeploy 部署動作。 CodePipeline 如需 CodePipeline 中 Amazon Elastic Container Service to CodeDeploy 藍/綠部署動作的參考資訊，請參閱 [Amazon Elastic Container Service 和 CodeDeploy 藍綠部署動作參考](action-reference-ECSbluegreen.md)。

**Topics**
+ [動作類型](#action-reference-CodeDeploy-type)
+ [組態參數](#action-reference-CodeDeploy-config)
+ [Input artifacts (輸入成品)](#action-reference-CodeDeploy-input)
+ [輸出成品](#action-reference-CodeDeploy-output)
+ [服務角色許可： AWS CodeDeploy 動作](#edit-role-codedeploy)
+ [動作宣告](#action-reference-CodeDeploy-example)
+ [另請參閱](#action-reference-CodeDeploy-links)

## 動作類型
<a name="action-reference-CodeDeploy-type"></a>
+ 類別：`Deploy`
+ 擁有者：`AWS`
+ 提供者：`CodeDeploy`
+ 版本：`1`

## 組態參數
<a name="action-reference-CodeDeploy-config"></a>

**ApplicationName**  
必要：是  
您在 CodeDeploy 中建立的應用程式名稱。

**DeploymentGroupName**  
必要：是  
您在 CodeDeploy 中建立的部署群組。

## Input artifacts (輸入成品)
<a name="action-reference-CodeDeploy-input"></a>
+ **成品數量：** `1`
+ **描述：**CodeDeploy 用來判斷下列項目的 AppSpec 檔案：
  + 在 Amazon S3 或 GitHub 中從應用程式修訂版安裝到執行個體的內容。
  + 為回應部署生命週期事件而執行的生命週期事件勾點。

  如需 AppSpec 檔案的詳細資訊，請參閱 [CodeDeploy AppSpec 檔案參考](https://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file.html)。

  

## 輸出成品
<a name="action-reference-CodeDeploy-output"></a>
+ **成品數量：** `0`
+ **描述：**輸出成品不適用於此動作類型。

## 服務角色許可： AWS CodeDeploy 動作
<a name="edit-role-codedeploy"></a>

如需 AWS CodeDeploy 支援，請將下列內容新增至您的政策陳述式：

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "codedeploy:CreateDeployment",
                "codedeploy:GetApplication",
                "codedeploy:GetDeployment",
                "codedeploy:RegisterApplicationRevision",
                "codedeploy:ListDeployments",
                "codedeploy:ListDeploymentGroups",
                "codedeploy:GetDeploymentGroup"
            ],
            "Resource": [
                "arn:aws:codedeploy:*:111122223333:application:[[codedeployApplications]]",
                "arn:aws:codedeploy:*:111122223333:deploymentgroup:[[codedeployApplications]]/*"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "codedeploy:GetDeploymentConfig"
            ],
            "Resource": [
                "arn:aws:codedeploy:*:111122223333:deploymentconfig:[[deploymentConfigs]]"
            ]
        },
        {
            "Effect": "Allow",
            "Action": [
                "codedeploy:ListDeploymentConfigs"
            ],
            "Resource": [
                "*"
            ]
        }
    ]
}
```

------

## 動作宣告
<a name="action-reference-CodeDeploy-example"></a>

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

```
Name: Deploy
Actions:
  - Name: Deploy
    ActionTypeId:
      Category: Deploy
      Owner: AWS
      Provider: CodeDeploy
      Version: '1'
    RunOrder: 1
    Configuration:
      ApplicationName: my-application
      DeploymentGroupName: my-deployment-group
    OutputArtifacts: []
    InputArtifacts:
      - Name: SourceArtifact
    Region: us-west-2
    Namespace: DeployVariables
```

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

```
{
    "Name": "Deploy",
    "Actions": [
        {
            "Name": "Deploy",
            "ActionTypeId": {
                "Category": "Deploy",
                "Owner": "AWS",
                "Provider": "CodeDeploy",
                "Version": "1"
            },
            "RunOrder": 1,
            "Configuration": {
                "ApplicationName": "my-application",
                "DeploymentGroupName": "my-deployment-group"
            },
            "OutputArtifacts": [],
            "InputArtifacts": [
                {
                    "Name": "SourceArtifact"
                }
            ],
            "Region": "us-west-2",
            "Namespace": "DeployVariables"
        }
    ]
},
```

------

## 另請參閱
<a name="action-reference-CodeDeploy-links"></a>

以下相關資源可協助您使用此動作。
+ [教學：建立簡易管道 (S3 儲存貯體)](tutorials-simple-s3.md) – 本教學課程會逐步引導您建立來源儲存貯體、EC2 執行個體和 CodeDeploy 資源，以部署範例應用程式。然後，您可以使用 CodeDeploy 部署動作建置管道，將 S3 儲存貯體中維護的程式碼部署至 Amazon EC2 執行個體。
+ [教學課程：建立簡單的管道 (CodeCommit 儲存庫）](tutorials-simple-codecommit.md) – 本教學課程會逐步引導您建立 CodeCommit 來源儲存庫、EC2 執行個體和 CodeDeploy 資源，以部署範例應用程式。然後，您可以使用 CodeDeploy 部署動作建置管道，將程式碼從 CodeCommit 儲存庫部署到 Amazon EC2 執行個體。
+ [CodeDeploy AppSpec 檔案參考](https://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file.html) – *AWS CodeDeploy 使用者指南*中的此參考章節提供 CodeDeploy AppSpec 檔案的參考資訊和範例。