كيف تستخدم فرق تطوير المؤسسات GitLab وMattermost ChatOps لتسريع عملية التطوير

مرحبا مجددا! تطلق OTUS دورة جديدة في فبراير "CI/CD على AWS وAzure وGitlab". وتحسبا لبدء الدورة، قمنا بإعداد ترجمة للمواد المفيدة.

مجموعة كاملة من أدوات DevOps وبرنامج مراسلة مفتوح المصدر وChatOps - كيف لا تقع في الحب؟

لم يكن هناك ضغط أكبر على فرق التطوير مما هو عليه الآن، مع هذه الرغبة في إنشاء المنتجات بشكل أسرع وأكثر كفاءة. كان ارتفاع شعبية DevOps إلى حد كبير نتيجة للتوقعات الموضوعة عليها لتسريع دورات التطوير، وزيادة المرونة، ومساعدة الفرق على التعامل مع المشكلات بشكل أسرع. على الرغم من تحسن توفر أدوات DevOps وشموليتها بشكل ملحوظ في السنوات القليلة الماضية، إلا أن مجرد اختيار أحدث وأكبر الأدوات لا يضمن دورة حياة تطوير سلسة وخالية من المتاعب.

لماذا جيتلاب

في نظام بيئي يتسم بتزايد الخيارات والتعقيد بشكل كبير، يوفر GitLab منصة DevOps كاملة مفتوحة المصدر يمكنها تسريع دورات التطوير، وتقليل تكاليف التطوير، وزيادة إنتاجية المطورين. بدءًا من التخطيط والبرمجة وحتى النشر والمراقبة (والعودة مرة أخرى)، يجمع GitLab العديد من الأدوات المتنوعة في مجموعة واحدة مفتوحة.

لماذا Mattermost ChatOps

في Mattermost، نحن معجبون جدًا بـ GitLab، ولهذا السبب يتم شحن Mattermost مع GitLab Omnibus ونعمل على التأكد من تشغيل Mattermost بسهولة مع GitLab.

منصة مفتوحة أهم عمليات الدردشة يسمح لك بتقديم المعلومات ذات الصلة لفريقك واتخاذ القرارات في المكان الذي تجري فيه المحادثة. عند حدوث مشكلة، يمكن لسير عمل ChatOps تنبيه أعضاء الفريق المعنيين الذين يعملون معًا لحل المشكلة مباشرة داخل Mattermost.

يوفر ChatOps طريقة للتفاعل مع مهام CI/CD من خلال المراسلة. اليوم، داخل المؤسسات، يتم جلب الكثير من المناقشات والتعاون وحل المشكلات إلى برامج المراسلة، كما أن القدرة على تشغيل مهام CI/CD مع تغذية المخرجات مرة أخرى في القناة يمكن أن تؤدي إلى تسريع سير عمل الفريق بشكل كبير.

ماترموست + جيت لاب

مجموعة كاملة من أدوات DevOps وبرنامج مراسلة مفتوح المصدر وChatOps - كيف لا تقع في الحب؟ باستخدام GitLab وMattermost، لا يستطيع المطورون تبسيط عملية DevOps الخاصة بهم فحسب، بل يمكنهم أيضًا نقلها إلى نفس واجهة الدردشة حيث يناقش أعضاء الفريق المشكلات ويتعاونون ويتخذون القرارات.

فيما يلي بعض الأمثلة على كيفية استخدام فرق التطوير Mattermost وGitLab معًا لتحسين الإنتاجية باستخدام ChatOps.

يستخدم Itk GitLab وMattermost لتقديم التعليمات البرمجية في الوقت المحدد وزيادة عدد عمليات نشر الإنتاج سنويًا بمقدار ستة أضعاف
ايتك تعمل الشركة، التي يقع مقرها في مونبلييه بفرنسا، على تطوير الأدوات والتطبيقات التي تساعد المزارعين على تحسين عمليات الحصاد وتحسين جودة الحصاد وإدارة المخاطر بشكل أفضل.

لقد بدأوا في استخدام GitLab في عام 2014 تقريبًا واستخدموا بشكل أساسي أداة دردشة قديمة للعمل اليومي والمراسلة ومكالمات الفيديو. ومع ذلك، مع نمو الشركة، لم تتوسع الأداة معهم؛ لم تكن هناك رسائل مخزنة بشكل دائم، ويمكن العثور عليها بسهولة، وأصبح العمل الجماعي صعبًا بشكل متزايد. لذلك بدأوا في البحث عن بديل.

وبعد فترة وجيزة، اكتشفوا أن حزمة GitLab Omnibus تأتي مرفقة بمنصة مراسلة مفتوحة: Mattermost. لقد أحبوا على الفور وظيفة مشاركة التعليمات البرمجية البسيطة، بما في ذلك تمييز بناء الجملة التلقائي ودعم Markdown الكامل، بالإضافة إلى سهولة مشاركة المعرفة والبحث عن الرسائل وتعاون الفريق بأكمله في الأفكار لتطوير حلول جديدة متكاملة مع GitLab.

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

