Skip to main content

Provides a Kafka implementation of the ChannelInput/OutputPort in pypz.

Project description

Description

This package contains the Kafka implementation of the Input-/OutputPortPlugin interface of pypz. It enables the operators to send and receive data records in a real streaming fashion.

Check the documentation for more details.

Install

The python artifact is hosted on https://pypi.org/, so you can install it via pip:

pip install pypz-kafka-io

If you want to work on it locally, then you should install in editable mode:

pip install -e ./plugins/kafka_io

Test

You can run tests against an existing Kafka cluster, however, it is more convenient and safe to use a local test cluster.

  1. Run the confluent image to start a local cluster
docker run --name kafka-test-cluster -d --rm -p 9092:9092 confluentinc/confluent-local
  1. Install the subproject in editable more.
pip install -e ./plugins/kafka_io
  1. To run the tests locally, you need to execute the following command:
python -m unittest discover .\plugins\kafka_io\test\ -p "*.py"
  1. Delete cluster
docker stop kafka-test-cluster

Known issues

Due to the fact that the test execution is sometimes faster than the Kafka cluster, there might be failed tests. Although there are already several delays inserted into the test code, it still can happen. Try to rerun the test and give a notification to the maintainer(s). Thank you.

Build

Before you build, you will need to install the "build" package:

pip install build

Then from the subproject's root, you will need to execute the following command:

python -m build

It will create the source distribution and the wheel file in the "dist" folder.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pypz_kafka_io-0.9.2b0.tar.gz (12.8 kB view hashes)

Uploaded Source

Built Distribution

pypz_kafka_io-0.9.2b0-py3-none-any.whl (12.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page