Fabric: النسيج 2 - تنفيذ مهمة على مجموعة (باستخدام الوسائط)

تم إنشاؤها على ٨ ديسمبر ٢٠١٧  ·  5تعليقات  ·  مصدر: fabric/fabric

لدي مهمة لها حجج. أرغب في تشغيل هذه المهمة على مجموعة من المضيفين ، بحجة مختلفة للمهمة اعتمادًا على المضيف ، من داخل نص برمجي آخر من Python.

التعليق داخل execute يشير إلى تنفيذه حسب البرنامج التعليمي. هل يمكنني الحصول على رابط لهذا البرنامج التعليمي؟ وإذا نجحت في العمل / نجحت في العمل مع تمرير الحجج ، فهل سيكون هذا طلب سحب مرحب به؟

Feature Group

التعليق الأكثر فائدة

وهناك حاجة إلى حد كبير هذه الميزة لFabric2. أي فكرة متى سيتم دمجها؟

ال 5 كومينتر

أعتقد أن هذا هو أقرب شيء إلى البرنامج التعليمي Fabric 2: http://docs.fabfile.org/en/stable/getting_started.html

أرغب في تشغيل هذه المهمة على مجموعة من المضيفين ، بحجة مختلفة للمهمة اعتمادًا على المضيف ، من داخل نص برمجي آخر من Python.

لا أعرف حالة الاستخدام الخاصة بك ، مع ملاحظة أن المجموعة لم يتم تجسيدها جيدًا حتى الآن (كان التركيز على الحصول على اتصال في حالة جيدة) ، سأشير إلى أنه _حتى الآن_ ، تم تصميم المجموعة على أنها واجهة برمجة تطبيقات ملائمة / مجمعة فقط - إنها الحالة الشائعة "أعطيك قائمة بأسماء المضيفين والشيء الذي يجب القيام به وأنت تفعل ذلك من أجلي ، دون أن أضطر إلى كتابة الحلقة الخاصة بي."

بالنسبة لأي شيء أكثر تعقيدًا ، فإن الفكرة هي أنه لا يزال من السهل جدًا القيام بذلك بنفسك باستخدام اتصالات تم إنشاؤها يدويًا داخل أي بنية Python تناسب حالة الاستخدام الخاصة بك (التكرار ، وما إلى ذلك) ، لذلك في هذه الحالة ، سيكون لديك "meta" مهمة تؤدي شيئًا مثل for hostname, kwargs in my_map_of_hostnames_to_kwargs.items(): othertask(Connection(hostname), **kwargs) .

(لا يزال هذا يترك pyinvoke / استدعاء # 170 ، أو أقل احتمالًا ، # 4 ، لكن كلاهما في الوقت الحالي يمكن حلهما.)

إذا قدمت تفاصيل حول حالة الاستخدام ، فربما يمكن لأحدنا تقديم المزيد من التفاصيل.


رد: البرنامج التعليمي: نعم ، صفحة "البدء" هي البرنامج التعليمي ، والجزء المحدد الذي يتظاهر بمعرفته حول Group.execute هو http://docs.fabfile.org/en/v2/getting_started.html#bringing -it-all - معًا - ولكن كما ورد أعلاه ، لم يتم التفكير في السلوك حقًا بعد!

شكرا جزيلا على هذا البرنامج التعليمي v2. لقد وجدت مصدره على GitHub لكني أهملت القراءة حوله.

cxn = Connection(host) هو الجزء الحرج الذي فقدته ؛ لم تذكر أجزاء البرنامج التعليمي التي وجدتها ماهية cxn ، ولم أحفر بما يكفي لاكتشاف أنه مجرد اتصال.

لقد قمت بالفعل بكتابة الكود الذي أحتاجه عندما قمت بنشر هذا باستخدام منفذ Fabric3 ، ولكن مع التفكير في الانتقال إلى الإصدار 2 بمجرد وجوده على PyPi. شكرا على وقتكم شباب!

تحرير: قد يساعد المستخدمين المحتملين في المستقبل إذا قمت بإضافة رابط إلى هذا البرنامج التعليمي v2 في README هنا. أود أن أسحب الطلب ولكن هذا يبدو كثيرًا بالنسبة لتغيير سطر واحد: p

لا يمكن تحميل host تلقائيًا من ملف التكوين fabric.json بدلاً من تمريره إلى الوسيطة -D في سطر الأوامر؟

وهناك حاجة إلى حد كبير هذه الميزة لFabric2. أي فكرة متى سيتم دمجها؟

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات

القضايا ذات الصلة

Grazfather picture Grazfather  ·  4تعليقات

TimotheeJeannin picture TimotheeJeannin  ·  3تعليقات

acdha picture acdha  ·  4تعليقات

peteruhnak picture peteruhnak  ·  6تعليقات

neemxyang picture neemxyang  ·  6تعليقات