Repository: stratos
Updated Branches:
  refs/heads/master 23278fbee -> 3c880b65e


PCA - Fix env variables not being passed to extensions


Project: http://git-wip-us.apache.org/repos/asf/stratos/repo
Commit: http://git-wip-us.apache.org/repos/asf/stratos/commit/3c880b65
Tree: http://git-wip-us.apache.org/repos/asf/stratos/tree/3c880b65
Diff: http://git-wip-us.apache.org/repos/asf/stratos/diff/3c880b65

Branch: refs/heads/master
Commit: 3c880b65e399422d4c5009662aa0c11cf5cd45ea
Parents: 23278fb
Author: Chamila de Alwis <[email protected]>
Authored: Thu May 14 18:44:59 2015 +0530
Committer: Chamila de Alwis <[email protected]>
Committed: Thu May 14 18:45:08 2015 +0530

----------------------------------------------------------------------
 .../cartridge.agent/extensions/py/ExtensionExecutor.py        | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/stratos/blob/3c880b65/components/org.apache.stratos.python.cartridge.agent/src/main/python/cartridge.agent/cartridge.agent/extensions/py/ExtensionExecutor.py
----------------------------------------------------------------------
diff --git 
a/components/org.apache.stratos.python.cartridge.agent/src/main/python/cartridge.agent/cartridge.agent/extensions/py/ExtensionExecutor.py
 
b/components/org.apache.stratos.python.cartridge.agent/src/main/python/cartridge.agent/cartridge.agent/extensions/py/ExtensionExecutor.py
index fbd315b..afb4f8e 100644
--- 
a/components/org.apache.stratos.python.cartridge.agent/src/main/python/cartridge.agent/cartridge.agent/extensions/py/ExtensionExecutor.py
+++ 
b/components/org.apache.stratos.python.cartridge.agent/src/main/python/cartridge.agent/cartridge.agent/extensions/py/ExtensionExecutor.py
@@ -33,7 +33,7 @@ class ExtensionExecutor(ICartridgeAgentPlugin):
             # log.debug("%s => %s" % ("STRATOS_" + key, 
extension_values["STRATOS_" + key]))
 
         try:
-            output, errors = ExtensionExecutor.execute_script(event_name + 
".sh")
+            output, errors = ExtensionExecutor.execute_script(event_name + 
".sh", extension_values)
         except OSError:
             raise RuntimeError("Could not find an extension file for event %s" 
% event_name)
 
@@ -43,14 +43,15 @@ class ExtensionExecutor(ICartridgeAgentPlugin):
         log.info("%s Extension executed. [output]: %s" % (event_name, output))
 
     @staticmethod
-    def execute_script(bash_file):
+    def execute_script(bash_file, extension_values):
         """ Execute the given bash files in the <PCA_HOME>/extensions/bash 
folder
         :param bash_file: name of the bash file to execute
         :return: tuple of (output, errors)
         """
         working_dir = 
os.path.abspath(os.path.dirname(__file__)).split("modules")[0]
         command = working_dir[:-2] + "bash/" + bash_file
-        extension_values = os.environ.copy()
+        current_env_vars = os.environ.copy()
+        extension_values.update(current_env_vars)
 
         p = subprocess.Popen(command, stdout=subprocess.PIPE, 
stderr=subprocess.PIPE, env=extension_values)
         output, errors = p.communicate()

Reply via email to