CI/CD مع جينكينز - دورة 35000 فرك. من Slurm، تدريب 8 دروس، التاريخ 28 نوفمبر 2023.
Miscellanea / / November 28, 2023
تركز هذه الدورة على الاستخدام العملي لجينكينز. سيحتوي على العديد من الأمثلة من ممارستي الشخصية.
دعنا ننتقل من البسيط إلى المعقد. أولاً، سنلقي نظرة على مجالات تطبيق Jenkins والأنواع المختلفة من خطوط الأنابيب، ثم سنلقي نظرة على مكتبة Jenkins المشتركة وننظر إلى التكامل مع Kubernetes.
هدفي هو مشاركة تجربتي ومساعدتك على تجنب ارتكاب الأخطاء التي ارتكبتها في بداية رحلتي.
ستعمل هذه الدورة على تعميق معرفتك بالعمل مع جينكينز. كل ما نغطيه أثناء التدريب، يمكنك وضعه موضع التنفيذ على الفور.
أساسيات CI/CD
سوف تتعلم ما هي منطقة المشكلة التي يمكن لـ CI/CD حلها. ستكون قادرًا على مقارنة المشكلات الحالية في عملك باستخدام وظيفة CI/CD.
نظرية:
- تاريخ CI/CD
- ضرورة الاستخدام وتكرار التجميعات
- ردود الفعل حلقة
- الإنتروبيا بدون أتمتة (الأخطاء البشرية)
- أفضل الممارسات
- كيف لا تفعل ذلك
أساسيات جنكينز
سوف تفهم منطق القرارات المعمارية التي يتخذها الآخرون وستفهم بنية الدليل في جنكينز. تعلم كيفية تثبيت Jenkins وإجراء التكوين الأساسي.
نظرية:
- ما هي المشاكل التي يحلها جنكينز؟
- العمارة ذات المستوى الأعلى - السيد والعبد
- بنية الدليل في Jenkins master (بيانات الاعتماد، مساحة العمل، السجلات)
- تثبيت خادم على Linux (centos)
- خيارات مختلفة لتشغيل Linux في Docker
يمارس:
- تثبيت وتكوين خادم Jenkins باستخدام أي من الطرق التي تمت مناقشتها في الدرس
إدارة جنكينز
سوف تتعلم كيفية تثبيت المكونات الإضافية وإجراء التكوين الأساسي وإضافة عقد عاملة إضافية وتكوين أدوات التكوين. سوف تفهم كيفية إنشاء بيانات الاعتماد والتمييز بين حقوق الوصول في Jenkins.
نظرية:
- إضافة وكلاء العبيد
- العمل مع الأدوات
- الأمن في جنكينز
- طرق تحديد الحقوق
- لماذا نحتاج إلى الإضافات والخيارات لتثبيتها؟
يمارس:
- تثبيت البرنامج المساعد وإعداد أدوات إضافية. إضافة رمز GitLab إلى بيانات الاعتماد.
النشر (درسان)
سوف تتعلم كيفية اختيار النوع المناسب من خط الأنابيب لتنظيم عملية CI/CD، وإعداد بيئة عمل لتطوير واختبار خط الأنابيب. سوف تفهم كيفية إنشاء وظيفة باستخدام المعلمات، والوظيفة الحرة، والخط التعريفي، والخط النصي.
نظرية:
- أنواع خطوط الأنابيب
- فيسكود + إيديايج
- رد الفعل النشط + الاختيار الموسع مع البرامج النصية الأخدود
يمارس:
- إنشاء خط أنابيب
التكامل مع جنكينز
سوف تتعلم كيفية إعداد تكامل خطوط الأنابيب مع SAST Sonarqube والإخطار عبر البريد الإلكتروني وTelegram وSlack.
نظرية:
- التكامل مع Sonarqube: ما هو ولماذا؟
- التكامل مع jforg: ما هو ولماذا؟
- طرق الإخطار بنتائج تنفيذ خطوط الأنابيب
يمارس:
- إعداد خط أنابيب مع إرسال النتائج
التنمية في جنكينز
سوف تتعلم مجالات تطبيق مكتبة Jenkins المشتركة ومحرك قوالب Jenkins، وتتعلم كيفية إنشاء JSL بسيط.
نظرية:
- دعونا نلقي نظرة على طريقتين باستخدام الأمثلة:
- مكتبة جنكينز المشتركة ومحرك قوالب جنكينز
يمارس:
- إنشاء مكتبة جينكينز المشتركة البسيطة
أفضل الممارسات
سوف تتعلم كيفية إعداد خط أنابيب باستخدام Blue Ocean وإنشاء تكوين Jenkins As a Code.
نظرية:
- طريقة DevOps لتخزين تكوين Jenkins
يمارس:
- إنشاء خط أنابيب باستخدام المحيط الأزرق
- إنشاء تكوين كرمز وتثبيت Jenkins منه
جينكينز على Kubernetes
سوف تتعلم كيفية إعداد تكامل Jenkins وKubernetes. سوف تفهم كيفية تكوين مسار لاستخدام العوامل الديناميكية في Kubernetes.
نظرية:
- التكامل بين جنكينز وKubernetes
يمارس:
- إعداد تكامل Kubernetes
- إعداد خط أنابيب باستخدام العوامل الديناميكية
التحضير للامتحانات
سوف تفكر في عدة خيارات للمهام التي قد يتم تضمينها في المقابلات.
المهمة الأخيرة
سوف تتلقى 2-3 مستودعات (الواجهة الأمامية والخلفية). المهمة هي العمل على عملية CI/CD. ستساعد المهمة في تحديد مستوى نمو المهارات.