我Fabric
无法识别我在~/.ssh/config
.
我fabfile.py
的如下:
from fabric.api import run, env
env.hosts = ['lulu']
def whoami():
run('whoami')
运行$ fab whoami
给出:
[lulu] 跑:whoami
致命错误:lulu 的名称查找失败
名称lulu
在 my 中~/.ssh/config
,如下所示:
Host lulu
hostname 192.168.100.100
port 2100
IdentityFile ~/.ssh/lulu-key
lulu.lulu
我解决这个问题的第一个想法是添加类似的东西/etc/hosts
(我在 Mac 上),但是我还必须将身份文件传递给 Fabric - 我宁愿将我的身份验证(即~/.ssh/config
)与我的部署分开(即fabfile.py
)。
同样,顺便说一句,如果您尝试连接到 hosts 文件中的主机,fabric.contrib.projects.rsync_project
似乎并没有确认其中的“端口” hosts.env
(即,如果您使用hosts.env = [lulu:2100]
调用 torsync_project
似乎尝试连接到lulu:21
)。
Fabric 无法识别此lulu
名称是否有原因?