如何使用python subprocess.Popen(,,, env参数)执行Openstack CLI

时间:2019-03-22 21:22:41

标签: python openstack openstack-keystone

我使用

有一个功能run_cmd
p = subprocess.Popen( cmd, shell = True, stdout = subprocess.PIPE, stderr = subprocess.PIPE, cwd = scriptdir, env = myenv )

当我从main调用run_cmd时

run_cmd(cli,"on", haltOnError="on")

我不知道如何使用env-subprocess.Popen中的myenv参数。众所周知,要运行openstack CLI,我们必须获取OS_ENV所在的keystone_rc文件。

export OS_USERNAME=admin
export OS_TENANT_NAME=admin
export NOVA_VERSION=1.1
export OS_PROJECT_NAME=admin
export OS_PASSWORD=xxxx_yyyy
export COMPUTE_API_VERSION=1.1
export no_proxy=,10.xxx.xxx.164,172.31.255.9
export OS_CLOUDNAME=overcloud
export OS_AUTH_URL=https://10.xxx.xxx.164:13000/v2.0

我有另一种方法可以解决我的问题,但是我必须注入“ source keystone_rc; openstack服务器列表”。如果我可以在子流程中使用env参数,那将是很好。任何想法,我都感激!。

0 个答案:

没有答案