Skenario yang sangat sederhana:
env.use_ssh_config = True
@hosts(['example'])
def test():
run('uname')
dan dengan konfigurasi SSH berikut:
Host example
HostName example.com
Saya mendapatkan ini:
$ fab test
[example] Executing task 'test'
[example] run: uname
Fatal error: Name lookup failed for example.com
Underlying exception:
nodename nor servname provided, or not known
Aborting.
# BUT!
$ ssh example uname
Linux
Tahu apa yang terjadi?
Saya baru tahu bahwa saya memiliki HostName example.com_
(garis bawah adalah spasi tambahan yang tidak disengaja) di konfigurasi SSH.
Sepertinya # 305 lagi?
Saya pikir ini perlu dilakukan di sisi ssh
karena pencocokan input yang sebenarnya (Kain meminta Host "example"
) dengan kunci konfigurasi ssh, yang perlu dilucuti ( "example ")
dilakukan di SSHConfig.lookup
Saya akan membuat referensi di sana.
Lihat ssh #23
Terima kasih @yuvadm - ruang ekstra membuat saya juga
Digigit oleh bug spasi ekstra juga, memposting ini di sini untuk pencari masa depan:
Kesalahan yang saya dapatkan adalah Fatal error: Name lookup failed for hosts
- karena kami menggunakan definisi env.roledefs
berbasis kamus.
Komentar yang paling membantu
Digigit oleh bug spasi ekstra juga, memposting ini di sini untuk pencari masa depan:
Kesalahan yang saya dapatkan adalah
Fatal error: Name lookup failed for hosts
- karena kami menggunakan definisienv.roledefs
berbasis kamus.