سيناريو بسيط للغاية:
env.use_ssh_config = True
@hosts(['example'])
def test():
run('uname')
وبتكوين SSH التالي:
Host example
HostName example.com
أنا أتلقى هذا:
$ 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
اي فكره تعتمد عليها؟
اكتشفت للتو أن لديّ HostName example.com_
(الشرطة السفلية هي مسافة بيضاء زائدة عرضية) في تكوين SSH.
يبدو أن # 305 من جديد؟
أعتقد أن هذا يجب أن يتم على الجانب ssh
منذ المطابقة الفعلية للإدخال (طلب النسيج للمضيف "example"
) مع مفتاح التكوين ssh ، وهو ما يحتاج إلى تجريد ( "example ")
يتم تنفيذ SSHConfig.lookup
. سأقوم بالإشارة هناك.
انظر ssh # 23
شكرًا yuvadm - لقد حصلت على مساحة إضافية أيضًا
تعرضت للعض من خطأ المسافة البيضاء الإضافية أيضًا ، قم بنشر هذا هنا للباحثين في المستقبل:
الخطأ الذي تلقيته كان Fatal error: Name lookup failed for hosts
- نظرًا لأننا كنا نستخدم تعريف env.roledefs
المستند إلى القاموس.
التعليق الأكثر فائدة
تعرضت للعض من خطأ المسافة البيضاء الإضافية أيضًا ، قم بنشر هذا هنا للباحثين في المستقبل:
الخطأ الذي تلقيته كان
Fatal error: Name lookup failed for hosts
- نظرًا لأننا كنا نستخدم تعريفenv.roledefs
المستند إلى القاموس.