From: John Mulligan Date: Wed, 16 Jul 2025 21:08:49 +0000 (-0400) Subject: python-common/deployment: add keybridge feature to smb service spec X-Git-Tag: testing/wip-pdonnell-testing-20260323.122957-tentacle~639 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=42e6888afc9bdb5cf853dda81fb93452b3ecdef7;p=ceph-ci.git python-common/deployment: add keybridge feature to smb service spec The keybridge sidecar is enabled by the keybridge feature flag. This sidecar will be used to help fetch keys over various protocols for the ceph module to use to set up fs encryption. Signed-off-by: John Mulligan (cherry picked from commit 44e9c408340d5af51a305cf58e5e0d186ffcb808) --- diff --git a/src/python-common/ceph/deployment/service_spec.py b/src/python-common/ceph/deployment/service_spec.py index dddc42c1959..c5b47a4e2ad 100644 --- a/src/python-common/ceph/deployment/service_spec.py +++ b/src/python-common/ceph/deployment/service_spec.py @@ -3794,6 +3794,10 @@ class SMBSpec(ServiceSpec): remote_control_ssl_cert: Optional[str] = None, remote_control_ssl_key: Optional[str] = None, remote_control_ca_cert: Optional[str] = None, + # == keybridge == + keybridge_kmip_ssl_cert: Optional[str] = None, + keybridge_kmip_ssl_key: Optional[str] = None, + keybridge_kmip_ca_cert: Optional[str] = None, # --- genearal tweaks --- extra_container_args: Optional[GeneralArgList] = None, extra_entrypoint_args: Optional[GeneralArgList] = None, @@ -3831,6 +3835,9 @@ class SMBSpec(ServiceSpec): self.remote_control_ssl_cert = remote_control_ssl_cert self.remote_control_ssl_key = remote_control_ssl_key self.remote_control_ca_cert = remote_control_ca_cert + self.keybridge_kmip_ssl_cert = keybridge_kmip_ssl_cert + self.keybridge_kmip_ssl_key = keybridge_kmip_ssl_key + self.keybridge_kmip_ca_cert = keybridge_kmip_ca_cert self.validate() def validate(self) -> None: diff --git a/src/python-common/ceph/smb/constants.py b/src/python-common/ceph/smb/constants.py index bc2961de49a..6d8a143f2de 100644 --- a/src/python-common/ceph/smb/constants.py +++ b/src/python-common/ceph/smb/constants.py @@ -8,9 +8,11 @@ CTDB = 'ctdb' # Feature names +# (please keep sorted) CEPHFS_PROXY = 'cephfs-proxy' CLUSTERED = 'clustered' DOMAIN = 'domain' +KEYBRIDGE = 'keybridge' REMOTE_CONTROL = 'remote-control' SMBMETRICS = 'smbmetrics' @@ -22,6 +24,7 @@ FEATURES = { CEPHFS_PROXY, CLUSTERED, DOMAIN, + KEYBRIDGE, REMOTE_CONTROL, }