שילוב GitLab

0 מבוא

שילוב GitLab הוא תוסף שניתן להוסיף לכל אחת משלוש התוכניות של Easy Redmine.

מטרת התוסף היא לצבור נתונים חשובים מ-GitLab ב-Easy Redmine על מנת לסייע בדיווח, הערכה והצגת פעילויות הפיתוח, ובכך לתמוך בקבלת החלטות מצד בעלי העניין המושקעים בפרויקטים ובתהליכי פיתוח התוכנה של החברה.

היכולות שלו כוללות חיבור ראשוני פשוט מאוד עם מופע ה-GitLab שלך (שתיהן אירוח עצמי או גרסאות ענן). כאשר החיבור נוצר, Easy Redmine יציג את הפריטים החשובים ביותר מ-GitLab ברשימות הניתנות להגדרה וניתנות לסינון (בדומה לרשימת משימות). הישויות הללו הן:

  • מאגרים
  • מיזוג בקשות
  • מתחייב
  • בדיקות

כולל התכונות החשובות ביותר שלהם.

מרכיב מרכזי באינטגרציה הוא ש- Easy Redmine לא מעתיק את המאגרים פיזית. הקוד נשאר ב-GitLab.

1 יצירת קשר

ראשית, עליך לקבל אסימון גישה ממשתמש ב-GitLab, עם הרשאות מתאימות.

  1. בחר משתמש שדרכו Easy Redmine תיגש ל-GitLab. זה עשוי להיות משתמש מיוחד שאף אדם לא מתחבר אליו, למשל, er_integrator
  2. ערוך את הפרופיל של משתמש זה
  3. עבור אל אסימוני גישה, בחר את כל ההרשאות ו צור אסימון גישה אישי

  4. העתק את האסימון הזה


    כעת, אתה יכול ללכת אל Easy Redmine ולהזין את המידע החיוני

  5. עבור אל Admin >> אינטגרציה של GitLab >> מצא שילובים זמינים ופגע גדר
  6. תן לחיבור שלך שם, הזן את כתובת האתר ואת אסימון הגישה שיצרת קודם לכן.
    הערה: במקרה של ענן, למשל https://gitlab.com/my-little-gitlab , פשוט היכנס https://gitlab.com/ ללא כתובת המשנה. אין צורך לדאוג, אתה יכול לראות רק פרויקטים שהמשתמש עם אסימון הגישה יכול לראות. אם תגדיר את כל הפרויקטים שלך כפרטיים, אף אחד אחר לא יוכל לראות אותם.
  7. שמור
  8. זהו זה! החיבור נעשה.

כל השאר נעשה אוטומטית ברקע. באופן מיוחד

  • Easy Redmine מביא את כל הפרויקטים/מאגרים שבהם חבר המשתמש עם אסימון הגישה
  • במאגרים אלה נוצרים webhooks => כך שמידע על חדש מתחייבים, בקשות מיזוג ובדיקות יישלחו אל Easy Redmine

1.1 פתרון בעיות חיבור

בעיה א
אני לא רואה שום מאגר ממופע GitLab זה

עקב נסיבות בלתי צפויות, עלול לקרות שהפעולות האמורות לא יבוצעו בהצלחה. כתוצאה מכך, ייתכן שלא תראה שום מאגר ממופע GitLab זה ב-Easy Redmine.

במקרה כזה, אתה יכול לייבא את המאגרים באופן ידני, בכמה לחיצות בלבד.

  1. עבור אל Admin >> אינטגרציה של Gitlab >> אינטגרציות מוגדרות >> לחץ על השם

  2. בתפריט הצד, לחץ תבואו

  3. בחר את הקבוצה
    עם GitLab שמתארח בעצמו, תהיה קבוצה המייצגת את כל המופע. כמו בדוגמה מצילום מסך.
    עם GitLab בענן, תראה את כל הקבוצות הציבוריות וכנראה תצטרך לחפש את הקבוצה שלך. השדה הוא השלמה אוטומטית, כך שהחיפוש מהיר וקל.
  4. לאחר בחירתו ולחיצה משם, תראה את רשימת הפרויקטים/מאגרים שנמצאו
  5. בחר הכל והקש תבואו

