فهرس الدليل

دليل شامل

DevOps & CI/CD: الأتمتة والنشر

📅 22 أغسطس 2026 | ⏱️ 35 دقيقة قراءة

CI/CD (التكامل والنشر المستمر) هي ممارسات DevOps الأساسية لأتمتة بناء واختبار ونشر التطبيقات. GitHub Actions تجعل هذه العملية سهلة ومباشرة.

الجزء الأول: مقدمة عن CI/CD

1.1 ما هو CI/CD؟

💡 خلاصة:

  • ✅ CI/CD تقلل الأخطاء وتسرع عملية التطوير.

⚙️ الجزء الثاني: GitHub Actions

2.1 إنشاء Workflow أساسي

name: CI Pipeline
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - run: npm install
      - run: npm test

خلاصة:

  • ✅ workflows تُنشأ في ملف .github/workflows/
  • ✅ on: تحدد متى يُشغل الـ workflow (push, pull_request).

🚀 الجزء الثالث: النشر التلقائي

3.1 Deploy على فرع main

name: Deploy
on:
  push:
    branches: [main]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Deploy to Server
        run: echo "Deploying..."

💡 خلاصة:

  • ✅ استخدم branches لتحديد الفرع المستهدف.
  • ✅ النشر يتم تلقائياً عند كل push لـ main.

🐳 الجزء الرابع: بناء Docker

4.1 أتمتة بناء الصور

name: Docker Build
on: [push]
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
      - name: Build Docker Image
        run: docker build -t myapp .

💡 خلاصة:

  • ✅ أتمتة بناء Docker توفر الوقت وتضمن الاتساق.

الجزء الخامس: Matrix Strategy

5.1 الاختبار على بيئات متعددة

name: Matrix Test
on: [push]
jobs:
  test:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node: [16, 18, 20]
    steps:
      - uses: actions/checkout@v3
      - name: Use Node
        uses: actions/setup-node@v3
        with:
          node-version: MATRIX_NODE

💡 خلاصة:

  • ✅ Matrix تتيح تشغيل نفس الـ job بإعدادات مختلفة.
  • ✅ مثالي لاختبار التطبيق على إصدارات Node متعددة.

🔐 الجزء السادس: الأسرار والمتغيرات

6.1 استخدام Secrets بأمان

name: Secure Deploy
on: [push]
jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - name: Use Secret
        run: echo "API_KEY is set"
        env:
          API_KEY: SECRET_API_KEY

خلاصة:

  • ✅ Secrets تُخزن بأمان في Settings > Secrets.
  • ✅ لا تضع مفاتيح API مباشرة في الكود!

📋 الجزء السابع: الملخص السريع

المفهوم الاستخدام
Workflowملف YAML يحدد خطوات CI/CD
Jobsمجموعة من الخطوات تُنفذ معاً
Actionsخطوات جاهزة لإعادة الاستخدام
Secretsتخزين آمن للمفاتيح الحساسة
Matrixالاختبار على بيئات متعددة

🎉 مبارك!

أصبحت الآن قادراً على أتمتة بناء ونشر تطبيقاتك باستخدام CI/CD.

تم نسخ الرابط!