From: Adam King Date: Mon, 21 Feb 2022 21:34:47 +0000 (-0500) Subject: cephadm: still set container_image when --no-assimilate-config is provided X-Git-Tag: v18.0.0~1334^2 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=59d004cb901eb6d84fb6907cb88314fd31b87904;p=ceph.git cephadm: still set container_image when --no-assimilate-config is provided Fixes: https://tracker.ceph.com/issues/54141 Signed-off-by: Adam King --- diff --git a/src/cephadm/cephadm b/src/cephadm/cephadm index 18094344b530c..ceed17dab700c 100755 --- a/src/cephadm/cephadm +++ b/src/cephadm/cephadm @@ -4872,6 +4872,9 @@ def finish_bootstrap_config( 'restart', get_unit_name(fsid, 'mon', mon_id) ]) + elif 'image' in ctx and ctx.image: + # we still want to assimilate the given container image if provided + cli(['config', 'set', 'global', 'container_image', f'{ctx.image}']) if mon_network: logger.info(f'Setting mon public_network to {mon_network}') diff --git a/src/cephadm/tests/test_cephadm.py b/src/cephadm/tests/test_cephadm.py index fc5f8e26ab618..172fbaa23e328 100644 --- a/src/cephadm/tests/test_cephadm.py +++ b/src/cephadm/tests/test_cephadm.py @@ -561,6 +561,26 @@ ff792c06d8544b983.scope not found.: OCI runtime error""" with mock.patch('os.listdir', return_value=test_input): assert cd.get_ceph_cluster_count(ctx) == expected + def test_set_image_minimize_config(self): + def throw_cmd(cmd): + raise cd.Error(' '.join(cmd)) + ctx = cd.CephadmContext() + ctx.image = 'test_image' + ctx.no_minimize_config = True + fake_cli = lambda cmd, __=None, ___=None: throw_cmd(cmd) + with pytest.raises(cd.Error, match='config set global container_image test_image'): + cd.finish_bootstrap_config( + ctx=ctx, + fsid=cd.make_fsid(), + config='', + mon_id='a', mon_dir='mon_dir', + mon_network=None, ipv6=False, + cli=fake_cli, + cluster_network=None, + ipv6_cluster_network=False + ) + + class TestCustomContainer(unittest.TestCase): cc: cd.CustomContainer