

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

# 开始使用连接
<a name="getting-started-connections"></a>

开始使用连接的最简单方法是建立连接，将您的第三方源存储库与您的 AWS 资源关联起来。如果要将管道连接到 AWS 源（例如） CodeCommit，则可以将其作为源操作进行连接。但是，如果您有外部存储库，则必须创建连接以将存储库与管道相关联。在本教程中，您将设置与 Bitbucket 存储库和管道的连接。

在本部分中，您将使用以下连接：
+ AWS CodePipeline：在这些步骤中，您可以使用 Bitbucket 存储库创建管道作为管道源。
+ [Amazon CodeGuru Reviewer](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/welcome.html)：接下来，您将您的 Bitbucket 存储库与 Reviewer 中的 CodeGuru 反馈和分析工具相关联。

**Topics**
+ [先决条件](#getting-started-connections-prerequisites)
+ [步骤 1：编辑源文件](#getting-started-connections-edit)
+ [步骤 2：创建管道](#getting-started-connections-pipeline)
+ [步骤 3：将您的仓库与 CodeGuru Reviewer 关联](#getting-started-connections-analysis)

## 先决条件
<a name="getting-started-connections-prerequisites"></a>

在开始之前，请完成 [设置](setting-up.md) 中的步骤。您还需要一个第三方源存储库来连接到您的 AWS 服务并允许该连接为您管理身份验证。例如，您可能想将 Bitbucket 存储库连接到与源存储库集成的 AWS 服务。
+ 使用您的 Bitbucket 账户创建一个 Bitbucket 存储库。
+ 准备好您的 Bitbucket 凭证。当您使用建立连接时 AWS 管理控制台 ，系统会要求您使用您的 Bitbucket 凭据登录。

## 步骤 1：编辑源文件
<a name="getting-started-connections-edit"></a>

当您创建您的 Bitbucket 存储库时，包含默认的 `README.md` 文件，您要对其进行编辑。

1. 登录到您的 Bitbucket 存储库，然后选择 **Source (源)**。

1. 选择 `README.md` 文件，然后选择页面顶部的 **Edit (编辑)**。删除现有文本并添加以下文本。

   ```
   This is a Bitbucket repository!
   ```

1. 选择**提交**。

   确保 `README.md` 文件位于存储库的根级别。

## 步骤 2：创建管道
<a name="getting-started-connections-pipeline"></a>

在此部分中，您将使用以下操作创建管道：
+ 与您的 Bitbucket 存储库和操作连接的源阶段。
+ 带有生成操作的 AWS CodeBuild 生成阶段。

**使用向导创建管道**

1. 登录 CodePipeline 控制台，网址为[https://console.aws.amazon.com/codepipeline/](https://console.aws.amazon.com/codepipeline/)。

1. 在**欢迎**页面、**入门**页面或**管道**页面上，选择**创建管道**。

1. 在**步骤 1：选择管道设置**的**管道名称**中，输入 **MyBitbucketPipeline**。

1. 在**服务角色**中，选择**新建服务角色**。
**注意**  
如果您选择使用现有的 CodePipeline 服务角色，请确保已`codeconnections:UseConnection`将 IAM 权限添加到您的服务角色策略中。有关 CodePipeline 服务角色的说明，请参阅[为 CodePipeline 服务角色添加权限](https://docs.aws.amazon.com/codepipeline/latest/userguide/security-iam.html#how-to-update-role-new-services)。

1. 在**高级设置**下，保留原定设置值。在**构件存储**中，选择**默认位置**以将默认构件存储（如指定为默认值的 Amazon S3 项目存储桶）用于为管道选择的区域中的管道。
**注意**  
这不是源代码的源存储桶。这是管道的项目存储。每个管道都需要一个单独的构件存储，例如 S3 存储桶。

   选择**下一步**。

1. 在 **Step 2: Add source stage (步骤 2：添加源阶段)** 页面上，添加源阶段：

   1. 对于 **Source provider (源提供商)**，选择 **Bitbucket**。

   1. 在 **Connection (连接)** 下，选择 **Connect to Bitbucket (连接到 Bitbucket)**。

   1. 在 **Connect to Bitbucket (连接到 Bitbucket)** 页面上的 **Connection name (连接名称)** 中，输入要创建的连接的名称。该名称可帮助您稍后识别此连接。

      在 **Bitbucket apps (Bitbucket 应用程序)** 下，选择**Install a new app (安装新应用程序)**。

   1. 在应用程序安装页面上，一条消息显示该 AWS CodeStar 应用程序正在尝试连接到您的 Bitbucket 帐户。选择**授予访问权限**。授权连接后，系统会检测到 Bitbucket 上的存储库，您可以选择将其中一个存储库与您的 AWS 资源相关联。

   1. 将显示新安装的连接 ID。选择**完成连接**。您将返回到 CodePipeline控制台。

   1. 在 **Repository name (存储库名称)** 中，选择 Bitbucket 存储库的名称。

   1. 在 **Branch name (分支名称)** 中，选择存储库的分支。

   1. 确保选择了**在源代码更改时启动管道**选项。

   1. 在 “**输出对象格式**” 下，选择以下选项之一：**CodePipeline 默认**。
      + 选择 “**CodePipeline 默认**” 以对管道中的工件使用默认 zip 格式。
      + 选择**完全克隆**，以包含有关管道中构件的存储库的 Git 元数据。只有 CodeBuild操作才支持此功能。

   选择**下一步**。

1. 在**添加构建阶段**，添加一个构建阶段：

   1. 在**构建提供程序**中，选择 **AWS CodeBuild**。允许**区域**默认为管道区域。

   1. 选择**创建项目**。

   1. 在**项目名称**中，输入此构建项目的名称。

   1. 在**环境映像**中，选择**托管映像**。对于**操作系统**，选择 **Ubuntu**。

   1. 对于**运行时**，选择**标准**。**对于 “**图像**”，选择:5.0 aws/codebuild/standard。**

   1. 对于**服务角色**，选择**新建服务角色**。

   1. 在 **Buildspec (构建规范)** 下，为 **Build specifications (构建规范)** 选择 **Insert build commands (插入构建命令)**。选择 **Switch to editor (切换到编辑器)**，然后将以下内容粘贴到 **Build commands (生成命令)**：

      ```
      version: 0.2
      
      phases:
        install:
          #If you use the Ubuntu standard image 2.0 or later, you must specify runtime-versions.
          #If you specify runtime-versions and use an image other than Ubuntu standard image 2.0, the build fails.
          runtime-versions:
            nodejs: 12
            # name: version
          #commands:
            # - command
            # - command
        pre_build:
          commands:
            - ls -lt
            - cat README.md
        # build:
          #commands:
            # - command
            # - command
        #post_build:
          #commands:
            # - command
            # - command
      #artifacts:
        #files:
          # - location
          # - location
        #name: $(date +%Y-%m-%d)
        #discard-paths: yes
        #base-directory: location
      #cache:
        #paths:
          # - paths
      ```

   1. 选择 “**继续” CodePipeline**。这将返回到 CodePipeline控制台并创建一个使用您的构建命令进行配置的 CodeBuild 项目。构建项目使用服务角色来管理 AWS 服务权限。此步骤可能需要几分钟时间。

   1. 选择**下一步**。

1. 在**步骤 4：添加部署阶段**页面上，选择**跳过部署阶段**，并通过再次选择**跳过**接受警告消息。选择**下一步**。

1. 在**步骤 5：审核**中，选择**创建管道**。

1. 成功创建管道后，将开始管道执行。  
![显示已使用 Bitbucket 源成功完成管道的控制台屏幕截图。](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/pipeline-wizard-bitbucket.png)

1. 在成功构建阶段，选择 **Details (详细信息)**。

   在 “**执行详情**” 下，查看 CodeBuild 生成输出。这些命令将输出 `README.md` 文件内容，如下所示：

   ```
   This is a Bitbucket repository!
   ```  
![显示已成功完成构建输出示例的控制台屏幕截图。](http://docs.aws.amazon.com/zh_cn/dtconsole/latest/userguide/images/pipeline-wizard-bitbucket-output.png)

## 步骤 3：将您的仓库与 CodeGuru Reviewer 关联
<a name="getting-started-connections-analysis"></a>

创建连接后，您可以将该连接用于同一账户中的所有 AWS 资源。例如，您可以将相同的 Bitbucket 连接用于管道中的 CodePipeline 源操作和 CodeGuru Reviewer 中的仓库提交分析。

1. 登录 CodeGuru 审阅者控制台。

1. 在 **CodeGuru Reviewer** 下，选择**关联存储库**。

   此时将打开一页式向导。

1. 在 **Select source provider (选择源提供程序)** 下，选择 **Bitbucket**。

1. 在 “**Connect to Bitbucket（使用 AWS CodeConnections）**” 下，选择您为管道创建的连接。

1. 在 **Repository location (存储库位置)** 下，选择 Bitbucket 存储库的名称，然后选择 **Associate (关联)**。

   您可以继续设置代码审阅。有关更多信息，请参阅 A *mazon Reviewer 用户指南中的连接到 Bitbucket 以将存储库与 CodeGuru Re CodeGuru viewer* [关联起来](https://docs.aws.amazon.com/codeguru/latest/reviewer-ug/create-bitbucket-association.html)。