Rultor هو مساعد فريق DevOps. فهو يساعد المبرمجين ومديري الإصدار على أتمتة العمليات الروتينية (الدمج والنشر والإصدار) من خلال واجهة روبوت الدردشة سهلة الاستخدام. فقط قل @rultor hello
في أي مشكلة من مشكلات GitHub وستبدأ المحادثة.
التوثيق الكامل موجود على doc.rultor.com
مخطط لملف .rultor.yml
هل تحتاج إلى مساعدة عبر الإنترنت؟ جرب مجموعة Telegram الخاصة بنا.
قد تكون منشورات المدونة هذه مفيدة:
Rultor، بوت دمج
كل بناء في حاوية Docker الخاصة به
يجب أن يكون الفرع الرئيسي للقراءة فقط
رولتر + ترافيس
شاهد مقاطع الفيديو هذه لتفهم غرض Rultor:
البرامج النصية للنشر ميتة؛ تعرف على رولتر
ديف أوبس برو؛ فيلنيوس، ليتوانيا؛ 26 مايو 2016
مثال عملي للإصدار بنقرة واحدة
ديف أوبس برو 2016؛ موسكو، روسيا؛ 15 نوفمبر 2016
هندسة روبوتات الدردشة
المهوس 2016؛ تالين، إستونيا؛ 9 يونيو 2016
صورة Docker الافتراضية هي yegor256/rultor-image
كانت البرامج النصية للنشر الآلي موجودة منذ بعض الوقت. يحاول Rultor معالجة المشكلات التي لا تواجهها تلك النصوص.
الميزة الأولى لـ Rultor هي أنه يمنحك عزل البرنامج النصي للنشر الخاص بك في بيئته الافتراضية باستخدام حاويات Docker. وهذا يقلل بشكل كبير من مقدار الحالة الخارجية التي يمكن أن تؤثر على البنية الخاصة بك ويجعل الأخطاء قابلة للتكرار بسهولة أكبر.
بالإضافة إلى ذلك، نظرًا للطريقة التي يتكامل بها Rultor مع أجهزة تتبع المشكلات الحديثة، يتم تخزين جميع السجلات ونشرها على التذكرة التي تم ذكر Rultor عليها. جعل المعلومات الحيوية في متناول جميع المطورين بسهولة.
يقوم Rultor بتنفيذ تصميمات ما قبل الرحلة. بدلاً من الدمج في الفرع الرئيسي ثم معرفة ما إذا كانت تغييراتك قد عطلت البنية أم لا، يقوم Rultor بفحص الفرع الرئيسي، وتطبيق تغييراتك عليه، ثم تشغيل كل ما تم إعداده لتشغيله. إذا سارت الأمور على ما يرام، فقط إذا سارت الأمور على ما يرام، يقوم Rultor بدمج التغييرات في الملف الرئيسي. يؤدي هذا برمجيًا إلى منع كسر البرنامج الرئيسي بواسطة المطورين. إن عدم القلق بشأن كسر البنية لأي شخص آخر له تأثير إيجابي للغاية في الطريقة التي يكتب بها المطورون التعليمات البرمجية، مما يزيد من إنتاجيتهم ويخفف من خوفهم من ارتكاب الأخطاء.
وأخيرًا، يوفر Rultor واجهة متكاملة وإنسانية لأدوات DevOps، حيث تكفي جملة يمكن قراءتها بواسطة الإنسان لبدء عملية الدمج أو الإصدار.
بمجرد عثور Rultor على أمر دمج في أحد طلبات السحب الخاصة بك على GitHub، فإنه يفعل هذا بالضبط:
bundle test
.master
.bundle test
.master
المعدل إلى GitHub.يمكنك رؤيته عمليًا، على سبيل المثال، في طلب السحب هذا: jcabi/jcabi-github#878.
يتوقع Rultor أن يكون الخادم المثبت عليه Docker متاحًا. يقوم بتسجيل الدخول هناك عبر SSH ويبدأ تشغيل حاويات Docker لكل مهمة. هذه هي الطريقة التي تقوم بها بتكوين الخادم من البداية ( root
في Ubuntu 20.04):
$ apt-get install -y bc
$ groupadd docker
$ adduser rultor
$ gpasswd -a rultor docker
$ echo 'rultor ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
$ mkdir /home/rultor/.ssh
$ cat > /home/rultor/.ssh/authorized_keys
$ chown rultor:rultor -R /home/rultor/.ssh
$ chmod 600 /home/rultor/.ssh/authorized_keys
تأكد من أن b4.rultor.com
يشير إلى الخادم. في الوقت الحالي، يعمل التطبيق المستضاف مع خادم واحد فقط، بواسطة اسم المجال المحدد هذا.