عربيالفرنسيةالإسبانية

Ad


OnWorks فافيكون

إيركرهوك - عبر الإنترنت في السحابة

قم بتشغيل irkerhook في مزود استضافة OnWorks المجاني عبر Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

هذا هو الأمر irkerhook الذي يمكن تشغيله في موفر الاستضافة المجاني OnWorks باستخدام إحدى محطات العمل المجانية المتعددة عبر الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


irkerhook - إصدار الخطاف الإخطاري للمستودع إخطارات irker

موجز


irkerhook.py [-ن] [-V] [[--متغير=قيمة...]] [[الالتزام معرف...]]

الوصف


irkerhook.py هو برنامج نصي بلغة Python يُقصد استدعاؤه من خطاف ما بعد الالتزام لـ a
مستودع التحكم في الإصدار. وتتمثل مهمتها في جمع المعلومات حول الالتزام الذي تم إطلاقه
الخطاف (وربما التفضيلات التي حددها مالك المستودع) وشحن تلك المعلومات
إلى مثيل irkerd لإعادة التوجيه إلى قنوات الإعلان المختلفة.

يختلف الاستدعاء والسلوك المناسب لـ irkerhook.py اعتمادًا على نوع VCS
(نظام التحكم في الإصدار) يستدعي ذلك. هناك أربعة أماكن مختلفة يمكن أن يكون
استخراج المعلومات:

1. يدعو إلى VCS المرافق.

2. في VCSes مثل git التي تدعم متغيرات التكوين التي يمكن للمستخدم ضبطها ، المتغيرات ذات
البادئة "ايركر".

3. في أنظمة VCS الأخرى، يوجد ملف تكوين، "irker.conf"، في الأجزاء الداخلية للمستودع
الدليل.

4. وسيطات سطر الأوامر للنموذج --variable=value.

المتغيرات التالية عامة لجميع VCSes المدعومة:

تنفيذ المشاريع
اسم المشروع. ينبغي أن يكون معرفًا قصيرًا نسبيًا؛ سوف تظهر عادة
في بداية الإخطار.

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

قنوات
عنوان URL لقناة IRC، أو قائمة مفصولة بفواصل من نفس القناة، لتحديد القنوات التي ستنتقل إليها
يجب إرسال الإخطارات. إذا لم يتم تحديده، فإن الإعداد الافتراضي هو freenode #commits
القناة.

الخادم
المضيف الذي من المتوقع أن يتواجد عليه البرنامج الخفي irker لترحيل الإشعارات.
افتراضات على "المضيف المحلي".

البريد الإلكتروني
إذا تم ضبطه، فاستخدم البريد الإلكتروني للتواصل بدلاً من TCP أو UDP. يتم استخدام القيمة كـ
عنوان البريد المستهدف.

برنامج التعاون الفني
إذا كان "صحيحًا" ، فاستخدم TCP للاتصال ؛ إذا كان "خطأ"، استخدم UDP. الإعدادات الافتراضية إلى "خطأ".

urlprefix
تغيير بادئة عنوان URL لملف الريبو الخاص بك. عندما يتم إلحاق معرّف الالتزام بهذا ، يجب أن يكون
أشر إلى CGI الذي سيعرض الالتزام من خلال cgit أو gitweb أو شيء مشابه.
من المحتمل أن تعمل الإعدادات الافتراضية إذا كان لديك إعداد gitweb / cgit نموذجي.

إذا كانت قيمة هذا المتغير هي "لا شيء"، فسيتم إنشاء حقل عنوان URL في الالتزام
سيتم قمع الإخطارات. القيم السحرية الأخرى هي "cgit" و"gitweb" و
"viewcvs" ، والتي تتوسع لتشمل قوالب URL التي تعمل عادةً مع هذه الأنظمة.

قد تظهر ملفات تعريف الارتباط السحرية "%(host)s" و%(repo)s" في عنوان URL هذا. الأول هو
تم توسيعه إلى FQDN للمضيف الذي يعمل عليه irkerhook.py؛ هذا الأخير هو
تم توسيعه إلى قيمة متغير "الريبو".

المصغر
يشير قالب عنوان URL إلى خدمة لضغط عناوين URL حتى تأخذ أقل
مساحة في سطر الإخطار. إذا كانت قيمة هذا المتغير هي "لا شيء"، فلا
ستتم محاولة الضغط.

اللون
إذا كان "mIRC"، فقم بتمييز حقول الإشعارات برموز ألوان mIRC. إذا كان "ANSI"، قم بتمييزه
حقول الإعلام مع تسلسلات هروب الألوان ANSI. افتراضيات على "بلا" (بدون ألوان).
يتم دعم رموز ANSI في Chatzilla و irssi و ircle و BitchX ؛ رموز mIRC هي فقط
معترف بها في mIRC أو XChat أو KVirc أو Konversation أو Weechat.

