-
Notifications
You must be signed in to change notification settings - Fork 113
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: update FBCA spec to support VDM v2 events #3675
Conversation
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #3675 +/- ##
===========================================
- Coverage 88.63% 88.60% -0.03%
===========================================
Files 592 594 +2
Lines 32206 32377 +171
Branches 7661 7708 +47
===========================================
+ Hits 28545 28687 +142
- Misses 3338 3365 +27
- Partials 323 325 +2 ☔ View full report in Codecov by Sentry. |
Test report for this run is available at: https://test-integrations-dev.s3.amazonaws.com/integrations-test-reports/rudder-transformer/3675/test-report.html |
@@ -4,6 +4,8 @@ function getEndPoint(audienceId) { | |||
return `${BASE_URL}/${audienceId}/users`; | |||
} | |||
|
|||
const VDM_V2_SCHEMA_VERSION = '1.1'; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you can declare this in global somewhere, this is same for any destination
@@ -236,7 +249,7 @@ const processEvent = (message, destination) => { | |||
return respList; | |||
}; | |||
|
|||
const process = (event) => processEvent(event.message, event.destination); | |||
const process = (event) => processEvent(event.message, event.destination, event.connection); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we can directly pass event here to processEvent
@@ -136,7 +137,11 @@ async function processRecordInputs(groupedRecordInputs) { | |||
// user schema validation | |||
let { userSchema } = destination.Config; | |||
if (mappedToDestination) { | |||
userSchema = getSchemaForEventMappedToDest(message); | |||
if (connection?.config?.destination?.schemaVersion === VDM_V2_SCHEMA_VERSION) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
write common util for this condition, mostly this will be used multiple destinations
@@ -136,7 +137,11 @@ async function processRecordInputs(groupedRecordInputs) { | |||
// user schema validation | |||
let { userSchema } = destination.Config; | |||
if (mappedToDestination) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
are we sending mappedToDestination in new format?
@sandeepdsvs update this PR with new changes |
connection: { | ||
config: { | ||
destination: { | ||
isHashRequired: true, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
schema version not required here?
Quality Gate passedIssues Measures |
closing for #3729 |
What are the changes introduced in this PR?
Write a brief explainer on your code changes.
What is the related Linear task?
Resolves INT-XXX
Please explain the objectives of your changes below
Put down any required details on the broader aspect of your changes. If there are any dependent changes, mandatorily mention them here
Any changes to existing capabilities/behaviour, mention the reason & what are the changes ?
N/A
Any new dependencies introduced with this change?
N/A
Any new generic utility introduced or modified. Please explain the changes.
N/A
Any technical or performance related pointers to consider with the change?
N/A
@coderabbitai review
Developer checklist
My code follows the style guidelines of this project
No breaking changes are being introduced.
All related docs linked with the PR?
All changes manually tested?
Any documentation changes needed with this change?
Is the PR limited to 10 file changes?
Is the PR limited to one linear task?
Are relevant unit and component test-cases added in new readability format?
Reviewer checklist
Is the type of change in the PR title appropriate as per the changes?
Verified that there are no credentials or confidential data exposed with the changes.