mirror of
https://github.com/ceph/ceph
synced 2026-08-02 07:03:18 +00:00
Merge pull request #69882 from guits/node-proxy-spec-fix
node-proxy: fix NodeProxySpec deserialization from JSON Reviewed-by: Adam King <adking@redhat.com>
This commit is contained in:
commit
a46915de23
@ -4357,11 +4357,28 @@ class NodeProxySpec(ServiceSpec):
|
||||
def __init__(self,
|
||||
service_type: str,
|
||||
placement: Optional[PlacementSpec] = None,
|
||||
ssl: Optional[bool] = True,
|
||||
certificate_source: Optional[str] = None,
|
||||
unmanaged: bool = False,
|
||||
preview_only: bool = False,
|
||||
extra_container_args: Optional[GeneralArgList] = None,
|
||||
extra_entrypoint_args: Optional[GeneralArgList] = None,
|
||||
custom_configs: Optional[List[CustomConfig]] = None,
|
||||
) -> None:
|
||||
assert service_type == 'node-proxy'
|
||||
super(NodeProxySpec, self).__init__('node-proxy', placement=placement)
|
||||
self.ssl: bool = True
|
||||
super(NodeProxySpec, self).__init__(
|
||||
'node-proxy',
|
||||
placement=placement,
|
||||
ssl=ssl,
|
||||
certificate_source=certificate_source,
|
||||
unmanaged=unmanaged,
|
||||
preview_only=preview_only,
|
||||
extra_container_args=extra_container_args,
|
||||
extra_entrypoint_args=extra_entrypoint_args,
|
||||
custom_configs=custom_configs,
|
||||
)
|
||||
self.validate()
|
||||
|
||||
|
||||
yaml.add_representer(NodeProxySpec, ServiceSpec.yaml_representer)
|
||||
yaml.add_representer(SMBSpec, ServiceSpec.yaml_representer)
|
||||
|
||||
@ -15,6 +15,7 @@ from ceph.deployment.service_spec import (
|
||||
IngressSpec,
|
||||
IscsiServiceSpec,
|
||||
NFSServiceSpec,
|
||||
NodeProxySpec,
|
||||
OAuth2ProxySpec,
|
||||
PlacementSpec,
|
||||
PrometheusSpec,
|
||||
@ -337,6 +338,18 @@ def test_osd_unmanaged():
|
||||
assert dg_spec.unmanaged == True
|
||||
|
||||
|
||||
def test_node_proxy_unmanaged():
|
||||
node_proxy_spec = {"placement": {"host_pattern": "*"},
|
||||
"service_name": "node-proxy",
|
||||
"service_type": "node-proxy",
|
||||
"unmanaged": True}
|
||||
|
||||
spec = ServiceSpec.from_json(node_proxy_spec)
|
||||
assert isinstance(spec, NodeProxySpec)
|
||||
assert spec.unmanaged is True
|
||||
ServiceSpec.from_json(spec.to_json())
|
||||
|
||||
|
||||
@pytest.mark.parametrize("y",
|
||||
"""service_type: crash
|
||||
service_name: crash
|
||||
|
||||
Loading…
Reference in New Issue
Block a user