From 6feec58aaa8fb8717e6bc0397166937d59744778 Mon Sep 17 00:00:00 2001 From: Redouane Kachach Date: Wed, 29 Mar 2023 10:48:30 +0200 Subject: [PATCH] mgr/cephadm: use a dedicated cephadm tmp dir to copy remote files Fixes: https://tracker.ceph.com/issues/59189 Signed-off-by: Redouane Kachach (cherry picked from commit ef958d47b44f8e4579ae380bd9d6890c0c62e13a) --- src/pybind/mgr/cephadm/ssh.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/pybind/mgr/cephadm/ssh.py b/src/pybind/mgr/cephadm/ssh.py index 8134cc0d944..7ce4e463b92 100644 --- a/src/pybind/mgr/cephadm/ssh.py +++ b/src/pybind/mgr/cephadm/ssh.py @@ -223,14 +223,15 @@ class SSHManager: addr: Optional[str] = None, ) -> None: try: + cephadm_tmp_dir = f"/tmp/cephadm-{self.mgr._cluster_fsid}" dirname = os.path.dirname(path) await self._check_execute_command(host, ['mkdir', '-p', dirname], addr=addr) - await self._check_execute_command(host, ['mkdir', '-p', '/tmp' + dirname], addr=addr) - tmp_path = '/tmp' + path + '.new' + await self._check_execute_command(host, ['mkdir', '-p', cephadm_tmp_dir + dirname], addr=addr) + tmp_path = cephadm_tmp_dir + path + '.new' await self._check_execute_command(host, ['touch', tmp_path], addr=addr) if self.mgr.ssh_user != 'root': assert self.mgr.ssh_user - await self._check_execute_command(host, ['chown', '-R', self.mgr.ssh_user, tmp_path], addr=addr) + await self._check_execute_command(host, ['chown', '-R', self.mgr.ssh_user, cephadm_tmp_dir], addr=addr) await self._check_execute_command(host, ['chmod', str(644), tmp_path], addr=addr) with NamedTemporaryFile(prefix='cephadm-write-remote-file-') as f: os.fchmod(f.fileno(), 0o600) -- 2.39.5