You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add podLevel TLS between OpenStackAssistant and MCP server sidecar
Adds TLS encryption for the Streamable HTTP connection between the
OpenStackAssistant pod (Goose) and the rhos-ls-mcps MCP server sidecar
running in the OpenStackClient pod. TLS is conditional: enabled when
CaBundleSecretName is set on the OpenStackClient (indicating TLS is
active in the cluster via the OpenStackControlPlane).
When enabled, the OpenStackClient controller creates a cert-manager
Certificate using the existing rootca-internal issuer for the MCP
service endpoint. The resulting TLS cert/key are mounted into the
MCP sidecar container and referenced in the rhos-mcps config.yaml
via the new tls.ssl_certfile/ssl_keyfile fields. The assistant
controller switches resolved MCP URLs from http:// to https:// when
the referenced OpenStackClient has TLS enabled, and the existing
combined-ca-bundle mount provides the internal CA for verification.
The existing TLS between the MCP server sidecar and OpenStack services
(Keystone etc. via OS_CACERT/REQUESTS_CA_BUNDLE) is unchanged.
Also fixes the mcp-ca-bundle SubPath in the assistant pod from
"ca-bundle.crt" to "tls-ca-bundle.pem" to match the actual key
in the combined-ca-bundle secret.
Files changed:
- internal/controller/client/openstackclient_controller.go
- internal/openstackclient/funcs.go
- internal/controller/assistant/openstackassistant_controller.go
- internal/openstackassistant/funcs.go
- internal/openstackassistant/funcs_test.go
0 commit comments