У меня проблемы с Fabric
распознаванием хостов, которые у меня есть в~/.ssh/config
.
Мой fabfile.py
выглядит следующим образом:
from fabric.api import run, env
env.hosts = ['lulu']
def whoami():
run('whoami')
Бег $ fab whoami
дает:
[лулу] беги: whoami
Неустранимая ошибка: не удалось найти имя для lulu
Имя lulu
у меня ~/.ssh/config
, вот так:
Host lulu
hostname 192.168.100.100
port 2100
IdentityFile ~/.ssh/lulu-key
Моя первая мысль к решению этого добавляет что - то вроде lulu.lulu
к /etc/hosts
(я на Mac), но тогда я должен также передать в файл личных данных на ткань - и я предпочел бы сохранить свою идентификацию (то есть ~/.ssh/config
) отдельно от моего развертывания ( т.е. fabfile.py
).
Также, кстати, если вы пытаетесь подключиться к хосту в файле hosts, fabric.contrib.projects.rsync_project
похоже , что он не подтверждает «порты» в hosts.env
(то есть, если вы используете hosts.env = [lulu:2100]
вызов, rsync_project
кажется, пытается подключиться lulu:21
).
Есть ли причина, по которой Fabric не распознает это lulu
имя?