Mam problem z Fabricnierozpoznaniem hostów, na których się znajduję ~/.ssh/config.
Mój fabfile.pyjest następujący:
from fabric.api import run, env
env.hosts = ['lulu']
def whoami():
run('whoami')
Bieganie $ fab whoamidaje:
[lulu] run: whoami
Błąd krytyczny: wyszukiwanie nazwy dla lulu nie powiodło się
Imię lulujest w moim ~/.ssh/config, na przykład:
Host lulu
hostname 192.168.100.100
port 2100
IdentityFile ~/.ssh/lulu-key
Moja pierwsza myśl, aby rozwiązać ten jest dodanie czegoś podobnego lulu.luludo /etc/hosts(jestem na komputerze Mac), ale potem muszę też przejść w pliku tożsamości na tkaninę - i wolałbym, aby moje uwierzytelniania (tj ~/.ssh/config) oddzielić od mojego rozmieszczenia ( ie fabfile.py).
Poza tym, nawiasem mówiąc, jeśli próbujesz połączyć się z hostem w pliku hosts, fabric.contrib.projects.rsync_projectnie wydaje się potwierdzać „portów” w hosts.env(tj. Jeśli używasz hosts.env = [lulu:2100]wywołania do rsync_projectwydaje się próbować się połączyć lulu:21).
Czy jest jakiś powód, dla którego Fabric nie rozpoznaje tej lulunazwy?