Skip to content

Conversation

@chrisseto
Copy link
Contributor

This commit adds a standalone Console CR and its controller. Unlike the console stanza in the redpanda chart, this CR deploys console V3.

This commit does NOT include a migration from the subchart to the new CR. That will be implemented later.

require.NoError(t, ctl.Apply(t.Context(), console))

// Reconcile the console a few times to ensure determinism.
for range 3 {
Copy link
Contributor Author

Choose a reason for hiding this comment

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

@RafalKorepta fixed your previous point by moving everything into the loop.

I've also updated the golden files to include the GVK.

@github-actions
Copy link

This PR is stale because it has been open 5 days with no activity. Remove stale label or comment or this will be closed in 5 days.

@github-actions github-actions bot added the stale label Sep 30, 2025
@chrisseto chrisseto removed the stale label Oct 1, 2025
@chrisseto chrisseto force-pushed the chris/p/console-cr branch 2 times, most recently from a2de539 to e243f95 Compare October 1, 2025 21:27
@chrisseto chrisseto marked this pull request as ready for review October 1, 2025 21:29
@chrisseto
Copy link
Contributor Author

chrisseto commented Oct 1, 2025

There's one outstanding issue with the field indexing I need to look into but otherwise this is ready for review!

field indexing issue fixed!

@chrisseto
Copy link
Contributor Author

Documentation and the migration or v2 workaround will be handled in a follow up PR.

Copy link
Contributor

@andrewstucki andrewstucki left a comment

Choose a reason for hiding this comment

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

A few suggestions on DRY'ing this up a bit with some of the ways we're leveraging ClusterSource, only one real necessary change just for correctness if you don't want to leverage those helpers: have to check the Kind/Group of the clusterRef.

// Pod eviction happens in a timely fashion.
`--k3s-arg`, `--kube-apiserver-arg=default-not-ready-toleration-seconds=10@server:*`,
`--k3s-arg`, `--kube-apiserver-arg=default-unreachable-toleration-seconds=10@server:*`,
// Disable the traefik Ingress controller. We don't use Ingress for
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This makes a bigger difference than I expected!


start := time.Now()
lastLog := start
interval := intervalFromDeadline(ctx)
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Modified this to make tests run slightly faster as I didn't want to take on the overhead of a fully refactor 😅

@chrisseto chrisseto requested a review from andrewstucki October 7, 2025 19:22
@chrisseto chrisseto force-pushed the chris/p/console-cr branch 2 times, most recently from f2c9880 to 56b9dfa Compare October 8, 2025 17:56
// InsecureSkipTLSVerify can skip verifying Redpanda self-signed certificate when establish TLS connection to Redpanda
// +optional
InsecureSkipTLSVerify bool `json:"insecureSkipTlsVerify"`
InsecureSkipTLSVerify bool `json:"insecureSkipTlsVerify,omitempty"`
Copy link
Contributor Author

Choose a reason for hiding this comment

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

This was a subtle issue. In the acceptance test for this, I did not specify this key. So when the controller tried to apply the finalizer, it was also trying to add insecureSkipTlsVerify: false and hitting validation errors because we mark this field as immutable. Adding omitempty prevents it from being serialized if it's false.

Copy link
Contributor

@andrewstucki andrewstucki left a comment

Choose a reason for hiding this comment

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

some nits to maybe fix up, but since you're trying to figure out the v1 testing too, might want to take a look

Move `redpanda.ParseCLIArgs` -> `pkg/chartutils.ParseFlags` to allow sharing
across charts. Improve the operator chart's merging of
`values.AdditionalCmdFlags` in preparation for new flags.
@chrisseto
Copy link
Contributor Author

Hopefully this last push should do it.

I did a bit of chart refactoring in 335c0e1. The console controller will be off by default and the chart enables it by default so v1 tests should continue to work untouched.

@chrisseto chrisseto enabled auto-merge (rebase) October 9, 2025 16:08
@chrisseto chrisseto force-pushed the chris/p/console-cr branch 2 times, most recently from 9b7faa7 to 0bd4203 Compare October 9, 2025 19:31
This commit adds a standalone `Console` CR and its controller. Unlike the
console stanza in the redpanda chart, this CR deploys console V3.

This commit does NOT include a migration from the subchart to the new CR. That
will be implemented later.
@chrisseto chrisseto merged commit d831918 into main Oct 13, 2025
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Included Redpanda Console can't connect to Redpanda with activated SASL

4 participants