Example Node Kafka Consumer

Source Code

https://github.com/pactflow/example-consumer-js-kafka

badge__2_.svg

can--i--deploy-master_to_production-brightgreen.svg: https://testdemo.pactflow.io/pacticipants/pactflow-example-bi-directional-provider-readyapi/branches/master/latest-version/can-i-deploy/to-environment/production/badge

pactflow--example--consumer--js--kafka_pact-verified-brightgreen.svg: https://testdemo.pactflow.io/pacticipants/pactflow-example-bi-directional-provider-readyapi/branches/master/latest-version/can-i-deploy/to-environment/production/badge (latest pact)

pactflow--example--consumer--js--kafka_pact-verified-brightgreen.svg: https://testdemo.pactflow.io/pacticipants/pactflow-example-bi-directional-provider-readyapi/branches/master/latest-version/can-i-deploy/to-environment/production/badge (master/master pact)

This is an example of a Node kafka consumer that uses Pact, API Hub for Contract Testing and GitHub Actions to ensure that it is compatible with the expectations its consumers have of it.

The project uses a Makefile to simulate a very simple build pipeline with two stages - test and deploy.

See the canonical consumer example here: https://github.com/pactflow/example-consumer See also the full API Hub for Contract Testing CI/CD Workshop for which this can be substituted in as the "consumer".

In the following diagram, we'll be testing the "Product API", a simple HTTP service that exposes product information as a REST API, which is fed events from an Event API on the product topic.

kafka.png

Pre-requisites

Software:

Read here

Usage

  • Running the API locally: make start

  • Producing test events into the product topic: make test-events

  • Retrieve latest products: curl localhost:8080/products

Publication date: