

# Exemplos de notificações do AWS CodeStar usando a AWS CLI
<a name="cli_codestar-notifications_code_examples"></a>

Os exemplos de código a seguir mostram como realizar ações e implementar cenários comuns usando a AWS Command Line Interface com notificações do AWS CodeStar.

*Ações* são trechos de código de programas maiores e devem ser executadas em contexto. Embora as ações mostrem como chamar perfis de serviço individuais, você pode ver as ações no contexto em seus cenários relacionados.

Cada exemplo inclui um link para o código-fonte completo, em que você pode encontrar instruções sobre como configurar e executar o código.

**Topics**
+ [Ações](#actions)

## Ações
<a name="actions"></a>

### `create-notification-rule`
<a name="codestar-notifications_CreateNotificationRule_cli_topic"></a>

O código de exemplo a seguir mostra como usar `create-notification-rule`.

**AWS CLI**  
**Para criar uma regra de notificação**  
O exemplo `create-notification-rule` a seguir usa um arquivo JSON chamado `rule.json` para criar uma regra de notificação com o nome `MyNotificationRule` de um repositório chamado `MyDemoRepo` na conta da AWS especificada. As notificações com o tipo de detalhe `FULL` são enviadas para o tópico do Amazon SNS de destino especificado quando ramificações e tags são criadas.  

```
aws codestar-notifications create-notification-rule \
    --cli-input-json file://rule.json
```
Conteúdo de `rule.json`:  

```
{
    "Name": "MyNotificationRule",
    "EventTypeIds": [
        "codecommit-repository-branches-and-tags-created"
    ],
    "Resource": "arn:aws:codecommit:us-east-1:123456789012:MyDemoRepo",
    "Targets": [
        {
            "TargetType": "SNS",
            "TargetAddress": "arn:aws:sns:us-east-1:123456789012:MyNotificationTopic"
        }
    ],
    "Status": "ENABLED",
    "DetailType": "FULL"
}
```
Resultado:  

```
{
    "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE"
}
```
Para obter mais informações, consulte [Criar uma regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-rule-create.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para ver detalhes da API, consulte [CreateNotificationRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/create-notification-rule.html) na *Referência de comandos da AWS CLI*. 

### `delete-notification-rule`
<a name="codestar-notifications_DeleteNotificationRule_cli_topic"></a>

O código de exemplo a seguir mostra como usar `delete-notification-rule`.

**AWS CLI**  
**Para excluir uma regra de notificação**  
O exemplo `delete-notification-rule` a seguir exclui a regra de notificação especificada.  

```
aws codestar-notifications delete-notification-rule \
    --arn arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE
```
Resultado:  

```
{
    "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE"
}
```
Para obter mais informações, consulte [Excluir uma regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-rule-delete.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para ver detalhes da API, consulte [DeleteNotificationRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/delete-notification-rule.html) na *Referência de comandos da AWS CLI*. 

### `delete-target`
<a name="codestar-notifications_DeleteTarget_cli_topic"></a>

O código de exemplo a seguir mostra como usar `delete-target`.

**AWS CLI**  
**Para excluir uma regra de notificação**  
O exemplo `delete-target` a seguir remove o destino especificado de todas as regras de notificação configuradas para usá-lo como destino e, depois, exclui o destino.  

```
aws codestar-notifications  delete-target \
    --target-address arn:aws:sns:us-east-1:123456789012:MyNotificationTopic \
    --force-unsubscribe-all
```
Este comando não produz saída.  
Para obter mais informações, consulte [Excluir um destino de regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-target-delete.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para ver detalhes da API, consulte [DeleteTarget](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/delete-target.html) na *Referência de comandos da AWS CLI*. 

### `describe-notification-rule`
<a name="codestar-notifications_DescribeNotificationRule_cli_topic"></a>

O código de exemplo a seguir mostra como usar `describe-notification-rule`.

**AWS CLI**  
**Para recuperar detalhes de uma regra de notificação**  
O exemplo `describe-notification-rule` a seguir recupera os detalhes da regra de notificação especificada.  

```
aws codestar-notifications describe-notification-rule \
    --arn arn:aws:codestar-notifications:us-west-2:123456789012:notificationrule/dc82df7a-EXAMPLE
```
Resultado:  

```
{
    "LastModifiedTimestamp": 1569199844.857,
    "EventTypes": [
        {
            "ServiceName": "CodeCommit",
            "EventTypeName": "Branches and tags: Created",
            "ResourceType": "Repository",
            "EventTypeId": "codecommit-repository-branches-and-tags-created"
        }
    ],
    "Status": "ENABLED",
    "DetailType": "FULL",
    "Resource": "arn:aws:codecommit:us-west-2:123456789012:MyDemoRepo",
    "Arn": "arn:aws:codestar-notifications:us-west-w:123456789012:notificationrule/dc82df7a-EXAMPLE",
    "Targets": [
        {
            "TargetStatus": "ACTIVE",
            "TargetAddress": "arn:aws:sns:us-west-2:123456789012:MyNotificationTopic",
            "TargetType": "SNS"
        }
    ],
    "Name": "MyNotificationRule",
    "CreatedTimestamp": 1569199844.857,
    "CreatedBy": "arn:aws:iam::123456789012:user/Mary_Major"
}
```
Para obter mais informações, consulte [Visualizar regras de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-rule-view.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para ver detalhes da API, consulte [DescribeNotificationRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/describe-notification-rule.html) na *Referência de comandos da AWS CLI*. 

### `list-event-types`
<a name="codestar-notifications_ListEventTypes_cli_topic"></a>

O código de exemplo a seguir mostra como usar `list-event-types`.

**AWS CLI**  
**Para obter uma lista de tipos de evento para uma regra de notificação**  
O exemplo `list-event-types` a seguir recupera uma lista filtrada de todos os tipos de evento de notificação disponíveis para aplicações do CodeDeploy. Se, em vez disso, você não usar nenhum filtro, o comando retornará todos os tipos de eventos de notificação para todos os tipos de recursos.  

```
aws codestar-notifications list-event-types \
    --filters Name=SERVICE_NAME,Value=CodeDeploy
```
Resultado:  

```
{
    "EventTypes": [
        {
            "EventTypeId": "codedeploy-application-deployment-succeeded",
            "ServiceName": "CodeDeploy",
            "EventTypeName": "Deployment: Succeeded",
            "ResourceType": "Application"
        },
        {
            "EventTypeId": "codedeploy-application-deployment-failed",
            "ServiceName": "CodeDeploy",
            "EventTypeName": "Deployment: Failed",
            "ResourceType": "Application"
        },
        {
            "EventTypeId": "codedeploy-application-deployment-started",
            "ServiceName": "CodeDeploy",
            "EventTypeName": "Deployment: Started",
            "ResourceType": "Application"
        }
    ]
}
```
Para obter mais informações, consulte [Criar uma regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-rule-create.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para ver detalhes da API, consulte [ListEventTypes](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/list-event-types.html) na *Referência de comandos da AWS CLI*. 

### `list-notification-rules`
<a name="codestar-notifications_ListNotificationRules_cli_topic"></a>

O código de exemplo a seguir mostra como usar `list-notification-rules`.

**AWS CLI**  
**Para recuperar uma lista de regras de notificação**  
O exemplo `list-notification-rules` a seguir recupera uma lista de todas as regras de notificação na região da AWS especificada.  

```
aws codestar-notifications list-notification-rules --region us-east-1
```
Resultado:  

```
{
    "NotificationRules": [
        {
            "Id": "dc82df7a-EXAMPLE",
            "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE"
        },
        {
            "Id": "8d1f0983-EXAMPLE",
            "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/8d1f0983-EXAMPLE"
        }
    ]
}
```
Para obter mais informações, consulte [Visualizar regras de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-rule-view.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para ver detalhes da API, consulte [ListNotificationRules](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/list-notification-rules.html) na *Referência de comandos da AWS CLI*. 

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

O código de exemplo a seguir mostra como usar `list-tags-for-resource`.

**AWS CLI**  
**Para obter uma lista de tags anexadas a uma regra de notificação**  
O exemplo `list-tags-for-resource` a seguir recupera uma lista de todas as tags anexadas à regra de notificação especificada. Neste exemplo, a regra de notificação atualmente não tem tags associadas a ela.  

```
aws codestar-notifications list-tags-for-resource \
    --arn arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/fe1efd35-EXAMPLE
```
Resultado:  

```
{
    "Tags": {}
}
```
Para obter mais informações, consulte [Criar uma regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-rule-create.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para obter detalhes sobre a API, consulte [ListTagsForResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/list-tags-for-resource.html) na *AWS CLI Command Reference*. 

### `list-targets`
<a name="codestar-notifications_ListTargets_cli_topic"></a>

O código de exemplo a seguir mostra como usar `list-targets`.

**AWS CLI**  
**Para recuperar uma lista de destinos de regra de notificação**  
O exemplo `list-targets` a seguir recupera uma lista de todos os destinos de regras de notificação na região da AWS especificada.  

```
aws codestar-notifications list-targets \
    --region us-east-1
```
Resultado:  

```
{
    "Targets": [
        {
            "TargetAddress": "arn:aws:sns:us-east-1:123456789012:MySNSTopicForNotificationRules",
            "TargetType": "SNS",
            "TargetStatus": "ACTIVE"
        },
        {
            "TargetAddress": "arn:aws:sns:us-east-1:123456789012:MySNSTopicForNotificationsAboutMyDemoRepo",
            "TargetType": "SNS",
            "TargetStatus": "ACTIVE"
        }
    ]
}
```
Para obter mais informações, consulte [Visualizar destinos de regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-target-view.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para ver detalhes da API, consulte [ListTargets](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/list-targets.html) na *Referência de comandos da AWS CLI*. 

### `subscribe`
<a name="codestar-notifications_Subscribe_cli_topic"></a>

O código de exemplo a seguir mostra como usar `subscribe`.

**AWS CLI**  
**Para adicionar um destino a uma regra de notificação**  
O exemplo `subscribe` a seguir adiciona um tópico do Amazon SNS como um destino para a regra de notificação especificada.  

```
aws codestar-notifications subscribe \
    --arn arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE \
    --target TargetType=SNS,TargetAddress=arn:aws:sns:us-east-1:123456789012:MyNotificationTopic
```
Resultado:  

```
{
    "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE"
}
```
Para obter mais informações, consulte [Adicionar ou remover um tópico do Amazon SNS como destino para uma regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-target-change-rule.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Consulte detalhes da API em [Subscribe](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/subscribe.html) na *Referência de comandos da AWS CLI*. 

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

O código de exemplo a seguir mostra como usar `tag-resource`.

**AWS CLI**  
**Para adicionar uma tag a uma regra de notificação**  
O exemplo `tag-resource` a seguir adiciona uma tag com o nome de chave de `Team` e o valor de `Li_Juan` à regra de notificação especificada.  

```
aws codestar-notifications tag-resource \
    --arn arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/fe1efd35-EXAMPLE \
    --tags Team=Li_Juan
```
Resultado:  

```
{
    "Tags": {
        "Team": "Li_Juan"
    }
}
```
Para obter mais informações, consulte [Criar uma regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-rule-create.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Consulte detalhes da API em [TagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/tag-resource.html) na *Referência de comandos da AWS CLI*. 

### `unsubscribe`
<a name="codestar-notifications_Unsubscribe_cli_topic"></a>

O código de exemplo a seguir mostra como usar `unsubscribe`.

**AWS CLI**  
**Para remover um destino de uma regra de notificação**  
O exemplo `unsubscribe` a seguir remove um tópico do Amazon SNS como um destino da regra de notificação especificada.  

```
aws codestar-notifications unsubscribe \
    --arn arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE \
    --target TargetType=SNS,TargetAddress=arn:aws:sns:us-east-1:123456789012:MyNotificationTopic
```
Resultado:  

```
{
    "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE"
    "TargetAddress": "arn:aws:sns:us-east-1:123456789012:MyNotificationTopic"
}
```
Para obter mais informações, consulte [Adicionar ou remover um tópico do Amazon SNS como destino para uma regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-target-change-rule.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Consulte detalhes da API em [Unsubscribe](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/unsubscribe.html) na *Referência de comandos da AWS CLI*. 

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

O código de exemplo a seguir mostra como usar `untag-resource`.

**AWS CLI**  
**Para remover uma tag de uma regra de notificação**  
O exemplo `untag-resource` a seguir remove a tag com uma chave de nome `Team` da regra de notificação especificada.  

```
aws codestar-notifications untag-resource \
    --arn arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/fe1efd35-EXAMPLE \
    --tag-keys Team
```
Este comando não produz saída.  
Para obter mais informações, consulte [Editar uma regra de notificação](https://docs.aws.amazon.com/codestar-notifications/latest/userguide/notification-rule-edit.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para obter detalhes sobre a API, consulte [UntagResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/untag-resource.html) na *Referência de comandos da AWS CLI*. 

### `update-notification-rule`
<a name="codestar-notifications_UpdateNotificationRule_cli_topic"></a>

O código de exemplo a seguir mostra como usar `update-notification-rule`.

**AWS CLI**  
**Para atualizar uma regra de notificação**  
O exemplo `update-notification-rule` a seguir atualiza uma regra de notificação chamada `MyNotificationRule` na conta da AWS `123456789012` usando um arquivo JSON chamado `update.json`.  

```
aws codestar-notifications update-notification-rule \
    --cli-input-json file://update.json
```
Conteúdo de `update.json`:  

```
{
    "Name": "MyUpdatedNotificationRule",
    "EventTypeIds": [
        "codecommit-repository-branches-and-tags-created"
    ],
    "Resource": "arn:aws:codecommit:us-east-1:123456789012:MyDemoRepo",
    "Targets": [
        {
            "TargetType": "SNS",
            "TargetAddress": "arn:aws:sns:us-east-1:123456789012:MyNotificationTopic"
        }
    ],
    "Status": "ENABLED",
    "DetailType": "FULL"
}
```
Resultado:  

```
{
    "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE"
}
```
Para obter mais informações, consulte [Editar uma regra de notificação](https://docs.aws.amazon.com/dtconsole/latest/userguide/notification-rule-edit.html) no *Guia do usuário do console de ferramentas do desenvolvedor da AWS*.  
+  Para ver detalhes da API, consulte [UpdateNotificationRule](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/codestar-notifications/update-notification-rule.html) na *Referência de comandos da AWS CLI*. 