🎯 מטרות הלמידה
- נלמד כיצה להפעיל Service Container של MongoDB לצד ה-Job ב-CI
- נבין את ההבדל בין
container: ברמת ה-Job לבין services: שליד של Job
- נתרגל מיפוי פורטים והעברת משתני סביבה לטסטים
- נבין כיצה ה-Job מתקשר ל-MongoDB באמצעות
localhost / 127.0.0.1
📎 מאגר הריפו
🔗 https://github.com/IITC-College/lab13-service-containers
חלק 1: היכרות עם הפרויקט
הסבר
הפרויקט מכיל מודול ניהול משימות שמתקשר ל-MongoDB אמיתי. הטסטים הם Integration Tests — הם צריכים מסד נתונים שרץ ולא יעבדו בלעדיו.
פעולות
- שכפלו את הריפו ובחנו את מבנה הקבצים
- פתחו את
src/tasks.js ובחנו:
- לאיזה משתני סביבה הקוד מתקשר?
- אילו שלוש פונקציות מוצאות?
- פתחו את
test/tasks.test.js ובחנו מה כל טסט בודק
- נסו להריץ
npm install && npm test מקומית — וודאו שהטסטים נכשלים מייד (זה צפוי!)
מה מתרחש
- הטסטים נכשלים מייד כי אין MongoDB פועל בסביבה המקומית — זו התנהגות צפויה
- פתרון: להריץ MongoDB זמנית כ-Service Container בזמן ה-CI
נקודות מפתח