From: Shweta Bhosale Date: Wed, 5 Feb 2025 12:55:51 +0000 (+0530) Subject: mgr/nfs: nodeid should be numeric for RADOS_KV block in ganesha.conf file X-Git-Tag: v20.0.0~114^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=c4947c5756240c52e570f8412f63e905c06a89af;p=ceph.git mgr/nfs: nodeid should be numeric for RADOS_KV block in ganesha.conf file Fixes: https://tracker.ceph.com/issues/69808 Signed-off-by: Shweta Bhosale --- diff --git a/src/pybind/mgr/cephadm/services/nfs.py b/src/pybind/mgr/cephadm/services/nfs.py index 8b6ea752d54..5a0a24baf93 100644 --- a/src/pybind/mgr/cephadm/services/nfs.py +++ b/src/pybind/mgr/cephadm/services/nfs.py @@ -48,7 +48,7 @@ class NFSService(CephService): if daemon_id is not None: self.fence(daemon_id) del rank_map[rank] - nodeid = f'{spec.service_name()}.{rank}' + nodeid = f'{rank}' self.mgr.log.info(f'Removing {nodeid} from the ganesha grace table') self.run_grace_tool(cast(NFSServiceSpec, spec), 'remove', nodeid) self.mgr.spec_store.save_rank_map(spec.service_name(), rank_map) @@ -82,7 +82,7 @@ class NFSService(CephService): deps: List[str] = [] - nodeid = f'{daemon_spec.service_name}.{daemon_spec.rank}' + nodeid = f'{daemon_spec.rank}' nfs_idmap_conf = '/etc/ganesha/idmap.conf' diff --git a/src/pybind/mgr/cephadm/templates/services/nfs/ganesha.conf.j2 b/src/pybind/mgr/cephadm/templates/services/nfs/ganesha.conf.j2 index b85ccd7b7fb..b34715d3ceb 100644 --- a/src/pybind/mgr/cephadm/templates/services/nfs/ganesha.conf.j2 +++ b/src/pybind/mgr/cephadm/templates/services/nfs/ganesha.conf.j2 @@ -26,7 +26,7 @@ NFSv4 { RADOS_KV { UserId = "{{ user }}"; - nodeid = "{{ nodeid }}"; + nodeid = {{ nodeid }}; pool = "{{ pool }}"; namespace = "{{ namespace }}"; } diff --git a/src/pybind/mgr/cephadm/tests/test_services.py b/src/pybind/mgr/cephadm/tests/test_services.py index a1bbe87276b..ed95d9c40af 100644 --- a/src/pybind/mgr/cephadm/tests/test_services.py +++ b/src/pybind/mgr/cephadm/tests/test_services.py @@ -3256,7 +3256,7 @@ class TestIngressService: '\n' 'RADOS_KV {\n' ' UserId = "nfs.foo.test.0.0";\n' - ' nodeid = "nfs.foo.None";\n' + ' nodeid = 0;\n' ' pool = ".nfs";\n' ' namespace = "foo";\n' '}\n' @@ -3357,6 +3357,7 @@ class TestIngressService: host='test', daemon_id='foo.test.0.0', service_name=nfs_service.service_name(), + rank=0, ), ) assert nfs_generated_conf == nfs_expected_conf