Я закончил тем, что изменил цель, чтобы вывести список всех сопоставлений источника-события, и удалил все ГУИДЫ, которые были перечислены.
.PHONY: delete-event-source-mapping
delete-event-source-mappings: ## Delete event source mappings for project lambda.
$(eval UUIDS := $(shell aws lambda list-event-source-mappings \
--function-name <function_name> \
--event-source <function_arn> | grep "UUID" | awk -F'"' '{print $$4}'))
for mapping_uuid in $(UUIDS); do \
aws lambda delete-event-source-mapping --uuid $$mapping_uuid; \
done
Если вы хотите удалить по другому критерию (кроме простого присоединения)к целевой лямбде) вам нужно добавить некоторую логику синтаксического анализа после части списка.Со временем я планирую добавить фильтр по источнику событий (например, от S3 или Kinesis).