Challenge Overview
Challenge objectives
-
Update the kafka-node module with no-kafka.
-
Cover the processor with both unit and E2E tests.
Tech stack
-
Node.js
-
Apache Kafka
-
MongoDB
-
GitHub
-
Azure DevOps
Code access
Repo: https://github.com/tc-bluesource/github-devops-sync-processor
Branch: develop
You will find a link on the challenge forum that can be used to get access to the repo (in case you don’t have already).
Detailed requirements
Replace kafka-node module with no-kafka
Currently, we are using the https://www.npmjs.com/package/kafka-node module but after testing the processor, it seems like it’s failing to connect to our Kafka instance.
Connecting to our instance will also require SSL options (cert/cert key).
You need to replace the current module with the no-kafka module and use the GroupConsumer.
Here’s an example processor that’s using the same approach: https://github.com/topcoder-platform/challenge-processor-es/blob/develop/src/app.js#L12
Make sure to update all related configs and documentation to reflect the changes from the above requirement.
Unit Testing
-
You need to cover the processor with both unit and E2E tests.
-
Create both positive and negative test cases.
Feel free to post any questions on the challenge forum!