我使用CloudFoundry CLI。它允许执行诸如推送应用程序,创建服务等工作。但是,在执行命令时,它使用凭据,即当前登录用户的空格。
我使用所有这样的shell命令
def exec_cmd(*args, **kwargs):
proc = subprocess.run(args, check=True, **kwargs)
return proc.stdout.decode('utf-8').strip() if kwargs.get('capture_output', False) else None
然后执行exec_cmd('cf', 'curl' ...)
之类的操作。
但是执行push
等操作时,它使用cf
的环境,例如,我尝试更改space
会在所有终端会话中更改它。
如何在不影响全局的情况下独立运行它? (之所以需要它,是因为常规的python API不如CF CLI完整,使用起来不太方便)
您可以将$CF_HOME
设置为具有用于凭据/空格等的单独文件。>>
从文档https://docs.cloudfoundry.org/cf-cli/getting-started.html:
登录后,cf CLI保存一个config.json文件,其中包含您的API端点,组织,空间值和访问令牌。
如果更改这些设置,则将相应地更新config.json文件。
默认情况下,config.json位于〜/ .cf目录中。您可以使用CF_HOME环境变量重定位config.json文件。