בעיה ב '
נמצאו מאגרים, אבל ההתחייבויות, בקשות המיזוג והבדיקות החדשות שלי לא מתווספות ל-Easy Redmine

נתונים חדשים מ-GitLab נשלחים אל Easy Redmine באמצעות webhooks המוגדרים ב-GitLab. בנסיבות רגילות, הם נוצרים באופן אוטומטי. אתה יכול לאמת זאת בפרויקט GitLab שלך >> הגדרות >> Webhooks

אם אין webhook עם הקישור לאפליקציה שלך, תצטרך ליצור אותו. שוב, זו פעולה פשוטה.

  1. עבור אל Admin >> אינטגרציה של Gitlab >> אינטגרציות מוגדרות >> לחץ על השם
  2. בתפריט הצד, לחץ על מאגרים

  3. לחץ על השם של אחד
  4. לחץ על רשום את כל האינטגרציות

זה יאלץ באופן ידני יצירה של ה-webhook בצורה הנכונה.

2 הפניה למילות מפתח

כעת, כשהחיבור הכללי מוגדר, כבר יש לך מידע מ-GitLab ב-Easy Redmine ואתה יכול להשתמש בו. עם זאת, כדי לנצל את מלוא היתרונות של האינטגרציה, יש עוד כמה הגדרות. חלקם כבר מוגדרים מראש ואתה יכול רק לבדוק אותם.

אפשר לחבר התחייבויות מסוימות או בקשות מיזוג למשימות מסוימות, ואפילו לרשום זמן כך מבלי שתצטרך לבקר ב- Easy Redmine. זה נעשה על ידי מה שנקרא הפניה למילות מפתח. כאשר אתה משתמש בהם בהודעת ה-commit או שם בקשת המיזוג בשילוב עם מזהה משימה, זה יצור קישור בין המשימה לפריט GitLab. הדוגמאות הנפוצות ביותר הן שופטים מס' 1234 or סוגר #1234

ברוב המקרים, תמצא כמה מילות מפתח מוגדרות מראש. הנה איך לעבוד איתם.

  1. עבור לתפריט עוד >> אינטגרציה של GitLab >> הפניות
  2. צור או ערוך הפניה
  3. הטופס כולו מכיל עצות כלים שיעזרו לך לנווט דרכך

הכללים החשובים ביותר שיש לזכור הם:

  • יש לזהות את המשימה בטופס #ID , למשל #1234
  • זמן רישום (אם מותר) מוזן תמיד כ-@XhYm , למשל @1h30m
  • ב-commits, יש להזין את מילות המפתח המתייחסות ב- להעביר מסר
  • בבקשות מיזוג, יש להזין את מילות המפתח המתייחסות ב- שם של בקשת המיזוג

3 מיפוי משתמשים

