

# 使用 AWS CLI 的 CodeConnections 示例
<a name="cli_codestar-connections_code_examples"></a>

以下代码示例演示如何通过将 AWS Command Line Interface与 CodeConnections 结合使用，来执行操作和实现常见场景。

*操作是大型程序的代码摘录*，必须在上下文中运行。您可以通过操作了解如何调用单个服务函数，还可以通过函数相关场景的上下文查看操作。

每个示例都包含一个指向完整源代码的链接，您可以从中找到有关如何在上下文中设置和运行代码的说明。

**Topics**
+ [操作](#actions)

## 操作
<a name="actions"></a>

### `create-connection`
<a name="codestar-connections_CreateConnection_cli_topic"></a>

以下代码示例演示了如何使用 `create-connection`。

**AWS CLI**  
**创建连接**  
以下 `create-connection` 示例演示如何创建与第三方存储库的连接。此示例创建第三方提供程序为 Bitbucket 的连接。  
默认情况下，通过 AWS CLI 或 AWS CloudFormation 创建的连接处于 Pending 状态。使用 CLI 或 AWS CloudFormation 创建一个连接后，可使用控制台编辑该连接以使其状态为 Available。  

```
aws codestar-connections create-connection \
    --provider-type Bitbucket \
    --connection-name MyConnection
```
输出：  

```
{
    "ConnectionArn": "arn:aws:codestar-connections:us-east-1:123456789012:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f"
}
```
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[创建连接](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-create.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [CreateConnection](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/create-connection.html)。

### `create-host`
<a name="codestar-connections_CreateHost_cli_topic"></a>

以下代码示例演示了如何使用 `create-host`。

**AWS CLI**  
**创建主机**  
以下 `create-host` 示例演示如何创建主机，来表示安装第三方提供程序的基础设施的端点。此示例创建了一台主机，其中安装的第三方提供程序是 GitHub Enterprise Server。  
默认情况下，通过 AWS CLI 创建的主机处于 Pending 状态。使用 CLI 创建主机后，可使用控制台或 CLI 设置主机以使其状态为 Available。  

```
aws codestar-connections create-host \
    --name MyHost \
    --provider-type GitHubEnterpriseServer \
    --provider-endpoint "https://my-instance.dev"
```
输出：  

```
{
    "HostArn": "arn:aws:codestar-connections:us-east-1:123456789012:host/My-Host-28aef605"
}
```
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[创建主机（CLI）](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-create.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [CreateHost](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/create-host.html)。

### `delete-connection`
<a name="codestar-connections_DeleteConnection_cli_topic"></a>

以下代码示例演示了如何使用 `delete-connection`。

**AWS CLI**  
**删除连接**  
以下 `delete-connection` 示例演示如何删除连接。  

```
aws codestar-connections delete-connection \
    --connection-arn arn:aws:codestar-connections:us-west-2:123456789012:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f
```
此命令不生成任何输出。  
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[删除连接（CLI）](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-delete.html#connections-delete-cli)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [DeleteConnection](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/delete-connection.html)。

### `delete-host`
<a name="codestar-connections_DeleteHost_cli_topic"></a>

以下代码示例演示了如何使用 `delete-host`。

**AWS CLI**  
**删除主机**  
下面的 `delete-host` 示例演示如何删除主机。必须先删除与主机关联的所有连接，然后才能删除主机。  

```
aws codestar-connections delete-host \
    --host-arn "arn:aws:codestar-connections:us-east-1 :123456789012:host/My-Host-28aef605"
```
此命令不生成任何输出。  
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[删除主机（CLI）](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-delete.html#connections-host-delete-cli)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [DeleteHost](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/delete-host.html)。

### `get-connection`
<a name="codestar-connections_GetConnection_cli_topic"></a>

以下代码示例演示了如何使用 `get-connection`。

**AWS CLI**  
**获取有关连接的信息**  
以下 `get-connection` 示例演示有关连接的信息。  

```
aws codestar-connections get-connection \
    --connection-arn arn:aws:codestar-connections:us-east-1:123456789012:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f
```
输出：  

```
{
    "Connection": {
        "ConnectionName": "MyConnection",
        "ConnectionArn": "arn:aws:codestar-connections:us-east-1:123456789012:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f",
        "ProviderType": "Bitbucket",
        "OwnerAccountId": "123456789012",
        "ConnectionStatus": "AVAILABLE"
    }
}
```
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[查看连接的详细信息](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-view-details.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [GetConnection](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/get-connection.html)。

### `get-host`
<a name="codestar-connections_GetHost_cli_topic"></a>

以下代码示例演示了如何使用 `get-host`。

**AWS CLI**  
**获取有关主机的信息**  
以下 `get-host` 示例演示有关主机的信息。  

```
aws codestar-connections get-host \
    --host-arn arn:aws:codestar-connections:us-east-1:123456789012:host/MyHost-28aef605
```
输出：  

```
{
    "Name": "MyHost",
    "Status": "AVAILABLE",
    "ProviderType": "GitHubEnterpriseServer",
    "ProviderEndpoint": "https://test-instance-1.dev/"
}
```
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[查看主机的详细信息（CLI）](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-view.html#connections-host-view-cli)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [GetHost](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/get-host.html)。

### `list-connections`
<a name="codestar-connections_ListConnections_cli_topic"></a>

以下代码示例演示了如何使用 `list-connections`。

**AWS CLI**  
**列出连接**  
以下 `list-connections` 示例检索您账户中 Bitbucket 提供程序类型的所有连接的列表：  

```
aws codestar-connections list-connections \
--provider-type Bitbucket \
--max-results 5 \
--next-token: next-token
```
输出：  

```
{
    "Connections": [
        {
            "ConnectionName": "my-connection",
            "ProviderType": "Bitbucket",
            "Status": "PENDING",
            "ARN": "arn:aws:codestar-connections:us-east-1:123456789012:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f",
            "OwnerAccountId": "123456789012"
        },
        {
            "ConnectionName": "my-other-connection",
            "ProviderType": "Bitbucket",
            "Status": "AVAILABLE",
            "ARN": "arn:aws:codestar-connections:us-east-1:123456789012:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f",
            "OwnerAccountId": "123456789012"
        },
    ],
    "NextToken": "next-token"
}
```
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[列出连接（CLI）](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-list.html#connections-list-cli)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [ListConnections](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/list-connections.html)。

### `list-hosts`
<a name="codestar-connections_ListHosts_cli_topic"></a>

以下代码示例演示了如何使用 `list-hosts`。

**AWS CLI**  
**列出主机**  
以下 `list-hosts` 示例检索您账户中所有主机的列表。  

```
aws codestar-connections list-hosts
```
输出：  

```
{
    "Hosts": [
        {
            "Name": "My-Host",
            "HostArn": "arn:aws:codestar-connections:us-east-1:123456789012:host/My-Host-28aef605",
            "ProviderType": "GitHubEnterpriseServer",
            "ProviderEndpoint": "https://my-instance.test.dev",
            "Status": "AVAILABLE"
        }
    ]
}
```
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[列出主机（CLI）](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-host-list.html)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [ListHosts](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/list-hosts.html)。

### `list-tags-for-resource`
<a name="codestar-connections_ListTagsForResource_cli_topic"></a>

以下代码示例演示了如何使用 `list-tags-for-resource`。

**AWS CLI**  
**列出标签**  
以下 `list-tags-for-resource` 示例检索附加到指定连接资源的所有标签的列表。  

```
aws codestar-connections list-tags-for-resource \
    --resource-arn arn:aws:codestar-connections:us-east-1:123456789012:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f
```
输出：  

```
{
    "Tags": [
        {
            "Key": "Project",
            "Value": "ProjectA"
        },
        {
            "Key": "ReadOnly",
            "Value": "true"
        }
    ]
}
```
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[查看连接资源的标签](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-tag.html#connections-tag-view)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [ListTagsForResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/list-tags-for-resource.html)。

### `tag-resource`
<a name="codestar-connections_TagResource_cli_topic"></a>

以下代码示例演示了如何使用 `tag-resource`。

**AWS CLI**  
**标记资源**  
以下 `tag-resource` 示例将一组提供的标签与连接关联。使用此命令添加或编辑标签。  

```
aws codestar-connections tag-resource \
    --resource-arn arn:aws:codestar-connections:us-east-1:123456789012:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f \
    --tags Key=Project,Value=ProjectA Key=IscontainerBased,Value=true
```
此命令不生成任何输出。  
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[向连接资源添加标签](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-tag.html#connections-tag-add)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [TagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/tag-resource.html)。

### `untag-resource`
<a name="codestar-connections_UntagResource_cli_topic"></a>

以下代码示例演示了如何使用 `untag-resource`。

**AWS CLI**  
**移除连接资源的 AWS 标签**  
以下 `untag-resource` 移除指定资源的标签。  

```
aws codestar-connections untag-resource \
    --resource-arn arn:aws:codestar-connections:us-east-1:123456789012:connection/aEXAMPLE-8aad-4d5d-8878-dfcab0bc441f \
    --tag-keys Project ReadOnly
```
输出：  

```
{
    "Tags": []
}
```
有关更多信息，请参阅《开发人员工具控制台用户指南》**中的[移除连接资源的标签](https://docs.aws.amazon.com/dtconsole/latest/userguide/connections-tag.html#connections-tag-delete)。  
+  有关 API 详细信息，请参阅《AWS CLI 命令参考》**中的 [UntagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-connections/untag-resource.html)。