You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add Kafka integration tests and deploy-kafka EaaS task
- Add three self-verifying integration tests that verify Kafka messages
are published for compose-created, compose-tagged, and compose-untagged
events. Tests are skipped when KAFKA_URL is unset.
- Add _get_kafka_end_offset() helper to snapshot the partition end offset
before each action so only messages from that specific test are consumed.
- Add _consume_kafka_message() with configurable timeout and optional
predicate for draining stale in-flight messages from prior tests.
- Use group_id=None in KafkaConsumer within _consume_kafka_message so
the group-coordinator protocol is not triggered; with manual partition
assignment and explicit seek the coordinator is not needed, and its
extra TCP connections caused spurious ECONNREFUSED failures on the
third test when the Kafka broker briefly shed connections.
- Catch KafkaConnectionError during message iteration and re-raise as
AssertionError with a clear diagnostic message.
- Use a proper kafka.serializer.Deserializer subclass for JSON
deserialization; subclassing the ABC prevents KafkaConsumer from
wrapping it in DeserializeWrapper, which broke when the object was
not callable.
- Add deploy-kafka task to integration-test-eaas.yaml using the official
apache/kafka:3.9.2 image with emptyDir volumes for config, logs, and
data so the container runs under OpenShift's restricted-v2 SCC.
- Configure CTS to use the Kafka backend in the EaaS test environment.
- Fix messaging.py to convert the string 'none' to Python None for the
compression_type argument to KafkaProducer.
- Add kafka-python to test-requirements.txt.
- Enable CI triggers on the feature/integration-tests branch.
Generated-By: OpenCode (google-vertex-anthropic/claude-sonnet-4-6@default)
0 commit comments