diff --git a/hooks/keystone_hooks.py b/hooks/keystone_hooks.py index 2eb8e2eb..f3491301 100755 --- a/hooks/keystone_hooks.py +++ b/hooks/keystone_hooks.py @@ -50,6 +50,7 @@ from charmhelpers.core.hookenv import ( open_port, is_leader, relation_id, + leader_set, ) from charmhelpers.core.host import ( @@ -393,6 +394,13 @@ def db_changed(): update_all_identity_relation_units() +@hooks.hook('shared-db-relation-departed', + 'shared-db-relation-broken') +def db_departed_or_broken(): + if is_leader(): + leader_set({'db-initialised': None}) + + @hooks.hook('identity-service-relation-changed') @restart_on_change(restart_map(), restart_functions=restart_function_map()) def identity_changed(relation_id=None, remote_unit=None): diff --git a/hooks/shared-db-relation-broken b/hooks/shared-db-relation-broken new file mode 120000 index 00000000..dd3b3eff --- /dev/null +++ b/hooks/shared-db-relation-broken @@ -0,0 +1 @@ +keystone_hooks.py \ No newline at end of file diff --git a/hooks/shared-db-relation-departed b/hooks/shared-db-relation-departed new file mode 120000 index 00000000..dd3b3eff --- /dev/null +++ b/hooks/shared-db-relation-departed @@ -0,0 +1 @@ +keystone_hooks.py \ No newline at end of file