Skip to content

Commit

Permalink
Merge pull request #591 from cvaroqui/20220929-fix-trigger-env
Browse files Browse the repository at this point in the history
Fix OPENSVC_* env var exposed to resource triggers following a volume…
  • Loading branch information
cvaroqui committed Sep 29, 2022
2 parents 282b6c5 + 642bfb8 commit 9f89af1
Showing 1 changed file with 12 additions and 0 deletions.
12 changes: 12 additions & 0 deletions opensvc/core/objects/svc.py
Expand Up @@ -525,6 +525,7 @@ def __init__(self, name=None, namespace=None, node=None, cf=None, cd=None, volat
self.hostid = Env.nodename
self.volatile = volatile
self.path = fmt_path(self.name, self.namespace, self.kind)
self.prev_env = None

if log:
self.set_lazy("log", log)
Expand Down Expand Up @@ -1139,6 +1140,7 @@ def call_action(action):
err = getattr(self, action)()
self.action_triggers("post", action)
self.action_triggers("blocking_post", action, blocking=True)
self.restore_environ()
return err

try:
Expand Down Expand Up @@ -1772,6 +1774,12 @@ def allow_on_this_node(self, action):
"DEFAULT.drpnode nor DEFAULT.drpnodes" %
(action, Env.nodename))

def restore_environ(self):
if self.prev_env is None:
return
os.environ.clear()
os.environ.update(self.prev_env)

def setup_environ(self, action=None, options=None):
"""
Setup envionment variables.
Expand All @@ -1784,9 +1792,12 @@ def setup_environ(self, action=None, options=None):
return
if not action and os.environ.get("OPENSVC_SVCPATH") == self.path:
return
self.prev_env = {}
self.prev_env.update(os.environ)
os.environ['OPENSVC_SVCPATH'] = self.path
os.environ['OPENSVC_SVCNAME'] = self.name
os.environ['OPENSVC_SVC_ID'] = self.id
os.environ['OPENSVC_KIND'] = self.kind
if self.namespace:
os.environ['OPENSVC_NAMESPACE'] = self.namespace
if action:
Expand Down Expand Up @@ -3930,6 +3941,7 @@ def get_rset_status(self, groups, refresh=False):
rsets_status = {}
for rset in self.get_resourcesets(groups):
rsets_status[rset.rid] = rset.status(refresh=refresh)
self.restore_environ()
return rsets_status

def need_encap_resource_monitor(self):
Expand Down

0 comments on commit 9f89af1

Please sign in to comment.