

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

# 範例 1：使用 建立 AWS CodeCommit 管道 AWS CloudFormation
<a name="tutorials-cloudformation-codecommit"></a>

此逐步解說說明如何使用 AWS CloudFormation 主控台建立基礎設施，其中包含連線至 CodeCommit 來源儲存庫的管道。在本教學課程中，您會使用提供的範例範本檔案來建立資源堆疊，其中包含成品存放區、管道和變更偵測資源，例如 Amazon CloudWatch Events 規則。在 中建立資源堆疊之後 AWS CloudFormation，您可以在 AWS CodePipeline 主控台中檢視管道。管道是具有 CodeCommit 來源階段和 CodeDeploy 部署階段的兩階段管道。

**先決條件：**

您必須已建立下列資源，才能與 AWS CloudFormation 範例範本搭配使用：
+ 您必須先建立來源儲存庫。您可以使用您在 中建立的 AWS CodeCommit 儲存庫[教學課程：建立簡單的管道 (CodeCommit 儲存庫）](tutorials-simple-codecommit.md)。
+ 您必須已建立 CodeDeploy 應用程式和部署群組。您可以使用您在 中建立的 CodeDeploy 資源[教學課程：建立簡單的管道 (CodeCommit 儲存庫）](tutorials-simple-codecommit.md)。
+ 選擇下列其中一個連結，下載用於建立管道的範例 AWS CloudFormation 範本檔案：[YAML](samples/codepipeline-codecommit-events-yaml.zip) \$1 [JSON](samples/codepipeline-codecommit-events-json.zip)

  解壓縮檔案並將它放在您的本機電腦。
+ 下載 [SampleApp\$1Linux.zip](samples/SampleApp_Linux.zip) 範例應用程式檔案。



**在 中建立管道 AWS CloudFormation**

1. 從 [SampleApp\$1Linux.zip](samples/SampleApp_Linux.zip) 解壓縮檔案，並將檔案上傳至您的 AWS CodeCommit 儲存庫。您必須將解壓縮的檔案上傳到您儲存庫的根目錄。您可以依照 [步驟 2：將範本程式碼新增至 CodeCommit 儲存庫](tutorials-simple-codecommit.md#codecommit-add-code) 中的指示，將檔案推送到您的儲存庫。

1. 開啟 AWS CloudFormation 主控台，然後選擇**建立堆疊**。選擇 **With new resources (standard)** (使用新資源 (標準))。

1. 在**指定範本**下，選擇**上傳範本**。選取**選擇檔案**，然後從本機電腦選擇範本檔案。選擇**下一步**。

1. 在 **Stack name (堆疊名稱)** 中，輸入管道的名稱。即會顯示範例範本指定的參數。輸入下列參數：

   1. 在 **ApplicationName** 中，輸入 CodeDeploy 應用程式的名稱。

   1. 在 **BetaFleet** 中，輸入 CodeDeploy 部署群組的名稱。

   1. 在 **BranchName** 中，輸入您想要使用的儲存庫分支。

   1. 在 **RepositoryName** 中，輸入 CodeCommit 來源儲存庫的名稱。

1. 選擇**下一步**。接受以下頁面上的預設值，然後選擇 **Next (下一步)**。

1. 在**功能**中，選取**我確認 AWS CloudFormation 可能會建立 IAM 資源**，然後選擇**建立堆疊**。

1. 在完成您的堆疊建立之後，請檢視事件清單以檢查是否有任何錯誤。

   **疑難排解**

   在 中建立管道的 IAM 使用者 AWS CloudFormation 可能需要額外的許可，才能為管道建立資源。政策需要下列許可 AWS CloudFormation ，以允許 為 CodeCommit 管道建立所需的 Amazon CloudWatch Events 資源：

   ```
   {
        "Effect": "Allow",
        "Action": [
           "events:PutRule",
           "events:PutEvents",
           "events:PutTargets",
           "events:DeleteRule",
           "events:RemoveTargets",
           "events:DescribeRule"
        ],
        "Resource": "resource_ARN"
   }
   ```

1. 登入 AWS 管理主控台 並開啟 CodePipeline 主控台，網址為 https：//[https://console.aws.amazon.com/codepipeline/](https://console.aws.amazon.com/codepipeline/)。

   在 **Pipelines (管道)** 下，選擇您的管道，然後選擇 **View (檢視)**。本圖顯示您的管道來源和部署階段。
**注意**  
若要檢視已建立的管道，請在堆疊**的資源**索引標籤下尋找**邏輯 ID** 欄 CloudFormation。在管道的**實體 ID** 欄中記下名稱。在 CodePipeline 中，您可以在建立堆疊的區域中檢視具有相同實體 ID （管道名稱） 的管道。

1. 在來源儲存庫中遞交並推送變更。您的變更偵測資源會套用該變更，然後您的管道便會啟動。