我正在使用fabfile
从头开始配置Ubuntu 16.04
服务器并部署Django
项目。
首先它做的是:
def create_user_and_set_sshkeyauth():
# creates new sudoer user and set ssh authorized_keys
def do_stuff_as_new_user():
# installs dependencies, sets database, deploys django
工作流:
create_user_and_set_sshkeyauth()
# LOGOUT ROOT, LOGIN THE NEW USER
do_stuff_as_new_user()
所以我想从root帐户注销并以新创建的用户身份登录,并在此用户下执行操作。我怎么能这样做?
答案 0 :(得分:1)
settings
上下文管理器是实现它的方法:
@roles('foo')
def whatever():
create_user_and_set_sshkeyauth()
with settings(user='otheruser'):
do_stuff_as_new_user()