7
7
8
8
from literals import DATABASE_NAME , LEGACY_MYSQL_RELATION
9
9
from ops .framework import Object
10
- from ops .model import ActiveStatus , BlockedStatus
10
+ from ops .model import BlockedStatus
11
11
12
12
logger = logging .getLogger (__name__ )
13
13
@@ -25,6 +25,9 @@ def __init__(self, charm):
25
25
self .framework .observe (
26
26
charm .on [LEGACY_MYSQL_RELATION ].relation_broken , self ._on_relation_broken
27
27
)
28
+ self .framework .observe (
29
+ charm .on .get_legacy_mysql_credentials_action , self ._get_legacy_mysql_credentials
30
+ )
28
31
29
32
def _on_relation_joined (self , event ):
30
33
if not self .charm .unit .is_leader ():
@@ -71,3 +74,14 @@ def _on_relation_broken(self, _):
71
74
self .charm .app_peer_data .pop (f"{ LEGACY_MYSQL_RELATION } -password" , None )
72
75
self .charm .app_peer_data .pop (f"{ LEGACY_MYSQL_RELATION } -host" , None )
73
76
self .charm .app_peer_data .pop (f"{ LEGACY_MYSQL_RELATION } -database" , None )
77
+
78
+ def _get_legacy_mysql_credentials (self , event ) -> None :
79
+ """Retrieve legacy mariadb credentials."""
80
+ event .set_results (
81
+ {
82
+ "username" : self .charm .app_peer_data [f"{ LEGACY_MYSQL_RELATION } -user" ],
83
+ "password" : self .charm .app_peer_data [f"{ LEGACY_MYSQL_RELATION } -password" ],
84
+ "host" : self .charm .app_peer_data [f"{ LEGACY_MYSQL_RELATION } -host" ],
85
+ "database" : self .charm .app_peer_data [f"{ LEGACY_MYSQL_RELATION } -database" ],
86
+ }
87
+ )
0 commit comments