في ذلك الوقت، بدأ رومان مانيسكي، وهو مطور من itk، في كتابة مكون إضافي لـ GitLab لـ Mattermost، والذي سمح لفريقه لاحقًا بالاشتراك في إشعارات GitLab في Mattermost وتلقي إشعارات حول المشكلات الجديدة وطلبات المراجعة في مكان واحد.

حتى الآن يدعم البرنامج المساعد:

  • تذكيرات يوميةلتلقي معلومات حول أي مشكلة وطلبات الدمج تتطلب اهتمامك؛
  • الإخطارات - لتلقي إشعارات من Mattermost عندما يذكرك شخص ما، أو يرسل إليك طلب مراجعة، أو يعيد توجيه مشكلة إليك على GitLab.
  • أزرار الشريط الجانبي - كن على دراية بعدد المراجعات والرسائل غير المقروءة والواجبات وطلبات الدمج المفتوحة لديك حاليًا باستخدام الأزرار الموجودة على الشريط الجانبي Mattermost.
  • الاشتراكات في المشاريع - استخدم أوامر الشرطة المائلة للاشتراك في القنوات المهمة لتلقي إشعارات حول طلبات الدمج الجديدة أو المشكلات في GitLab.

والآن تستخدم شركته بأكملها كلاً من GitLab وMattermost لتسريع سير العمل باستخدام ChatOps. ونتيجة لذلك، تمكنوا من تقديم التحديثات بشكل أسرع، مما أدى إلى زيادة ثلاثة أضعاف في عدد المشاريع والخدمات الصغيرة التي كان الفريق يعمل عليها وزيادة ستة أضعاف في عدد عمليات نشر الإنتاج خلال العام، كل ذلك مع زيادة التطوير و فرق المهندسين الزراعيين بنسبة 5 مرات.

كيف تستخدم فرق تطوير المؤسسات GitLab وMattermost ChatOps لتسريع عملية التطوير

تعمل شركة تطوير البرمجيات على تحسين الإنتاجية من خلال قدر أكبر من الشفافية والرؤية لتغييرات التعليمات البرمجية والتكوين

قامت شركة خدمات البرمجيات والبيانات ومقرها ماريلاند أيضًا بتطبيق Mattermost المتكامل مع GitLab لتحسين الإنتاجية والتعاون السلس. يقومون بإجراء التحليلات وإدارة البيانات وتطوير البرامج للمؤسسات الطبية الحيوية حول العالم.

يتم استخدام GitLab بكثافة من قبل فريقهم ويرون أن استخدامه يمثل فائدة كبيرة في سير عمل DevOps الخاص بهم.

قاموا أيضًا بدمج GitLab وMattermost، وتجميع الالتزامات من GitLab في موجز واحد إلى Mattermost عبر خطافات الويب، مما يسمح للإدارة بالحصول على نظرة شاملة لما كان يحدث في الشركة في يوم معين. تمت أيضًا إضافة تحديثات لإدارة التكوين والتحكم في الإصدار، مما يوفر لقطات من التغييرات المختلفة التي تم إجراؤها على البنية التحتية والأنظمة الداخلية على مدار اليوم.

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

إحدى الفوائد الرئيسية لهذا التكامل هي رؤية التغييرات عبر الإصدارات وإدارة التكوين في الوقت الفعلي. بمجرد الالتزام بالتغييرات ودفعها، يتم إرسال إشعار إلى قناة Heartbeat في الوقت الفعلي. يمكن لأي شخص الاشتراك في مثل هذه القناة. لا مزيد من التبديل بين التطبيقات، أو سؤال أعضاء الفريق، أو تتبع الالتزامات - كل ذلك في Mattermost، بينما تتم إدارة التكوين وتطوير التطبيقات في GitLab.

يعمل GitLab وMattermost ChatOps على زيادة الرؤية والإنتاجية لتسريع عملية التطوير

ماترموست يأتي مع حزمة GitLab Omnibus، وتوفير دعم خارج الصندوق لـ GitLab SSO، وتكاملات GitLab المعبأة مسبقًا ودعم PostgreSQL، بالإضافة إلى تكامل Prometheus الذي يسمح بمراقبة النظام وإدارة الإجراءات الاستجابة للحادث. أخيرًا، يمكن الآن نشر Mattermost باستخدام GitLab السحابية الأصلية.

لم يكن لدى فرق DevOps مطلقًا أداة أفضل تتمتع بالمزايا التي تتمتع بها ChatOps حتى الآن. قم بتثبيت GitLab Omnibus مع Mattermost وجربه بنفسك!

هذا كل شئ وكالعادة ندعو الجميع لذلك ندوة مجانية على الويبحيث سندرس ميزات التفاعل بين Jenkins وKubernetes، وننظر في أمثلة لاستخدام هذا النهج، ونحلل وصف تشغيل المكون الإضافي والمشغل.

المصدر: www.habr.com

إضافة تعليق