اعتبارًا من https://golang.org/cl/50750 ، يمتلك منسق الإنشاء خادم ssh للوكيل إلى buildlets. (كان هذا الخطأ رقم 19956)
ولكن لا يوجد دعم scp حتى الآن.
هذا خطأ تتبع لمعرفة ذلك.
/ سم مكعب dmitshur
هذه إحدى المشكلات التي أتطرق إليها. في محاولة لتصور كيفية عملها ، تم طرح السؤال التالي.
بالنظر إلى أن لدينا gomote put
، هل سيكون دعم scp ضروريًا ومفيدًا؟ ألا يفعل gomote put
بالفعل ما يسمح لك scp
بفعله؟ أو هل هناك حالات استخدام محددة ندرك أنها ستجعل هذا مفيدًا.
ملاحظة واحدة حول ssh
مقابل scp
. يتيح Gomote حاليًا للمستخدم "ssh إلى" buildlet عن طريق تشغيل gomote ssh <instance>
، ولكنه يعمل عن طريق إنشاء غلاف ssh والسماح للمستخدم باستخدامه. لا يتم دعم العميل العادي ssh
بشكل مباشر. لا أعتقد أن الحل نفسه سيعمل مقابل scp
، لأننا لا نريد إعادة تنفيذ كل البنية المعقدة التي يدعمها العميل scp
.
gomote put
و gomote gettar
مملة ولا تعمل مع الأدوات الحالية مثل rsync
.
لا يتم دعم عميل ssh العادي بشكل مباشر.
إذا قمت بتشغيله باليد. يصدر gomote ssh
الأمر الذي يمكنك تشغيله بنفسك.
كل ما هو مطلوب لإصلاح هذا الخطأ (على ما أعتقد) هو الاستجابة لطلبات فتح قناة "sftp" في خادم ssh الخاص بنا وفتح قناة "sftp" جديدة إلى الواجهة الخلفية وربطها معًا بنسخة io.Copy goroutines.
التعليق الأكثر فائدة
gomote put
وgomote gettar
مملة ولا تعمل مع الأدوات الحالية مثلrsync
.إذا قمت بتشغيله باليد. يصدر
gomote ssh
الأمر الذي يمكنك تشغيله بنفسك.كل ما هو مطلوب لإصلاح هذا الخطأ (على ما أعتقد) هو الاستجابة لطلبات فتح قناة "sftp" في خادم ssh الخاص بنا وفتح قناة "sftp" جديدة إلى الواجهة الخلفية وربطها معًا بنسخة io.Copy goroutines.