自定义资源的上下文管理器
lbr-context的Python项目详细描述
lbr上下文管理器
最好的工具为aws lambda支持的自定义资源自从切片奶酪!
如何使用
我很高兴你问我!
首先pip install lbr-context
,然后在您的自定义资源处理程序中:
fromlbr_contextimportCfnContextdefhandler(event=None,context=None):event=eventor{}request_type=event['RequestType'].upper()withCfnContext(event,context)ascfn:if'CREATE'inrequest_type:# handle a create herepasselif'UPDATE'inrequest_type:# handle an update herepasselif'DELETE'inrequest_type:# handle a delete herepass
那么是什么让它变得更好
编写自定义资源时遇到的一个大麻烦就是出错,因为这可能会导致资源长时间处于IN_PROGRESS
状态。
此上下文管理器解决了这个问题,并将捕获任何未捕获的异常。当它捕获到异常时,它将FAILED
请求发送到event
的端点,因此cloudformation知道您的自定义资源无法创建/更新/删除。
除此之外,此上下文管理器还为lambda将要用完的时间设置计时器,以便确保发送FAILED
请求,即使lambda的超时配置不正确。