feat(operator): Introduce passthrough tenancy - #20573
Conversation
7e8433e to
f947b02
Compare
f947b02 to
02a0053
Compare
040a534 to
982fc1d
Compare
7fa5758 to
c2c4fd0
Compare
c2c4fd0 to
f5bde66
Compare
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 3 potential issues.
Bugbot Autofix is ON, but it could not run because the branch was deleted or merged before autofix could start.
Reviewed by Cursor Bugbot for commit f5bde66. Configure here.
|
|
||
| // DefaultPassthroughGatewayImage declares the default image for passthrough gateway. | ||
| // TODO(JoaoBraveCoding) Update to openshift-logging image | ||
| DefaultPassthroughGatewayImage = "quay.io/jmarcal/passthrough-gateway:latest" |
There was a problem hiding this comment.
Default passthrough gateway image uses personal registry
Medium Severity
DefaultPassthroughGatewayImage is set to quay.io/jmarcal/passthrough-gateway:latest, a personal repository. This is the production fallback default when the RELATED_IMAGE_PASSTHROUGH_GATEWAY environment variable is not set. While a TODO comment exists, shipping this as a default means any deployment without the env var override will depend on a personal, non-official image registry.
Reviewed by Cursor Bugbot for commit f5bde66. Configure here.
f5bde66 to
1703c1e
Compare
xperimental
left a comment
There was a problem hiding this comment.
Main thing is that the options on the passthrough-gateway have changed (this also needs updated tests).
The question on which image we will use is an open point as well.
xperimental
left a comment
There was a problem hiding this comment.
Fine to merge, once the component PR is merged. 👍
Co-authored-by: Robert Jacob <rojacob@redhat.com> Signed-off-by: Joao Marcal <jmarcal@redhat.com>
Signed-off-by: Joao Marcal <jmarcal@redhat.com> Co-authored-by: Robert Jacob <rojacob@redhat.com>


What this PR does / why we need it:
This PR introduces a new tenancy mode called passthrough. This new tenancy mode was designed with the goal of delegating Authentication and Authorization to another component. Instead the new gateway will only server a central point of interaction with LokiStack and it will possibly enforce that requests to it contain a
X-Scope-OrgIDWhich issue(s) this PR fixes:
https://issues.redhat.com/browse/LOG-8331
Special notes for your reviewer:
CLF manifest with cert writing to LokiStack
Lokistack configured for passthrough
Checklist
CONTRIBUTING.mdguide (required)featPRs are unlikely to be accepted unless a case can be made for the feature actually being a bug fix to existing behavior.docs/sources/setup/upgrade/_index.mddeprecated-config.yamlanddeleted-config.yamlfiles respectively in thetools/deprecated-config-checkerdirectory. Example PRNote
Medium Risk
Adds a new tenancy mode that changes gateway deployment, image selection, and TLS/mTLS validation behavior; misconfiguration could break gateway connectivity or weaken/overconstrain client auth.
Overview
Adds a new
passthroughtenancy mode to the LokiStack API, includingtenants.passthroughconfiguration (cabundle and optionaldefaultTenant) and a new degraded condition reason (InvalidPassthroughConfiguration).Updates gateway reconciliation/manifests to deploy a different gateway implementation in passthrough mode (new passthrough deployment, different args/upstreams), enforce/validate mTLS CA presence when
HTTPEncryptionis enabled, skip rules-API wiring for this mode, and select a separate gateway image viaRELATED_IMAGE_PASSTHROUGH_GATEWAYwith a new default image.Regenerates CRDs/CSVs/bundles and docs to expose the new mode in UI descriptors and schema, adds related documentation (new
tenancy-modes.md), and extends unit tests for mode validation, degraded behavior, image selection, and passthrough gateway manifest/TLS wiring.Reviewed by Cursor Bugbot for commit 6874c31. Bugbot is set up for automated code reviews on this repo. Configure here.