Skip to content

Commit 70181eb

Browse files
authored
CCM-14410: Make the eventpub lambda handle unknown plane values
1 parent 04d1526 commit 70181eb

2 files changed

Lines changed: 16 additions & 2 deletions

File tree

infrastructure/terraform/modules/eventpub/lambda/eventpub/src/__tests__/index.test.js

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,19 @@ describe('SNS to EventBridge Lambda', () => {
6868
expect(sqsMock.calls()).toHaveLength(1);
6969
});
7070

71+
test('Event with unknown plane field is sent to DLQ', async () => {
72+
const eventUnknownPlane = { ...validCloudEvent, plane: "unknown" };
73+
74+
const snsEventUnknownPlane = {
75+
Records: [
76+
{ Sns: { Message: JSON.stringify(eventUnknownPlane) } }
77+
]
78+
};
79+
80+
await handler(snsEventUnknownPlane);
81+
82+
expect(sqsMock.calls()).toHaveLength(1);
83+
});
7184

7285
test('Retries on EventBridge failure and sends failed events to DLQ', async () => {
7386
eventBridgeMock

infrastructure/terraform/modules/eventpub/lambda/eventpub/src/index.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -115,11 +115,12 @@ exports.handler = async (snsEvent) => {
115115

116116
const dataEvents = validEvents.filter(event => event.plane === 'data');
117117
const controlEvents = validEvents.filter(event => event.plane === 'control');
118+
const unknownEvents = validEvents.filter(event => event.plane !== 'data' && event.plane !== 'control');
118119

119-
console.debug(`Data events: ${dataEvents.length}, Control events: ${controlEvents.length}`);
120+
console.debug(`Data events: ${dataEvents.length}, Control events: ${controlEvents.length}, Unknown events: ${unknownEvents.length}`);
120121

121122
const failedDataEvents = await sendToEventBridge(dataEvents, DATA_PLANE_EVENT_BUS_ARN);
122123
const failedControlEvents = await sendToEventBridge(controlEvents, CONTROL_PLANE_EVENT_BUS_ARN);
123124

124-
await sendToDLQ([...failedDataEvents, ...failedControlEvents]);
125+
await sendToDLQ([...failedDataEvents, ...failedControlEvents, ...unknownEvents]);
125126
};

0 commit comments

Comments
 (0)