本文档 AWS CLI 仅适用于版本 1。有关版本 2 的文档 AWS CLI,请参阅版本 2 用户指南。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
AWS CodeStar 使用通知示例 AWS CLI
以下代码示例向您展示了如何使用 with Notifications 来执行操作和实现常见场 AWS CodeStar 景。 AWS Command Line Interface
操作是大型程序的代码摘录,必须在上下文中运行。您可以通过操作了解如何调用单个服务函数,还可以通过函数相关场景的上下文查看操作。
每个示例都包含一个指向完整源代码的链接,您可以在其中找到有关如何在上下文中设置和运行代码的说明。
主题
操作
以下代码示例显示了如何使用create-notification-rule
。
- AWS CLI
-
创建通知规则
以下
create-notification-rule
示例使用名为JSON的文件rule.json
为指定 AWS 账户中名MyNotificationRule
为的存储库创建名为MyDemoRepo
的通知规则。创建分支和标签时,FULL
详细类型的通知将发送到指定的目标 Amazon SNS 主题。aws codestar-notifications create-notification-rule \ --cli-input-json
file://rule.json
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" }
输出:
{ "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE" }
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的创建通知规则。
-
有关API详细信息,请参阅AWS CLI 命令参考CreateNotificationRule
中的。
-
以下代码示例显示了如何使用delete-notification-rule
。
- AWS CLI
-
删除通知规则
以下
delete-notification-rule
示例删除了指定的通知规则。aws codestar-notifications delete-notification-rule \ --arn
arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE
输出:
{ "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE" }
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的删除通知规则。
-
有关API详细信息,请参阅AWS CLI 命令参考DeleteNotificationRule
中的。
-
以下代码示例显示了如何使用delete-target
。
- AWS CLI
-
删除通知规则目标
以下
delete-target
示例将指定目标从所有配置为用作目标的通知规则中移除,然后删除该目标。aws codestar-notifications delete-target \ --target-address
arn:aws:sns:us-east-1:123456789012:MyNotificationTopic
\ --force-unsubscribe-all此命令不生成任何输出。
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的删除通知规则目标。
-
有关API详细信息,请参阅AWS CLI 命令参考DeleteTarget
中的。
-
以下代码示例显示了如何使用describe-notification-rule
。
- AWS CLI
-
检索通知规则的详细信息
以下
describe-notification-rule
示例检索指定通知规则的详细信息。aws codestar-notifications describe-notification-rule \ --arn
arn:aws:codestar-notifications:us-west-2:123456789012:notificationrule/dc82df7a-EXAMPLE
输出:
{ "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" }
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的 “查看通知规则”。
-
有关API详细信息,请参阅AWS CLI 命令参考DescribeNotificationRule
中的。
-
以下代码示例显示了如何使用list-event-types
。
- AWS CLI
-
获取通知规则的事件类型列表
以下
list-event-types
示例检索 CodeDeploy 应用程序的所有可用通知事件类型的筛选列表。相反,如果您不使用过滤器,则该命令将返回所有资源类型的所有通知事件类型。aws codestar-notifications list-event-types \ --filters
Name=SERVICE_NAME,Value=CodeDeploy
输出:
{ "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" } ] }
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的创建通知规则。
-
有关API详细信息,请参阅AWS CLI 命令参考ListEventTypes
中的。
-
以下代码示例显示了如何使用list-notification-rules
。
- AWS CLI
-
检索通知规则列表
以下
list-notification-rules
示例检索指定 AWS 区域中所有通知规则的列表。aws codestar-notifications list-notification-rules --region
us-east-1
输出:
{ "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" } ] }
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的 “查看通知规则”。
-
有关API详细信息,请参阅AWS CLI 命令参考ListNotificationRules
中的。
-
以下代码示例显示了如何使用list-tags-for-resource
。
- AWS CLI
-
获取附加到通知规则的标签列表
以下
list-tags-for-resource
示例检索附加到指定通知规则的所有标签的列表。在此示例中,通知规则当前没有与之关联的标签。aws codestar-notifications list-tags-for-resource \ --arn
arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/fe1efd35-EXAMPLE
输出:
{ "Tags": {} }
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的创建通知规则。
-
有关API详细信息,请参阅AWS CLI 命令参考ListTagsForResource
中的。
-
以下代码示例显示了如何使用list-targets
。
- AWS CLI
-
检索通知规则目标列表
以下
list-targets
示例检索指定 AWS 区域中所有通知规则目标的列表。aws codestar-notifications list-targets \ --region
us-east-1
输出:
{ "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" } ] }
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的查看通知规则目标。
-
有关API详细信息,请参阅AWS CLI 命令参考ListTargets
中的。
-
以下代码示例显示了如何使用subscribe
。
- AWS CLI
-
向通知规则添加目标
以下
subscribe
示例将一个 Amazon SNS 主题添加为指定通知规则的目标。aws codestar-notifications subscribe \ --arn
arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE
\ --targetTargetType=SNS,TargetAddress=arn:aws:sns:us-east-1:123456789012:MyNotificationTopic
输出:
{ "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE" }
有关更多信息,请参阅AWS 开发者工具控制台用户指南中的添加或删除作为通知规则目标的 Amazon SNS 主题。
-
有关API详细信息,请参阅《AWS CLI 命令参考》中的 “订阅
”。
-
以下代码示例显示了如何使用tag-resource
。
- AWS CLI
-
向通知规则添加标签
以下
tag-resource
示例将密钥名称为Team
、值Li_Juan
为的标签添加到指定的通知规则。aws codestar-notifications tag-resource \ --arn
arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/fe1efd35-EXAMPLE
\ --tagsTeam=Li_Juan
输出:
{ "Tags": { "Team": "Li_Juan" } }
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的创建通知规则。
-
有关API详细信息,请参阅AWS CLI 命令参考TagResource
中的。
-
以下代码示例显示了如何使用unsubscribe
。
- AWS CLI
-
从通知规则中移除目标
以下
unsubscribe
示例将作为目标的 Amazon SNS 主题从指定的通知规则中删除。aws codestar-notifications unsubscribe \ --arn
arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE
\ --targetTargetType=SNS,TargetAddress=arn:aws:sns:us-east-1:123456789012:MyNotificationTopic
输出:
{ "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE" "TargetAddress": "arn:aws:sns:us-east-1:123456789012:MyNotificationTopic" }
有关更多信息,请参阅AWS 开发者工具控制台用户指南中的添加或删除作为通知规则目标的 Amazon SNS 主题。
-
有关API详细信息,请参阅《AWS CLI 命令参考》中的 “取消订阅
”。
-
以下代码示例显示了如何使用untag-resource
。
- AWS CLI
-
从通知规则中移除标签
以下
untag-resource
示例Team
从指定的通知规则中删除带有密钥名称的标签。aws codestar-notifications untag-resource \ --arn
arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/fe1efd35-EXAMPLE
\ --tag-keysTeam
此命令不生成任何输出。
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的编辑通知规则。
-
有关API详细信息,请参阅AWS CLI 命令参考UntagResource
中的。
-
以下代码示例显示了如何使用update-notification-rule
。
- AWS CLI
-
更新通知规则
以下
update-notification-rule
示例123456789012
使用名为JSON的文件更新 AWS 账户MyNotificationRule
中名为的通知规则update.json
。aws codestar-notifications update-notification-rule \ --cli-input-json
file://update.json
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" }
输出:
{ "Arn": "arn:aws:codestar-notifications:us-east-1:123456789012:notificationrule/dc82df7a-EXAMPLE" }
有关更多信息,请参阅《AWS 开发者工具控制台用户指南》中的编辑通知规则。
-
有关API详细信息,请参阅AWS CLI 命令参考UpdateNotificationRule
中的。
-