ملاحظة: إذا قمت بتشغيل هذا الخيار وتوقفت الإشعارات عن الظهور على قناتك، فستحتاج إلى ذلك
لإيقاف تشغيل مرشح الألوان الخاص بـ IRC على تلك القناة. للقيام بذلك سوف تحتاج إلى المرجع
الامتيازات؛ أصدر الأمر "/mode -ج" مع استبدال الخاص بك
اسم القناة. قد تحتاج أولاً إلى إصدار الأمر "/msg chanserv set
ملوك +nt-slk".

com.maxchannels
يتم تفسيرها على أنها عدد صحيح. إذا لم يكن صفرًا ، فسيحد من عدد القنوات التي سيفعلها الخطاف
تفسير من متغير "القنوات".

لا يمكن تعيين هذا المتغير من خلال متغيرات تكوين VCS أو irker.conf ؛ يمكن
يتم تعيينها فقط باستخدام وسيطة سطر أوامر. وهكذا ، على موقع تزوير فيه مستودع
لا يُسمح للمالكين بتعديل البرامج النصية الخاصة بهم بعد الالتزام، ويمكن لمسؤول الموقع ذلك
قم بتعيينه لمنع إرسال البريد العشوائي من قبل أصحاب المشاريع الضارة. ضبطه على قيمة
ومع ذلك، ربما يكون أقل من 2 أمرًا غير حكيم.

com.cialike
إذا لم يكن فارغًا وليس "لا شيء" (الافتراضي)، فهذا يحاكي السلوك القديم لوكالة المخابرات المركزية
إسقاط قوائم طويلة من الملفات لصالح ملخص النموذج (ملفات N في M
الدلائل). يجب أن تكون القيمة رقمية مما يعطي قيمة حدية لطول الملف
قائمة الملفات بالأحرف.

طائرة نفاثة
ضمن git، الطريقة العادية لاستدعاء هذا الخطاف (من داخل خطاف التحديث) تمرره بـ a
refname متبوعة بقائمة الالتزامات. لأن طائرة نفاثة قائمة المراجعة قوائم عادة من معظم
من الأحدث إلى الأقدم ، سترغب في استخدام - العكس لجعل الإخطارات تُحذف في
ترتيب زمني. في البرنامج النصي العادي للتحديث ، يجب أن يبدو الاستدعاء على هذا النحو

اسم المرجع=$1
القديم = 2 دولار
جديد = 3 دولار
irkerhook.py --refname = $ {refname} $ (git rev-list --reverse $ {old} .. $ {new})

إلا أنك ستحتاج إلى مسار مطلق لـ irkerhook.py.

لأغراض الاختبار والتوافق مع الإصدارات السابقة، إذا قمت باستدعاء irkerhook.py بدون
الوسائط (كما هو الحال في ربط ما بعد الالتزام) سوف تتصرف كما لو تم استدعاؤها على هذا النحو
هذه:

irkerhook.py --refname=refs/heads/master HEAD

ومع ذلك، فإن هذا لن يعطي النتيجة الصحيحة عند الدفع إلى فرع غير افتراضي من a
الريبو العاري.

الطريقة النموذجية لتثبيت هذا الخطاف هي في الواقع في خطاف ما بعد الاستلام ، لأنه يحصل
كل التفاصيل الضرورية ولن يجهض الضغط على الفشل. استخدم ما يلي
النصي:

#!/ بن / ش

صدى "إرسال إشعار IRC"
أثناء قراءة refname الجديد القديم ؛ يفعل
irkerhook --refname = $ {refname} $ (git rev-list --reverse $ {old} .. $ {new})
فعل

للراحة ، يتم تنفيذ ذلك من خلال البرنامج النصي المساعد irkerhook-git.

يمكن تعيين التفضيلات في ملف تكوين الريبو في قسم [irker]. هنا مثال
لما يمكن أن يبدو عليه الأمر:

[إيركر]
مشروع = gpsd
اللون = أنسي
القنوات = irc://chat.freenode.net/gpsd,irc://chat.freenode.net/commits

لا يجب عليك تعيين متغير "المستودع" (سيتم حساب ما يعادله). لا توجد محاولة
تم إجراؤه لتفسير ملف irker.conf.

القيمة الافتراضية لمتغير "المشروع" هي الاسم الأساسي لدليل المستودع.
القيمة الافتراضية للمتغير "urlprefix" هي "cgit".

يوجد متغير واحد خاص بـ git، "revformat"، يتحكم في تنسيق الالتزام
معرف في الإخطار. قد تحتوي على القيم التالية:

الخام
معرف سداسي عشري كامل للالتزام

في صفقات
أول 12 حرفًا من المعرف السداسي

وصف
وصف نسبيًا لآخر علامة ، والعودة إلى الاختصار

الافتراضي هو "وصف".

تخريب
ضمن Subversion، يقبل irkerhook.py خيار --repository ذو القيمة (المطلق
مسار مستودع التخريب) وسيطة الالتزام (مستوى المراجعة الرقمي
من الالتزام). الإعدادات الافتراضية هي دليل العمل الحالي وHEAD، على التوالي.

