我试图从Greengrass中删除Greengrass版本的lambda,它抱怨我,
We cannot deploy because the group definition is invalid or corrupted for the following reasons: {ErrorSet(errorSet=[ErrorModel(errorCode=REFERENTIAL_INTEGRITY_ERROR, errorMsg=Source arn:aws:lambda:us-east-1:xxx:function:xxx:2 does not exist in group)])}
"Source arn:aws:lambda:us-east-1:xxx:function:xxx:2 does not exist in group"
我知道我们需要使用ALIAS而不是版本,但是如果是这种情况,AWS IOT不应允许这样做。
更新了代码,添加了新版本,而我无法删除旧版本。
答案 0 :(得分:0)
尝试替换Lambda函数时,我收到了类似的错误消息。最后,问题在于订阅涉及该功能。尝试删除任何将源或目标作为导致问题的lambda的订阅。
答案 1 :(得分:0)
您需要删除所有引用lambda的订阅。这样做时,您需要更新错误中提到的定义。
在AWS的图形控制台中这样做相对容易。但是通过命令行是一个非常漫长的过程。要通过命令行执行此操作,您将需要查询组,以获取所有定义/版本,更新订阅,为其获取新的定义,并使用订阅中的新def修改原始组并进行部署那。
有点混乱,花了我一段时间才弄清楚。