باجورو: نظام استضافة مشاريع Git

نشره عبد اللطيف ايمش في

باجورو (Pagure) هو خدمة متعددة الميزات للتعامل مع مستودعات Git من الويب، وهو مكتوبٌ بلغة بايثون، ويشبه كثيرًا أنظمة Git الشهيرة مثل Github و Gitlab، سامحًا لمساهمي المشاريع مفتوحة المصدر بأن يتشاركوا ويتعاونوا على كتابة الشيفرات والمحتوى. بالمناسبة، كلمة «Pagure» هي كلمةٌ فرنسيةٌ تشير إلى أحد أنواع السرطانات اسمه «hermit crab» كما هو ظاهر في شعار المشروع في صفحة التوثيق.

باجورو هو نتاج عمل Pierre-Yves Chibon، الذي هو أحد أعضاء فريق هندسة فيدورا. يُركِّز هذا الفريق على إيجاد حلول برمجية باستعمال لغة بايثون، لأنها سهلة التعلم ولن تُشكِّل عائقًا أمام انضمام المطورين الجدد.

وكما كلنا نعلم، أداء لغة بايثون عالٍ جدًا، وباجورو ليس استثناءً. يمكنك تجربة باجورو هنا، إذ يستعمل لعدِّة مشاريعٍ نشطة، والشيفرة المصدرية لباجورو متاحةٌ على الخدمة نفسها.

ميزات باجورو

يُوفِّر باجورو ميزاتٍ عدِّة موجودة في خدمات git الأخرى المشابهة:

  • إنشاء المستخدمين والمجموعات ومستودعات المشاريع واشتقاقات المشاريع تلقائيًا دون تدخل من المدير.

  • الوصول إلى المستودعات عبر HTTPS و SSH.

  • إمكانية الاستيثاق (authentication) من عدِّة مصادر، إما بالتسجيل في باجورو نفسه، أو بنظام OpenID باستعمال موفر خارجي مثل Ipsilon، وربما تُفكِّر بربط باجورو إلى LDAP، أو إلى مستخدمي نظام التشغيل، أو إلى أي مصدر آخر لحسابات المستخدمين.

  • التعامل الأساسي يكون مع طلبات Pull، مع إمكانية إجراء نقاشات ومراجعات.

  • محرر مُضمَّن في واجهة الويب للملفات النصية.

  • متتبِّع للعلل، ونظام إدارة الإصدارات والتوثيق.

  • تنبيهات بريدية إذا حدث نشاطٌ ما في المستودع.

  • إمكانية المزامنة بين أكثر من نسخة من باجورو.

  • حر تمامًا.

يوفر باجورو ميزاتٍ أخرى إضافةً إلى ما سبق:

  • جميع البيانات الوصفية للمشاكل (issues) وطلبات Pull متوفرة على شكل مستودعات git جانبية لتسهيل تتبعها ونقلها.

  • يُدار التوثيق كمستودع git جانبي أيضًا، ويتوفر عبر مجلد ويب فرعي أو مباشرةً في المشروع.

  • نظام إضافات كامل، يمكن استعماله اختياريًا لكل مشروع.

كيف تستضيف باجورو على خادمك

يسمح لك باجورو بتهيئة خدمة استضافة المشاريع على خادمك، من السهل تثبيت هذه الخدمة فهي تعتمد على برمجياتٍ حرةٍ أخرى، التي يمكنك العثور عليها في مستودعات فيدورا وRHEL و CentOS وغيرها من توزيعات لينُكس.
سيساعدك توثيق المشروع في البدء بإعداد باجورو، ويمكنك تثبيته في توزيعة تعتمد على نظام التحزيم RPM مباشرةً، أو يمكنك بناؤه من المصدر. يُوفِّر باجورو تعليماتٍ لكلا الطريقتين.

يتم استعمال باجورو إنتاجيًا في فيدورا منذ عدِّة أشهر، لكن الحدث الأهم كان عند إصدار النسخة 1.0، التي هي أول إصدارة رئيسية أتت بواجهة مستخدم جديدة كليًا.

استعمال باجورو مختلف قليلًا عن استعمال الخدمات الأخرى مثل Github، إذ أنَّ باجورو يفترض أنَّ المشاريع تعاونية وتشاركية، حيث لا يوجد هنالك مجال أسماء (namespace) للمشاريع، لكن هنالك مجال أسماء للاشتقاقات (forks)، مما يجعل المستودع الرئيسي للمشروع مرتبًا. لكن بقيت طريقة اشتقاق مستودع وعمل تعديلات، وعمل طلبات pull هي نفسها. أي يجب ألّا يواجه مستخدمو بقية خدمات git أيّة مشاكل باستخدام باجورو مباشرةً.

مستقبل باجورو

يجري تطوير باجورو على قدمٍ وساق، إذ هنالك العديدون ممن يساهون فيها. بعض الميزات المستقبلية في باجورو تتضمن:

  • إمكانية تخصيص سمة للواجهة.

  • مزامنة بيانات المستودع إلى خدماتٍ أخر مثل Github.

  • مجال أسماء للمشاريع الخاصة التي لا يجب اشتقاقها.

  • دعم القوائم البريدية للمشاريع عبر استعمال Mailman 3 مثلًا.

الشيفرة المصدرية سهلة القراءة والفهم، حتى لمن له خبرةٌ بسيطةٌ في بايثون. ومطورو باجورو سيسعدون بأي مساهمةٍ لحل إحدى المشاكل الموجودة.

المصدر: [Pagure: DIY git project hosting]