Я пытаюсь настроить свой S3, чтобы уведомить мою очередь SQS о событии создания объекта «PUT».Публикация сообщения S3 Bucket на SQS
Я могу добиться этого с помощью CLI по:
aws --profile QA s3api put-bucket-notification --bucket <BUCKET_NAME> --notification-configuration '{ "QueueConfiguration": { "Id": "<EVENT ID>", "Event": "s3:ObjectCreated:Put", "Queue": "<QUEUE ARN>" } }'
Также в состоянии сделать то же самое с помощью Java:
NotificationConfiguration notificationConfiguration = new QueueConfiguration(queueArn, EnumSet.of(S3Event.ObjectCreatedByPut));
BucketNotificationConfiguration bucketNotificationConfiguration = new BucketNotificationConfiguration("DropShipInboundQueueDelivery", notificationConfiguration);
client.setBucketNotificationConfiguration(bucketName, bucketNotificationConfiguration)
Однако, когда я пытался что-то подобное, используя шаблон CloudFormation, я не могу найти любой способ инициировать уведомление для SQS. Единственный вариант, который я вижу, который работает и документирован, - это инициировать уведомление SNS.
Я передал Формирование документации Cloud:
- Я смотрел на AWS::S3::Bucket документы, чтобы посмотреть на внешнем синтаксисом. Я видел NotificationConfiguration, которые мне нужно установить
- Однако Notification Configuration может содержать только список TopicConfigurations с был старый конструктор в JDK, прежде чем QueueConfiguration поддержали
Я пытался делать что-то вроде этого:
"NotificationConfiguration" :{
"QueueConfiguration": {
"Id": "DropshipInboundEventNotification",
"Event": "s3:ObjectCreated:Put",
"Queue": "arn:aws:sqs:*:*:Dropship-Inbound-qa"
}
},
Но это, как ожидалось, забросило ошибку: «Обнаружено неподдерживаемое свойство QueueConfiguration» от amazon.
Посмотрел на это API documentation
Я хотел бы знать, если кто-то был в состоянии сделать это, используя шаблоны CloudFormation, как тот, как я поддерживаю все остальные ресурсы AWS и не хотят делать ничего особенного для этого конкретного особенность.
Любая помощь приветствуется.
Я не пробовал этой характеристике себя, но я нашел CloudFormation в целом отстает от API порядка месяцев. Если какое-то время было какое-то изменение относительно того, как это работает, скорее всего, он еще не перешел на CF ... еще? – DanielM