我正在编写我的第一个特定于环境的 fabfile。本质上,我为每个环境创建了一个 env 设置文件,其中包含一个带有用户、密码和主机的 json 字符串。然后我对在实际部署功能之前调用的每个环境都有一个任务。像这样的东西:
晶圆厂开发部署应用程序
开发任务(在本例中)调用我编写的函数,该函数解析相关设置文件并尝试将 env 设置设置为解析值。
def set_env(env):
json_data = open(env + '_settings.env', 'r')
env_data = json.load(json_data)
json_data.close()
env.user = env_data['user']
env.password = env_data['password']
但是,当我调用此函数时,我收到以下我似乎无法解读的错误:
env.user = "" + env_data['user']
AttributeError: 'str' object has no attribute 'user'
我通过打印值测试了文件是否正在被读取,它们确实是正确的。我假设我在访问 dict 值时做错了,但似乎找不到正确的搜索组合来给我一个有效的答案。