

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

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

Elastic Beanstalk 是 中的平台 AWS ，用於部署和擴展 Web 應用程式。您可以使用 Elastic Beanstalk 動作，將應用程式程式碼部署到您的部署環境。

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

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

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

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

**EnvironmentName**  
必要：是  
您在 Elastic Beanstalk 中建立的環境名稱。環境是執行應用程式版本的 AWS 資源集合。每個環境一次只會執行一個應用程式版本，然而，您可以同時在許多環境中執行相同應用程式版本或不同應用程式版本。

## Input artifacts (輸入成品)
<a name="action-reference-Beanstalk-input"></a>
+ **成品數量：** `1`
+ **描述：**動作的輸入成品。

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

## 服務角色許可：`ElasticBeanstalk`部署動作
<a name="edit-role-beanstalk"></a>

對於 Elastic Beanstalk，下列是使用`ElasticBeanstalk`部署動作建立管道所需的最低許可。

```
{
    "Effect": "Allow",
    "Action": [
        "elasticbeanstalk:*",
        "ec2:*",
        "elasticloadbalancing:*",
        "autoscaling:*",
        "cloudwatch:*",
        "s3:*",
        "sns:*",
        "cloudformation:*",
        "rds:*",
        "sqs:*",
        "ecs:*"
    ],
    "Resource": "{{resource_ARN}}"
},
```

**注意**  
您應該將資源政策中的萬用字元取代為您想要限制存取之帳戶的資源。如需建立授予最低權限存取權的政策的詳細資訊，請參閱 [https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege](https://docs.aws.amazon.com/IAM/latest/UserGuide/best-practices.html#grant-least-privilege)。

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

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

```
Name: Deploy
Actions:
  - Name: Deploy
    ActionTypeId:
      Category: Deploy
      Owner: AWS
      Provider: ElasticBeanstalk
      Version: '1'
    RunOrder: 1
    Configuration:
      ApplicationName: {{my-application}}
      EnvironmentName: {{my-environment}}
    OutputArtifacts: []
    InputArtifacts:
      - Name: SourceArtifact
    Region: us-west-2
    Namespace: DeployVariables
```

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

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

------

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

以下相關資源可協助您使用此動作。
+ [將 Flask 應用程式部署到 Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create-deploy-python-flask.html) – 本教學課程將逐步引導您使用範例 Flask 應用程式在 Elastic Beanstalk 中建立應用程式和環境資源。然後，您可以使用 Elastic Beanstalk 部署動作建置管道，將應用程式從來源儲存庫部署到 Elastic Beanstalk 環境。