Skip to content

Commit 786f28c

Browse files
committed
mgr/cephadm: Remove Grafana self-signed certificate migration logic
Remove the code used to migrate Grafana self-signed certificates, as it is no longer needed. The certmgr logic now handles generating new certificates during the upgrade, eliminating the need for any migration code or logic. Signed-off-by: Redouane Kachach <[email protected]>
1 parent 9e05171 commit 786f28c

File tree

2 files changed

+7
-28
lines changed

2 files changed

+7
-28
lines changed

src/pybind/mgr/cephadm/migrations.py

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -446,16 +446,12 @@ def migrate_6_7(self) -> bool:
446446
grafana_cert = self.mgr.get_store(grafana_cert_path)
447447
grafana_key = self.mgr.get_store(grafana_key_path)
448448
if grafana_cert:
449-
(org, cn) = get_cert_issuer_info(grafana_cert)
450-
if org == 'Ceph':
451-
logger.info(f'Migrating {grafana_daemon.name()}/{hostname} cert/key to cert store (as cephadm-signed certs)')
452-
self.mgr.cert_mgr.register_self_signed_cert_key_pair('grafana')
453-
self.mgr.cert_mgr.save_self_signed_cert_key_pair('grafana', CertKeyPair(grafana_cert, grafana_key), host=hostname)
454-
else:
449+
org, _ = get_cert_issuer_info(grafana_cert)
450+
if org != 'Ceph':
455451
logger.info(f'Migrating {grafana_daemon.name()}/{hostname} cert/key to cert store (as custom-certs)')
456452
grafana_cephadm_signed_certs = False
457-
self.mgr.cert_mgr.save_cert('grafana_ssl_cert', grafana_cert, host=hostname)
458-
self.mgr.cert_mgr.save_key('grafana_ssl_key', grafana_key, host=hostname)
453+
self.mgr.cert_mgr.save_cert('grafana_ssl_cert', grafana_cert, host=hostname, user_made=True, editable=True)
454+
self.mgr.cert_mgr.save_key('grafana_ssl_key', grafana_key, host=hostname, user_made=True, editable=True)
459455

460456
if not grafana_cephadm_signed_certs:
461457
# Update the spec to specify the right certificate source

src/pybind/mgr/cephadm/tests/test_migration.py

Lines changed: 3 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,8 @@
88
RGWSpec,
99
IngressSpec,
1010
IscsiServiceSpec,
11-
GrafanaSpec
11+
GrafanaSpec,
12+
CertificateSource
1213
)
1314
from ceph.utils import datetime_to_str, datetime_now
1415
from cephadm import CephadmOrchestrator
@@ -402,25 +403,6 @@ def test_migrate_rgw_spec(cephadm_module: CephadmOrchestrator, rgw_spec_store_en
402403
assert 'rgw.foo' not in cephadm_module.spec_store.all_specs
403404

404405

405-
@mock.patch('cephadm.migrations.get_cert_issuer_info')
406-
def test_migrate_grafana_cephadm_signed(mock_get_cert_issuer_info, cephadm_module: CephadmOrchestrator):
407-
mock_get_cert_issuer_info.return_value = ('Ceph', 'MockCephCN')
408-
409-
cephadm_module.set_store('host1/grafana_crt', 'grafana_cert1')
410-
cephadm_module.set_store('host1/grafana_key', 'grafana_key1')
411-
cephadm_module.set_store('host2/grafana_crt', 'grafana_cert2')
412-
cephadm_module.set_store('host2/grafana_key', 'grafana_key2')
413-
cephadm_module.cache.daemons = {'host1': {'grafana.host1': DaemonDescription('grafana', 'host1', 'host1')},
414-
'host2': {'grafana.host2': DaemonDescription('grafana', 'host2', 'host2')}}
415-
416-
cephadm_module.migration.migrate_6_7()
417-
418-
assert cephadm_module.cert_mgr.get_cert('cephadm-signed_grafana_cert', host='host1')
419-
assert cephadm_module.cert_mgr.get_cert('cephadm-signed_grafana_cert', host='host2')
420-
assert cephadm_module.cert_mgr.get_key('cephadm-signed_grafana_key', host='host1')
421-
assert cephadm_module.cert_mgr.get_key('cephadm-signed_grafana_key', host='host2')
422-
423-
424406
@mock.patch('cephadm.migrations.get_cert_issuer_info')
425407
def test_migrate_grafana_custom_certs(mock_get_cert_issuer_info, cephadm_module: CephadmOrchestrator):
426408
from datetime import datetime, timezone
@@ -445,6 +427,7 @@ def test_migrate_grafana_custom_certs(mock_get_cert_issuer_info, cephadm_module:
445427
assert cephadm_module.cert_mgr.get_cert('grafana_ssl_cert', host='host2')
446428
assert cephadm_module.cert_mgr.get_key('grafana_ssl_key', host='host1')
447429
assert cephadm_module.cert_mgr.get_key('grafana_ssl_key', host='host2')
430+
assert cephadm_module.spec_store._specs['grafana'].certificate_source == CertificateSource.REFERENCE.value
448431

449432

450433
def test_migrate_cert_store(cephadm_module: CephadmOrchestrator):

0 commit comments

Comments
 (0)