الملفات
ghaymah-exam-mohamed-adel-sre/README.md
2026-07-28 03:54:42 +03:00

34 أسطر
2.8 KiB
Markdown

# Ghaymah Internship Exam — SRE Track
**المتقدم:** Mohamed Adel
**Qabilah Profile:** https://qabilah.com/profile/muhammedadelofficial01/professional-profile
## الروابط المنشورة فعليًا على Ghaymah
| السؤال | الرابط | الحالة |
|---|---|---|
| Q1 — Deploy & Monitor (API) | https://ghaymah-exam-app-06b532d0a81b.hosted.ghaymah.systems | ✅ منشور، `/health` و `/metrics` يعملان بنجاح |
| Q1 — Dashboard | `q1-deploy-monitor/dashboard.html` (مربوط تلقائيًا بالرابط أعلاه) | ✅ |
| Q5 — Mithal Monitor + Dashboard | https://ghaymah-mithal-monitor-de4c1ce11f85.hosted.ghaymah.systems/dashboard.html | ✅ منشور، البيانات تُجمع كل دقيقة في `metrics.json` |
---
## هيكل التسليم
| المجلد | المحتوى |
|---|---|
| `q1-deploy-monitor/` | Dockerfile + app.py (Flask API مع `/health`) + health-check.sh (فحص كل 30 ثانية) + dashboard.html |
| `q2-postmortem/` | تقرير Postmortem كامل: ملخص، timeline، root cause، سياسة auto-scaling، اكتشاف مبكر |
| `q3-cicd/` | GitHub Actions workflow (build → push → staging → manual approval → production) + شرح الفرق بين البيئتين وربط Ghaymah CLI |
| `q4-scalability/` | architecture.png + حسابات عدد الحاويات (39 حاوية لـ 15,000 req/s) + استراتيجية cold start + شرح Block Storage |
| `q5-mithal-monitor/` | monitor.py (latency, uptime, SSL, DNS, search) + dashboard.html |
| `common-mortakaz/` | اقتراحي تكامل: منصة "مقابلة" (Mock Interviews) ومنصة السيرة الذاتية |
| `common-qabilah/` | رابط الحساب الشخصي على قبيلة |
## ملاحظات مهمة قبل التسليم
- **النشر الفعلي على ghaymah.systems (Q1, Q5):** تم النشر فعليًا (انظر جدول الروابط أعلاه) وتم التحقق يدويًا من عمل `/health` و `/metrics` (Q1) و `/dashboard.html` + `metrics.json` (Q5) بنجاح.
- **متطلبات Q3 (Secrets):** الـ workflow يفترض وجود 3 secrets في إعدادات المستودع: `GHAYMAH_REGISTRY_USER`, `GHAYMAH_REGISTRY_TOKEN`, `GHAYMAH_API_TOKEN` — لازم تضيفهم من حسابك الفعلي قبل تشغيل الـ pipeline.
- **Q5 — رابط بحث mithal.space:** الكود يفترض endpoint افتراضي `/search` — لو الموقع الفعلي له مسار بحث مختلف، عدّل المتغير `search_path` في `monitor.py`.
- **رفع المستودع على GitPasha:** كل الملفات جاهزة هنا؛ الخطوة المتبقية هي إنشاء المستودع `ghaymah-exam-mohamed-adel-sre` على GitPasha ورفع هذا الهيكل كما هو.