Skip to content

[ST] Initial Proxy setup and simple virtual kafka cluster test#2353

Open
jankalinic wants to merge 5 commits intostreamshub:mainfrom
jankalinic:proxy-st
Open

[ST] Initial Proxy setup and simple virtual kafka cluster test#2353
jankalinic wants to merge 5 commits intostreamshub:mainfrom
jankalinic:proxy-st

Conversation

@jankalinic
Copy link
Contributor

@jankalinic jankalinic commented Feb 26, 2026

This PR lays the ground for kroxylicous support and introduces an initial virtual Kafka cluster test scenario. The aim of this work is to start validating kroxy integration.

PR adds:

  • fetching all resources (install and examples) from the kroxylicious repo using kroxyversion env to get released tar.gz archive
  • kroxy-api package to systemtest pom
  • Kroxylicious operator setup
  • default Kroxy components setup with auth configuration
  • custom types that help waiting for the correct status for readiness
  • new proxy pod label
  • utilities like normalization for kafka version that is captured from metadata instead of kafka CR (for virtual clusters)
  • small refactor of directories to keep the systemtests transparent
  • initial Virtual Kafka Cluster display test

@jankalinic jankalinic added the do not merge Do not merge just yet. Work is still in progress label Feb 26, 2026
@jankalinic
Copy link
Contributor Author

/systemtests run --testcase=KroxyST --retry-count=1

Signed-off-by: jkalinic <jkalinic@redhat.com>
Signed-off-by: jkalinic <jkalinic@redhat.com>

# Conflicts:
#	systemtests/src/main/java/com/github/streamshub/systemtests/constants/Labels.java
Signed-off-by: jkalinic <jkalinic@redhat.com>
Signed-off-by: jkalinic <jkalinic@redhat.com>
Signed-off-by: jkalinic <jkalinic@redhat.com>
@sonarqubecloud
Copy link

@jankalinic
Copy link
Contributor Author

/systemtests run --testcase=KroxyST --retry-count=0

@streamshub-bot
Copy link

✅ Systemtests run finished - success ✅

Test Summary:

  • TOTAL: 1
  • PASS: 1
  • FAIL: 0
  • SKIP: 0

Used parameters:

  • TEST_CASE: KroxyST
  • PROFILE:
  • INSTALL_TYPE: olm
  • RETRY_COUNT: 0
  • ENVS:

@jankalinic jankalinic added ready for review Pull request is ready for a static review and removed do not merge Do not merge just yet. Work is still in progress labels Feb 26, 2026
@jankalinic jankalinic requested a review from MikeEdgar February 26, 2026 18:42
@jankalinic jankalinic self-assigned this Feb 26, 2026
Comment on lines +114 to +117
public static final String BOOTSTRAP_SERVERS = "bootstrap.servers";
public static final String SECURITY_PROTOCOL = "security.protocol";
public static final String SASL_MECHANISM = "sasl.mechanism";
public static final String SASL_JAAS_CONFIG = "sasl.jaas.config";
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI, these are defined in Kafka's CommonClientConfigs and SaslConfigs classes.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Wonderful, thanks!

import java.util.Optional;
import java.util.function.Consumer;

public class KafkaProtocolFilterType implements ResourceType<KafkaProtocolFilter> {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just a thought for a future PR - you can probably push most of this class and the others that extend ResourceType into an intermediate super-class with generics that accepts the Class<T> of the resource.

@MikeEdgar MikeEdgar added this to the 0.11.1 milestone Mar 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ready for review Pull request is ready for a static review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants