knative / knative/func

Kafka functions: integration and E2E tests

Open
#3,956 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Go
Stars
365
Forks
223
Avg merge
2d 3h
Merged PRs (30d)
25

Description

Add automated integration and E2E tests for Kafka event sourcing.

## Automated tests (CI)

- Function with `run.kafka` config deploys successfully
- Kafka env vars (`FUNC_TRANSPORT`, `KAFKA_BROKERS`, `KAFKA_TOPIC`, `KAFKA_CONSUMER_GROUP`) are propagated to the container
- Validation rejects incomplete Kafka config before deploy
- Validation rejects `run.kafka` on non-Go runtimes
- End-to-end: deploy a Kafka function, produce a message, verify the function receives and processes a CloudEvent

Requires a Kafka broker in the test environment (e.g. Strimzi on kind).

## Testing guide

Document how to manually test Kafka functions end-to-end on a local cluster — setting up kind + Knative + Kafka, deploying, producing messages, verifying.

Related:
- #3938 (E2E testing guide — can be merged into this issue or kept separate)
- #3950 (Kafka event sourcing PR)

Contributor guide

Open the contributing guide

Research direction

Start by reading #3950 and #3938, then review the existing CI and E2E setup for kind, Knative, and Kafka. Verify deployment, environment propagation, validation failures, and CloudEvent processing, and document the local setup and manual test flow when all checks pass.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kafka
Domain
distributed-systems, documentation, testing-qa
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.