Repository navigation
feat: Kafka admin client #1045
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
feat: Kafka admin client #1045
Changes from all commits
Commits
Show all changes
76 commits
Select commit
Hold shift + click to select a range
578d2c7
Add agent-binary as workspace member
labrenbe 2a1fae0
deploy the agent if spec.platformAcces.enabled is configured
labrenbe f15777c
add agent image and cluster role to Helm chart
labrenbe ed51b0e
build a separate agent image
labrenbe f01e5ce
Merge remote-tracking branch 'origin/main' into feat/kafka-agent
labrenbe 9507079
run ghs build for matrix of operator and agent
labrenbe 177cfb1
move staged framework code to operator-rs
labrenbe 7f6d5a1
fix issues identified by Claude
labrenbe e5f431b
add support for anonymous access via operator-rs
labrenbe 18a4ff2
use versioned for platform access CRD fragments
labrenbe c26dc42
add kafka admin client managing topics, topic config and partition count
labrenbe 87a5479
add support for list_partition_reassignments
labrenbe 798619e
replace kafka_error with semantic error checks in the kafka admin client
labrenbe d0a7abb
remove is retryable checks for kafka errors
labrenbe 95581f0
simplify kafka error handling
labrenbe 69ed88e
add a flag for topic already exists errors
labrenbe 773d3bd
use the recreate strategy for the agent deployment
labrenbe 679a24a
ship agent binary in operator image
labrenbe 0a9ce61
Merge remote-tracking branch 'origin/main' into feat/kafka-agent
labrenbe 85716c9
cleanup & only watch deployments with agent labels
labrenbe 8241cb3
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 58e3393
use BrokerAddress in more places and remove awaiting_response
labrenbe 198e800
fix flaky unit test
labrenbe 668119f
return the created topic and all configs with their source from the k…
labrenbe 146602d
set fsGroup on the agent pod so it can read secret-operator volumes
labrenbe dec1799
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 60f0123
align CRD and validation with operator-rs and decision outcome
labrenbe 1d68476
configure the agent's connection to Kafka via a shared contract crate
labrenbe 75eb776
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 87a290e
use AgentResourceNames from operator-rs
labrenbe b95fb0a
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 469caf2
Merge branch 'main' into feat/kafka-agent
labrenbe 61b1005
update operator-rs
labrenbe e0e76ed
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 66bf00b
replace hard-coded selectors on agent deployment with util from opera…
labrenbe 51e863a
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 14f9ee8
use headless service to connect to bootstrap servers
labrenbe cbde956
rename cb_agent to container_builder_agent
labrenbe e5e54fd
add deref tests for new constants
labrenbe 9549489
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 42d02bf
regenerate-nix
labrenbe e7d2299
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 150886f
return only topic-level config and no source
labrenbe 56b9894
document source of magic kafka numbers
labrenbe 1aee2b0
use ApiKey enum
labrenbe bdda9d0
bump operator-rs
labrenbe b435ce4
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe a89b5db
regenerate nix
labrenbe 2f23562
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 43657d4
regenerate nix
labrenbe cb10888
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe a326d59
retry broken connection requests immediatly with a new connection
labrenbe f579456
update operator-rs
labrenbe 048ff91
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 28efc85
improve broker address Display impl
labrenbe 82f8950
build the tls config once instead of per-server
labrenbe 1937b53
keep the connection if only the version check fails
labrenbe b00fe65
rename helpers and doc comments to be more descriptive
labrenbe 8b7c86d
Merge remote-tracking branch 'origin/main' into feat/kafka-agent
labrenbe 8ec0341
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe 78c0344
Merge remote-tracking branch 'origin/main' into feat/kafka-agent
labrenbe cc89f97
use stackable-operator 0.122.0
labrenbe f14c358
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe efb02c4
add readiness and liveness probes
labrenbe 6735148
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe b4111e0
fix Cargo.toml
labrenbe d5eeca9
Try every address of a bootstrap server when connecting
labrenbe 187fe58
Skip connecting for 30 s after all bootstrap servers failed
labrenbe 132bde5
Merge remote-tracking branch 'origin/main' into feat/kafka-agent
labrenbe 53c0e8a
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe f8fe3c8
Start the connect cooldown only after a slow failure
labrenbe e60b478
update serde-saphyr to 2.1.1. 2.1.0 was yanked
labrenbe 0bb764a
Merge branch 'feat/kafka-agent' into feat/kafka-admin
labrenbe bd546d8
Merge remote-tracking branch 'origin/main' into feat/kafka-admin
labrenbe 30d5a5a
address feedback on PR
labrenbe 108b7c6
fix prek
labrenbe File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,25 @@ | ||
| [package] | ||
| name = "stackable-kafka-admin" | ||
| description = "Kafka admin client of the Stackable agent for Apache Kafka" | ||
| version.workspace = true | ||
| authors.workspace = true | ||
| license.workspace = true | ||
| edition.workspace = true | ||
| repository.workspace = true | ||
| publish = false | ||
|
|
||
| [dependencies] | ||
| anyhow.workspace = true | ||
| base64.workspace = true | ||
| bytes.workspace = true | ||
| futures.workspace = true | ||
| kafka-protocol.workspace = true | ||
| rustls.workspace = true | ||
| snafu.workspace = true | ||
| tokio.workspace = true | ||
| tokio-rustls.workspace = true | ||
| tokio-util.workspace = true | ||
|
|
||
| [dev-dependencies] | ||
| rstest.workspace = true | ||
| tokio = { workspace = true, features = ["test-util"] } |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.