لكن لاحظ أنك لا تستطيع الافتراضي وسيطة المستودع داخل التخريب
ربط ما بعد الالتزام؛ هذا بسبب قيود التخريب، وهو الحصول على
الدليل الحالي غير موثوق به داخل هذه الخطافات. بدلاً من ذلك ، يجب أن تكون القيمتان
الوسائط التي يمررها Subversion إلى هذا الخطاف كوسائط. وبالتالي، فإن الاحتجاج النموذجي في
سيبدو البرنامج النصي لما بعد الالتزام كما يلي:

الريبو = 1 دولار
قيمة القسيمة = 2 دولار
irkerhook.py --repository=$REPO $REV

أخرى - متغير = يمكن أيضًا تقديم إعدادات القيمة في سطر الأوامر ، وسوف يتم تجاوزها
أي إعدادات في ملف irker.conf.

الافتراضي لمتغير المشروع هو الاسم الأساسي للمستودع. القيمة الافتراضية
من المتغير "urlprefix" هو "viewcvs".

في حالة وجود ملف irker.conf في الدليل الجذر للمستودع (وليس دليل الخروج
ولكن عندما تكون العناصر الداخلية مثل ملف "التنسيق" مباشرًا) سوف يفسر الخطاف المتغير
الإعدادات منه. فيما يلي مثال لما قد يبدو عليه هذا الملف:

# irkerhook إعدادات متغيرة لمشروع irker
مشروع = إيركر
القنوات = irc://chat.freenode/irker،irc://chat.freenode/commits
برنامج التعاون الفني = خطأ

لا تقم بتعيين متغيرات "المستودع" أو "الالتزام" في هذا الملف ؛ من شأنه أن يكون غير سعيد
النتائج.

لا توجد متغيرات خاصة بالتخريب.

زئبقي
تحت Mercurial ، يمكن استدعاء irkerhook.py بطريقتين: إما كخطاف Python
(مفضل) أو كبرنامج نصي.

لتسميته كخطاف بايثون، أضف ما يلي إلى الخطاف "الالتزام" أو "الوارد".
إعلان في مستودع Mercurial الخاص بك:

[خطافات]
incoming.irker = python: /path/to/irkerhook.py: hg_hook

عند استدعائه كبرنامج نصي، يقبل الخطاف خيار --repository ذو القيمة (القيمة المطلقة
مسار مستودع Mercurial) ويمكن أن تأخذ حجة الالتزام (تجزئة Mercurial
معرف الالتزام أو الإشارة إليه). الافتراضي لوسيطة المستودع هو
الدليل الحالي. وسيطة الالتزام الافتراضية هي "-1"، لتعيين النصيحة الحالية
ارتكب.

أما بالنسبة لـ git، ففي كلتا الحالتين يمكن تعيين جميع المتغيرات في ملف repo hgrc في ملف [irker]
قسم. متغير سطر الأوامر = وسيطات القيمة مقبولة ولكنها غير مطلوبة للبرنامج النصي
استدعاء. لم يتم إجراء أي محاولة لتفسير ملف irker.conf.

القيمة الافتراضية لمتغير "المشروع" هي الاسم الأساسي لدليل المستودع.
القيمة الافتراضية للمتغير "urlprefix" هي قيمة تكوين "web.baseurl".
القيمة إذا كانت موجودة.

تصفية
من الممكن تصفية الالتزامات قبل إرسالها إلى irkerd.

عليك تحديد filtercmd الخيار، والذي سيكون هو الأمر الذي سيتم تشغيله irkerhook.py.
يجب أن يقبل هذا الأمر وسيطة واحدة، وهي تمثيل JSON للالتزام و
البيانات التعريفية للمستخرج (بما في ذلك متغير القنوات). يجب أن ينبعث الأمر إلى المعيار
إخراج تمثيل JSON للبيانات الوصفية (ربما تم تغييرها).

يوجد أدناه مثال لفلتر:

#!/ البيرة / بن / إنف الثعبان
# هذا مثال تافه لمرشح البيانات الوصفية.
# كل ما يفعله هو تغيير اسم مؤلف الالتزام.
#
نظام الاستيراد، json
البيانات الوصفية = json.loads(sys.argv[1])

metadata ['author'] = "أوز العظيم والقوي"

طباعة json.dumps(البيانات الوصفية)
# نهاية

الخطأ القياسي متاح للربط لرسائل التقدم والخطأ.

OPTIONS


يتخذ irkerhook.py الخيارات التالية:

-n
قمع الإرسال إلى البرنامج الخفي. بدلاً من ذلك، قم بتفريغ طلب JSON الذي تم إنشاؤه إلى
الإخراج القياسي. مفيد في التصحيح.

-V
اكتب إصدار البرنامج إلى stdout وقم بإنهائه.

استخدم irkerhook عبر الإنترنت باستخدام خدمات onworks.net


خوادم ومحطات عمل مجانية

قم بتنزيل تطبيقات Windows و Linux

أوامر لينكس

Ad