מכיוון שאנו עוסקים באינטגרציה של שני יישומים שונים, לכל אחד יש קבוצות שונות של משתמשים. כל תכונות המשתמש בישויות הקשורות ל-GitLab (מחבר התחייבות, מבקר בבקשת מיזוג וכו') ב-Easy Redmine + זמן שהשקעתי בהתחברות באמצעות מילות מפתח, צריכות להיות מחוברות למשתמשים אמיתיים. אז איך בעצם ממופים משתמשים מ-GitLab ל-Easy Redmine?

שום דבר מדעי כאן, משתמשים פשוט ממופים באמצעות המייל בשני פרופילי המשתמש. אנא ודא שלמפתחים שלך יש אימיילים זהים גם ב-GitLab וגם ב-Easy Redmine.

אם, מסיבה כלשהי, משתמש אחד לא יכול לאחד את המיילים בשתי האפליקציות, ישנה אפשרות להזין מייל נוסף ב-Easy Redmine בפרופיל המשתמש -> להזין את המייל של GitLab כאן.


4 איך זה עובד

סוף סוף, אנחנו מגיעים לחלק המהנה. מה בעצם עושה האינטגרציה עבור המשתמשים. גש לדף הראשי/לוח המחוונים של שילוב GitLab דרך תפריט עוד (מימין למעלה) בסעיף תוספות.

תמצא עמוד הניתן להתאמה אישית במצב ברירת מחדל, שאותו תוכל מאוחר יותר לכוון לצרכים שלך.

זה כולל גם תפריט לרשימת ישויות או הזנת הגדרות. כפי שהוזכר בהקדמה, Easy Redmine אוסף ומציג 4 ישויות חיוניות מ- GitLab. הבה נסתכל מקרוב על כל אחד מהם.

4.1 מאגרים

רשימת המאגרים היא פונקציונלית הפחות מעניינת, אם כי באמת נחוצה. מסנן שימושי שכדאי להזכיר נקרא שֵׁרוּת, שבו תשתמש אם יש לך מופעים שונים של GitLab מחוברים ואתה צריך לחפש רק בחלק מהם.

שם המאגר מכיל גם את שם הקבוצה שלו.

פירוט המאגר

הערות:

  • (בטל) רישום כל האינטגרציות תוארו בפרק 1.1. זה יצור/ימחק webhooks בפרויקט GitLab.
  • ערוך - שנה כמה תכונות באופן ידני. אין סיבה מלבד איתור באגים מתקדם לערוך תכונות כלשהן של המאגר ב-Easy Redmine.
  • סנכרן - מוריד את כל הנתונים הנוכחיים מהמאגר.
  • מיזוג בקשות - מפרט את כל בקשות המיזוג במאגר זה.
  • בחר תבנית רצף - עדיין בפיתוח, בבקשה תן לנו יותר זמן ללטש את הכלי החזק הזה.

4.2 בקשות מיזוג (בקשות קוד)

עלינו להבהיר מדוע יש שני שמות. בקשת מיזוג הוא המונח המשמש ב-GitLab. לכלים אחרים יש שמות שונים, למשל בקשה למשוך. מנגנון האינטגרציה של הכלי שלנו כתוב בצורה כללית, כך שנוכל להרחיב את התמיכה לפלטפורמות Git אחרות. לכן, באפליקציה ובתמונות תוכל למצוא תווית בקשת קוד, שהוא מונח כללי שניתן להחיל על בקשות מיזוג או בקשות משיכה.

בקשת המיזוג היא ישות עשירה (מאחסנת את כל התכונות החשובות) המאפשרת ליצור רשימות, דוחות ותרשימים נחמדים מעליהם ישירות ב-Easy Redmine.

פירוט בקשת המיזוג

הערות:

  • שם בקשת המיזוג מכיל את מילת המפתח המתייחסת "refs" ואחריה את מזהה המשימה עם hash #765 - זו הסיבה שהיא הייתה מקושרת למשימה 765
  • לחיצה על סנכרן יעדכן את כל הנתונים של MR זה מ-GitLab
  • ניתן להציג את כל התכונות ברשימת בקשות המיזוג
  • כל התכונות מלבד SHA יכולות לשמש כמסננים ברשימה/דוח/תרשים של בקשות מיזוג
  • רשימת בקשות המיזוג מכילה גם תכונות של בדיקות (CI/CD) הקשורות אליה, והכי חשוב - סטטוס בדיקה

4.3 מתחייב

בדומה לבקשות מיזוג, רשימת ההתחייבויות מספקת גם אפשרויות דיווח עצומות. רשימת ההתחייבויות מכילה גם תכונות ממבחנים.


ל-Commit אין תצוגת פירוט משלה ב-Easy Redmine. פשוט אין צורך בזה. על ידי לחיצה על URL (או SHA), תופנה לפרטיו ב-GitLab.

בדיקות 4.4

הם הוזכרו ביחס לגופים לעיל. למבחנים יש גם רשימה משלהם להפקת דוחות שונים. ככל הנראה השימוש הנפוץ ביותר יהיה תצוגה חיה של בדיקות במאגרים הקריטיים, כגון מועמדי שחרור.

לבדיקה גם אין תצוגת פרטים משלהם, לחיצה תוביל אותך ל-GitLab.

4.5 סינרגיה - מבט ממשימה

בואו נסתכל איך הכל הולך ביחד.

1 סטטוס כולל של ישויות GitLab הקשורות למשימה זו. הוא עשוי להכיל שילובים שונים של צבעים (אדום, כתום, ירוק) ואייקונים (סימן ביקורת, צלב). הטוב ביותר הוא, כמובן, סימן ביקורת ירוק במסגרת ירוקה
השילוב תלוי בסטטוס של בקשות מיזוג ותוצאות בדיקה הקשורות להתחייבויות ולבקשות מיזוג. מטרתו היא להראות במבט ראשון כיצד מתקדמת ההתקדמות ה"טכנית" של משימה זו, שימושית במיוחד עבור מנהלי איכות הסביבה או משלוחים.

2 שם המאגר(ים) שאליו בוצעו השינויים המתייחסים למשימה זו. בלחיצה על הקישור תופנה לרשימת ההתחייבויות הללו.

3 שם הבקשות למיזוג המתייחסות למשימה זו. בלחיצה עליו תופנו לפרטי ה-MR ב-Easy Redmine.
במקרה שיש רק commits המתייחסים למשימה זו אך חסרה בקשת מיזוג, ערך זה ריק.

4 סטטוס של כל בקשת מיזוג. בלחיצה עליו תופנו לפרטי בקשת המיזוג ב-GitLab.
במקרה שיש רק commits המתייחסים למשימה זו אך חסרה בקשת מיזוג, ערך זה ריק.

5 תוצאה של הפעלת הבדיקה האחרונה בבקשת המיזוג. בלחיצה עליו תופנו לצינור ב-GitLab. זה לא ניתן ללחיצה פנימה לא ידוע סטטוס (צינור לא קיים).
במקרה שיש רק commits המתייחסים למשימה זו אך חסרה בקשת מיזוג, הערך מציג את תוצאת הבדיקה האחרונה שבוצעה ב-commit האחרון.

6 הרץ בדיקה ידנית - לחץ כדי להפעיל את הצינור באופן ידני (מעביר אותך ל-GitLab).

7 לחץ כדי ליצור בקשת מיזוג. שימושי כאשר יש לך רק קבוצה של מחויבים, אבל חסר לך את ה-MR (לוקח אותך ל-GitLab).

4.6 צור ענף ממשימה

(הערה: תכונה זמינה מ-11plus.6.0)

חלק מהמשתמשים מוצאים את זה שימושי ליצור סניף ישירות מהמשימה.

את הכפתור ניתן למצוא ב- תפריט נוסף על פירוט המשימה


בחר את המאגר בשדה ההשלמה האוטומטית. שם הסניף ממולא מראש במזהה המשימה ובנושא, אבל אתה יכול לשנות אותו. ענף המקור ממולא מראש על ידי אב

אתה תראה את הסניף כתגית בקטע שילוב Gitlab במשימה. זה ניתן ללחיצה ומוביל לסניף ב-GitLab.



5 הרשאות

יש כרגע שתי הרשאות.

  • הצג - גש לתוסף מתפריט עוד
  • נהל - ערוך את לוח המחוונים

התצורה הגלובלית נגישה רק למנהל Easy Redmine.

נסה את Easy Redmine תוך 30 יום ניסיון חינם

תכונות מלאות, מוגנת SSL, גיבויים יומיים, במיקום הגיאוגרפי שלך