@@ -857,12 +857,6 @@ def _on_start(self, event: StartEvent) -> None:
857
857
if not self .unit .is_leader ():
858
858
return
859
859
860
- if not self .get_secret (APP_SCOPE , Config .WebhookManager .CRT_SECRET ) or not self .get_secret (
861
- APP_SCOPE , Config .WebhookManager .KEY_SECRET
862
- ):
863
- cert , key = gen_certificate (SERVICE_NAME , self .model .name )
864
- self .set_secret (APP_SCOPE , Config .WebhookManager .CRT_SECRET , cert .decode ())
865
- self .set_secret (APP_SCOPE , Config .WebhookManager .KEY_SECRET , key .decode ())
866
860
self ._initialise_replica_set (event )
867
861
try :
868
862
self ._initialise_users (event )
@@ -1384,6 +1378,17 @@ def _check_or_set_keyfile(self) -> None:
1384
1378
if not self .get_secret (APP_SCOPE , "keyfile" ):
1385
1379
self ._generate_keyfile ()
1386
1380
1381
+ def _check_or_set_webhook_certs (self ) -> None :
1382
+ """Set TLS certs for webhooks."""
1383
+ if not self .unit .is_leader ():
1384
+ return
1385
+ if not self .get_secret (APP_SCOPE , "webhook-certificate" ) or not self .get_secret (
1386
+ APP_SCOPE , "webhook-key"
1387
+ ):
1388
+ cert , key = gen_certificate (Config .WebhookManager .SERVICE_NAME , self .model .name )
1389
+ self .set_secret (APP_SCOPE , "webhook-certificate" , cert .decode ())
1390
+ self .set_secret (APP_SCOPE , "webhook-key" , key .decode ())
1391
+
1387
1392
def _generate_keyfile (self ) -> None :
1388
1393
self .set_secret (APP_SCOPE , "keyfile" , generate_keyfile ())
1389
1394
@@ -1410,8 +1415,8 @@ def _generate_secrets(self) -> None:
1410
1415
"""
1411
1416
self ._check_or_set_user_password (OperatorUser )
1412
1417
self ._check_or_set_user_password (MonitorUser )
1413
-
1414
1418
self ._check_or_set_keyfile ()
1419
+ self ._check_or_set_webhook_certs ()
1415
1420
1416
1421
def _initialise_replica_set (self , event : StartEvent ) -> None :
1417
1422
"""Initialise replica set and create users."""
0 commit comments