The message that the my SNS Topic will publish to my lambda looks like this
{
"eventId" : 005,
"eventType" : "DeploymentEnd",
"eventData" : {
"deploymentId" : 1179729715,
"deploymentType" : "FlipActivate",
"environmentStageName" : "IhmEcoNvidiaJetsonABImage/bonser/Prod",
"initiatingUser" : "bonser",
"packagesChanged" : 443,
"startTime" : 1440524895,
"endTime" : 1440526045,
"deploymentRequestId" : 183839041,
"status" : "Failed",
"description" : "Sync from EnvImprovement's Prod stage",
"oldEnvironmentStageRevisionId" : 159539189,
"newEnvironmentStageRevisionId" : 162163445,
"fleetwide" : true,
"blocking" : true,
"revisionCommitted" : true,
"newRevision" : true,
"recordVersionNumber" : 33
}
}
I want to add filter policy which will filter messages and trigger lambda only when the following conditions are fulfilled
I want to add an sns filter policy that looks something like this
{
"eventType": [
"DeploymentEnd"
],
"eventData.status": [
"Failed"
],
"eventData.environmentStageName": [
{
"prefix": "IhmEcoNvidiaJetsonABImage"
},
{
"prefix": "IhmEcoDeviceConfigSmoothAmbler"
}
]
But the above json is not triggering my lambda
What is the correct way to do it?
I tried this
I want to add an sns filter policy that looks something like this
{
"eventType": [
"DeploymentEnd"
],
"eventData.status": [
"Failed"
],
"eventData.environmentStageName": [
{
"prefix": "IhmEcoNvidiaJetsonABImage"
},
{
"prefix": "IhmEcoDeviceConfigSmoothAmbler"
}
]