From f56a8db34d8527a54dcd86f8b55a1636a54df843 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Thu, 24 Oct 2019 08:41:33 -0500 Subject: [PATCH] ceph-daemon: only set up crash dir mount if it exists Sometimes we run containers on a host that doesn't have a crash dir set up (becuase no daemon has been deployed). Examples include shell and ceph-volume. Signed-off-by: Sage Weil --- qa/standalone/test_ceph_daemon.sh | 4 ++++ src/ceph-daemon | 4 +++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/qa/standalone/test_ceph_daemon.sh b/qa/standalone/test_ceph_daemon.sh index 444c005b652..69ecb242646 100755 --- a/qa/standalone/test_ceph_daemon.sh +++ b/qa/standalone/test_ceph_daemon.sh @@ -30,6 +30,10 @@ $SUDO $CEPH_DAEMON --image $IMAGE version | grep 'ceph version' # try force docker; this won't work if docker isn't installed which docker && ( $SUDO $CEPH_DAEMON --docker version | grep 'ceph version' ) +## test shell before bootstrap, when crash dir isn't (yet) present on this host +$SUDO $CEPH_DAEMON shell -- ceph -v | grep 'ceph version' +$SUDO $CEPH_DAEMON shell --fsid $FSID -- ceph -v | grep 'ceph version' + ## bootstrap ORIG_CONFIG=`mktemp -p $TMPDIR` CONFIG=`mktemp -p $TMPDIR` diff --git a/src/ceph-daemon b/src/ceph-daemon index 2fa8647b97d..c7bfcd55f65 100755 --- a/src/ceph-daemon +++ b/src/ceph-daemon @@ -339,7 +339,9 @@ def get_container_mounts(fsid, daemon_type, daemon_id): if fsid: log_dir = get_log_dir(fsid) mounts[log_dir] = '/var/log/ceph:z' - mounts['/var/lib/ceph/%s/crash' % fsid] = '/var/lib/ceph/crash:z' + crash_dir = '/var/lib/ceph/%s/crash' % fsid + if os.path.exists(crash_dir): + mounts[crash_dir] = '/var/lib/ceph/crash:z' if daemon_id: data_dir = get_data_dir(fsid, daemon_type, daemon_id) -- 2.39.5