From 785e4a623d47bb1118914146d94411b4a1556ac1 Mon Sep 17 00:00:00 2001 From: John Mulligan Date: Tue, 3 Oct 2023 13:39:12 -0400 Subject: [PATCH] cephadm: add unit test coverage for deploying nvmeof Signed-off-by: John Mulligan --- src/cephadm/tests/test_deploy.py | 39 ++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/src/cephadm/tests/test_deploy.py b/src/cephadm/tests/test_deploy.py index c392c9f4d7985..d11aca065fbfa 100644 --- a/src/cephadm/tests/test_deploy.py +++ b/src/cephadm/tests/test_deploy.py @@ -223,3 +223,42 @@ def test_deploy_iscsi_container(cephadm_fs, monkeypatch): assert f.read() == 'portal' si = os.fstat(f.fileno()) assert (si.st_uid, si.st_gid) == (8765, 8765) + + +def test_deploy_nvmeof_container(cephadm_fs, monkeypatch): + mocks = _common_mp(monkeypatch) + _firewalld = mocks['Firewalld'] + fsid = 'b01dbeef-701d-9abe-0000-e1e5a47004a7' + with with_cephadm_ctx([]) as ctx: + ctx.container_engine = mock_podman() + ctx.fsid = fsid + ctx.name = 'nvmeof.andu' + ctx.image = 'quay.io/ownf/nmve:latest' + ctx.reconfig = False + ctx.config_blobs = { + 'config': 'XXXXXXX', + 'keyring': 'YYYYYY', + 'files': { + 'ceph-nvmeof.conf': 'icantbeliveitsnotiscsi', + }, + } + _cephadm._common_deploy(ctx) + + basedir = pathlib.Path(f'/var/lib/ceph/{fsid}/nvmeof.andu') + assert basedir.is_dir() + with open(basedir / 'unit.run') as f: + runfile_lines = f.read().splitlines() + assert 'podman' in runfile_lines[-1] + assert runfile_lines[-1].endswith('quay.io/ownf/nmve:latest') + _firewalld().open_ports.assert_not_called() + with open(basedir / 'config') as f: + assert f.read() == 'XXXXXXX' + with open(basedir / 'keyring') as f: + assert f.read() == 'YYYYYY' + assert (basedir / 'configfs').is_dir() + si = (basedir / 'configfs').stat() + assert (si.st_uid, si.st_gid) == (167, 167) + with open(basedir / 'ceph-nvmeof.conf') as f: + assert f.read() == 'icantbeliveitsnotiscsi' + si = os.fstat(f.fileno()) + assert (si.st_uid, si.st_gid) == (167, 167) -- 2.39.5