From 394bb3ebe7ee7ca00e7f723d41e5f18752af3e04 Mon Sep 17 00:00:00 2001 From: Sergey Reshetnyak Date: Mon, 14 Nov 2016 17:50:24 +0300 Subject: [PATCH] Pass OS_* env variables for murano and neutron commands Change-Id: I956283581aff623d62ed387f62bb9439d9350509 --- fuel_ccp_entrypoint/start_script.py | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/fuel_ccp_entrypoint/start_script.py b/fuel_ccp_entrypoint/start_script.py index 4dbda54..b2e167c 100644 --- a/fuel_ccp_entrypoint/start_script.py +++ b/fuel_ccp_entrypoint/start_script.py @@ -170,6 +170,7 @@ def openstackclient_preexec_fn(): os.environ["OS_IDENTITY_API_VERSION"] = "3" os.environ["OS_INTERFACE"] = "internal" os.environ["OS_PROJECT_DOMAIN_NAME"] = 'default' + os.environ["OS_USER_DOMAIN_NAME"] = "default" os.environ["OS_PASSWORD"] = VARIABLES['openstack']['user_password'] os.environ["OS_USERNAME"] = VARIABLES['openstack']['user_name'] os.environ["OS_PROJECT_NAME"] = VARIABLES['openstack']['project_name'] @@ -187,17 +188,20 @@ def execute_cmd(cmd, user=None): "stderr": sys.stderr} # If openstackclient command is being executed, appropriate environment # variables will be set - if cmd.startswith('openstack '): - kwargs['preexec_fn'] = openstackclient_preexec_fn() + for prefix in ["openstack ", "neutron ", "murano "]: + if cmd.startswith(prefix): + kwargs['preexec_fn'] = openstackclient_preexec_fn() + break # Execute as user if `user` param is provided, execute as current user # otherwise - elif user: - LOG.debug('Executing as user %s', user) - pw_record = pwd.getpwnam(user) - user_uid = pw_record.pw_uid - user_gid = pw_record.pw_gid - user_home = pw_record.pw_dir - kwargs['preexec_fn'] = preexec_fn(user_uid, user_gid, user_home) + else: + if user: + LOG.debug('Executing as user %s', user) + pw_record = pwd.getpwnam(user) + user_uid = pw_record.pw_uid + user_gid = pw_record.pw_gid + user_home = pw_record.pw_dir + kwargs['preexec_fn'] = preexec_fn(user_uid, user_gid, user_home) return subprocess.Popen(cmd_str(cmd), **kwargs)