משימה 6: ה‑deployment הראשון
במשימה הזאת ה‑pipeline נעשה פתרון שלם: merge ל‑main מעלה את הגרסה החדשה ל‑AWS.
כתבו את ה‑job של ה‑deploy
- קבלו את ה‑role עם
aws-actions/configure-aws-credentials.
אפשרות 1: EKS
- Deployment (שני replicas, readiness probe על
/healthz) ו‑Service מסוג LoadBalancer, ב‑deploy/. - ה‑job מעדכן את ה‑image ל‑tag של ה‑commit ומחכה ל‑rollout. TODO: kubectl set image, או kustomize.
אפשרות 2: EC2
- TODO: פקודת ה‑deploy ואיך ה‑job מחכה לה.
כתבו את ה‑smoke test
- קראו ל‑
/healthzשל ה‑load balancer ול‑route אחד של CRUD; הכשילו את ה‑job אם אחד מהם נכשל.
עשו merge לשינוי, וצפו בו יוצא
- שנו response, פתחו pull request, קבלו את האישור, עשו merge.
- ה‑run של ה‑merge מעלה אותו; קראו ל‑API וראו את השינוי.
כל ה‑pipeline עובד עכשיו. המשימות הבאות מחליפות את ה‑placeholders שנשארו ומוסיפות פרטים.