האם החיבור הבא אפשרי? Jira + GitLab + GitLab CI/CD
בתקופה האחרונה ישנה התעניינות גוברת ב- GitLab ובפרט ברכיב ה- CI/CD המתקדם שמגיע built-in במוצר.
לאור זאת כתבנו לאחרונה כמה תכנים בנושא וקיימנו כמה מפגשים בנושא (כולם מוקלטים), וקיבלנו הרבה שאלות מעניינות.
במאמר להלן אני מתמקד בשתיים מהשאלות שנשאלנו כמה פעמים, והיא: האם אפשר לחבר בין Jira ל- GitLab ? והאם אפשר לחבר בין Jira ל- GitLab CI/CD ?
והתשובה לכך חיובית.
בדקנו את הנושא לעומק ובפוסט הזה נסביר כיצד זה מתאפשר.
החיבור אפשרי הן בגירסת self-hosted שבו השרת בבעלותכם (דהיינו on-premises כאשר השרת מתארח אצלכם או באירוח פרטי בענן כלשהו) והן בגירסת ענן ציבורי (gitlab dot com) — למעשה החיבור אפשרי בכל צורות ההפצה של GitLab CI/CD ושל Jira.
מנסיוננו, מומלץ לבצע תכנון לפני השימוש בהם (לדוג': כיצד יראו תהליכי העבודה וה- pipelines ; הדרכות למשתמשים וכו').
איך יראה תהליך העבודה יחד?
בתרשים להלן תהליך עבודה בסיסי שבנינו ואותו אנו מציגים לחברות להן אנו מסייעים בפיתוח תהליכי פיתוח ו- pipelines.
(כאמור, התהליך להלן הינו בסיסי, אך כולל את כל השלבים ב "רביעיה הקלאסית" (קישור למאמר בהמשך), וניתן לשנות בו דברים רבים בהתאם לצרכים ספציפיים בכל חברה)
הסבר לתרשים לעיל:
- The group leader creates an issue in JIRA to fix a bug or develop a feature and assigns it to a developer. The issue is in the “To Do” status.
- The developer starts working. He moves the issue to status “Doing”, then creates a branch and clones or pulls the repo to his workstation.
- After the feature is developed/the bug is fixed, the developer pushes his work to the GitLab server, which triggers a CI pipeline.
- If the pipeline succeeds, the developer creates a Merge Request, thus starting a code review.
- As a result of the code review, the developer may be requested to do a number of changes before the Merge Request is merged, with each change triggering a CI pipeline.
- At last, the Merge Request is merged into the master branch, and again a CI pipeline runs to check the merge result.
- Some changes may be needed on the master branch, after which the software is marked as a new baseline and the JIRA issue is marked as “Done”
- Note that there can be many variations on this flow. E.g., there can be an additional JIRA status, “QA Testing” to which the issue moves when a Merge Request is merged.
לסיכום (ונקודות נוספות שלמדנו מהבדיקה שביצענו):
- ניתן לחבר בין Jira ל- GitLab CI/CD (וכך מקבלים את כל הפונקציונליות והפיצ'רים הקיימים ב- GitLab CI/CD)
- ניתן גם לחבר בין Jira + GitLab (בעבר כתבנו מאמר בנושא וגם הוצאנו וידאו המדגים זאת)
-
לחילופין ניתן להשתמש ב- GitLab לכל הפונקציונליות שמגיעה מ- Jira , כפתרון "lightweight"
(דהיינו ש- GitLab יכול לשמש ככלי אחד שמחליף את Jira + Bitbucket + Jenkins)
שאלות? נשמח לענות על כל שאלה – אפשר לפנות אלינו במייל devops@almtoolbox.com או טלפונית 072-240-5222
קישורים רלבנטים:
- אתר GitLab עברית להעמקה נוספת
- אתר Jira עברית להעמקה נוספת
- מאמר: סקירת הפיצ'רים הקיימים ב- GitLab CI/CD (עברית)
- דו"ח Forrester המציג דו"ח השוואתי של כלי CI מובילים ויתרונות של GitLab CI/CD (אנגלית)
- דמו טכני של GitLab CI/CD
- רשימה מלאה של כל הפיצ'רים הקיימים ב- GitLab , מסודרים לפי Edition ו- Category
- מאמר: "הרביעיה הקלאסית" למפתחי תוכנה (עברית)
- GitLab CI/CD workshop – בקרוב
- בקרוב: הדגמה של שימוש ב- GitLab CI/CD Pipelines בחברת StartApp (עברית)
- Case Study – מדוע AppsFlyer עברו מ- Bitbucket ל- GitLab (עברית)
- רשימת קורסים שאנו מעבירים על GitLab, Bitbucket, git, Jira, Jenkins
רוצים להשאר מעודכנים כאשר נוסיף לאתר מידע נוסף על GitLab CI/CD ? שלחו לנו את המייל הבא. אנו מתחייבים לא לשלוח SPAM .