我有一个 Django 应用程序,我编写了一个结构脚本,用于在部署服务器 (Cent OS 5) 上安装我的应用程序。
现在我想在部署服务器上本地运行相同的结构脚本。
有没有办法不提供 ssh 用户和密码就可以做到这一点?
我的意思是只用“-H localhost”?
谢谢,Alex A。
最佳答案
是的,您可以使用方法local 而不是run 在本地运行fab。我通常做的是设置环境的方法,并在调用实际任务之前先调用这些方法。让我用一个针对您的具体问题的例子来说明这一点
fabfile.py
from fabric.operations import local as lrun, run
from fabric.api import task
from fabric.state import env
@task
def localhost():
env.run = lrun
env.hosts = ['localhost']
@task
def remote():
env.run = run
env.hosts = ['some.remote.host']
@task
def install():
env.run('deploymentcmd')
并且根据环境,你可以做以下事情
在本地主机上安装:
fab localhost install
在远程机器上安装:
fab remote install
关于django - 在本地运行结构脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6725244/