ProHoster > בלוג > מינהל > # GitLab 13.4 שוחרר עם אחסון HashiCorp עבור משתני CI ו-Kubernetes Agent
# GitLab 13.4 שוחרר עם אחסון HashiCorp עבור משתני CI ו-Kubernetes Agent
מהדורה 13.4 שוחררה עם אחסון HashiCorp עבור משתני CI, Kubernetes Agent ומרכז אבטחה, כמו גם תכונות הניתנות להחלפה ב-Starter
ב-GitLab, אנו תמיד חושבים כיצד נוכל לעזור למשתמשים להפחית סיכונים, לשפר את היעילות ולשפר את מהירות האספקה בפלטפורמה המועדפת עליך. החודש הוספנו הרבה פיצ'רים חדשים ושימושיים שמרחיבים את יכולות האבטחה, מפחיתות את מספר הפגיעויות, מגדילות את היעילות, מפשטות את העבודה עם GitLab ועוזרות לצוות שלך לספק תכונות מהר יותר. אנו מקווים שתמצאו את התכונות העיקריות של המהדורה שימושיות, כמו גם 53 תכונות חדשות נוספות, נוסף במהדורה זו.
דרך נוספת להפחית סיכונים היא להשתמש בחדש סוכן GitLab Kubernetes. צוותי תפעול יכולים לפרוס אשכולות Kubernetes מ-GitLab מבלי לחשוף את האשכול שלהם לכל האינטרנט. אנחנו גם מציגים תמיכה אוטומטית בבקרת גרסאות עבור קבצי מצב חדשים של Terraform עם GitLab מנוהל מצב Terraform כדי לתמוך בתאימות ובקלות איתור באגים. לבסוף, לוח המחוונים האבטחה של המופע הפך מרכז האבטחה של GitLab עם דוחות פגיעות והגדרות אבטחה.
עבודה נוחה ויעילה יותר עם GitLab
שיפרנו את החיפוש הגלובלי שלנו כך שיכלל ניווט מהיר מסרגל החיפוש, המאפשר לך לנווט בקלות אל הכרטיסים, הקבוצות, הפרויקטים, ההגדרות ונושאי העזרה העדכניים ביותר. אנו נרגשים להכריז שדפי GitLab הופיעו הפניות מחדש להפנות דפים וספריות בודדים בתוך האתר, מה שיאפשר למשתמשים לפרוס את האתרים שלהם בצורה יעילה יותר. ולמי שרוצה לקבל מידע מורחב על הפריסה, מהדורה זו מאפשרת נהל מאות פריסות פרויקטים נתמכות מסרגל הכלים של הסביבה!
פאביו תרם משמעותית תְרוּמָה в הצגת כיסוי קוד בהפרשי בקשת מיזוג - פיצ'ר שחיכו לו הרבה מאוד זמן בקהילת GitLab. זוהי תרומה חשובה באמת עם שינויים לא טריוויאליים שדרשו שיתוף פעולה מתמיד עם חברי צוות GitLab והשפיעו על תחומים רבים בפרויקט כמו UX, Front-end ו-back-end.
במהדורה 12.10, GitLab הציגה את היכולת לקבל ולהעביר מפתחות לעבודות CI באמצעות מטפל העבודה של GitLab (GitLab runner). עכשיו אנחנו מתרחבים אימות באמצעות JWT, הוספת תחביר חדש secrets לתייק .gitlab-ci.yml. זה יקל על ההגדרה והשימוש במאגר HashiCorp עם GitLab.
האינטגרציה של GitLab עם Kubernetes אפשרה זה מכבר לפרוס באשכולות Kubernetes ללא צורך בתצורה ידנית. משתמשים רבים אהבו את קלות השימוש בחבילה זו, בעוד שאחרים נתקלו בקשיים מסוימים. לצורך השילוב הנוכחי, האשכול שלך חייב להיות נגיש מהאינטרנט כדי ש-GitLab תוכל לגשת אליו. עבור ארגונים רבים, זה לא אפשרי מכיוון שהם מגבילים את הגישה לאשכולות מסיבות אבטחה, תאימות או רגולציה. כדי לעקוף את ההגבלות הללו, המשתמשים היו צריכים לבנות את הכלים שלהם על גבי GitLab, אחרת הם לא יוכלו להשתמש בתכונה הזו.
היום אנחנו מציגים את GitLab Kubernetes Agent, דרך חדשה לפריסה באשכולות Kubernetes. הסוכן פועל בתוך האשכול שלך, כך שאתה לא צריך לחשוף אותו לכל האינטרנט. הסוכן מתאם את הפריסה על ידי בקשת שינויים חדשים מ-GitLab, במקום ש-GitLab דוחף עדכונים לאשכול. לא משנה באיזו שיטת GitOps אתה משתמש, GitLab סיפקה אותך.
שימו לב שזוהי הגרסה הראשונה של הסוכן. המיקוד הנוכחי שלנו עבור GitLab Kubernetes Agent הוא להגדיר ולנהל פריסות באמצעות קוד. חלק מתכונות האינטגרציה הקיימות של Kubernetes, כגון לוחות פריסה ואפליקציות מנוהלות של GitLab, אינן נתמכות עדיין. אנחנו מניחיםשהיכולות הללו יתווספו לסוכן במהדורות עתידיות, כמו גם אינטגרציות חדשות המתמקדות באבטחה ותאימות.
בעבר, מערכת ההרשאות של GitLab הקשתה על חלוקת אחריות נכונה בתוך הצוות שלך בין האחראים על הפיתוח לבין האחראים על הפריסה. עם שחרורו של GitLab 13.4, אתה יכול לתת הרשאה לאשר בקשות מיזוג לפריסה, כמו גם לפרוס קוד בפועל לאנשים שאינם כותבים את הקוד, מבלי לתת להם זכויות גישה למתחזק (בלוקליזציה הרוסית של GitLab "maintainer" ).
בעבר, ניהול פגיעות ברמת המופע היה מוגבל הן בפונקציונליות והן בגמישות. הממשק היה עמוד יחיד המשלב פרטים של נקודות תורפה, גרפי מדדים והגדרות. אין הרבה מקום לפתח תכונות אלה או להשתמש בתכונות אבטחה אחרות.
ביצענו שינויים מהותיים באופן שבו אנו מנהלים את האבטחה והשקיפות ב-GitLab. לוח האבטחה של המופע הפך למרכז אבטחה שלם. השינוי הגדול ביותר הוא הכנסת מבנה תפריט חדש: במקום עמוד אחד, כעת אתה רואה את לוח המחוונים של האבטחה, דוח הפגיעות וסעיף ההגדרות בנפרד. אמנם הפונקציונליות לא השתנתה, אך פירוקה לחלקים יאפשר שיפורים בסעיף זה שאחרת יהיה קשה. זה גם מהווה את הקרקע להוספת יכולות אחרות הקשורות לאבטחה בעתיד.
בחלק הייעודי של דוח פגיעות יש כעת יותר מקום להצגת פרטים חשובים. להלן נקודות התורפה שנמצאות כעת ברשימת נקודות התורפה של הפרויקט. העברת ווידג'טים עם מדדי פגיעות למקטע נפרד יוצר לוח בקרת אבטחה נוח. כעת הוא מהווה קנבס להדמיות עתידיות - לא רק לניהול נקודות תורפה, אלא לכל מדדים הקשורים לאבטחה. לבסוף, אזור הגדרות נפרד יוצר מרחב משותף לכל הגדרות האבטחה ברמת המופע, לא רק ניהול נקודות תורפה.
מוקדם יותר השנה, GitLab התחייבה להעביר 18 תכונות לתוך קוד פתוח. במהדורה זו, השלמנו את המעבר של תכונות הניתנות להחלפה לתוכנית Starter ונמשיך להעביר אותן ל-Core מ- Git Lab 13.5. אנו שמחים להביא את התכונה הזו ליותר משתמשים ורוצים לשמוע כיצד אתה משתמש בה.
לפעמים בעת ניווט ב-GitLab אתה רוצה לעבור ישר לפרויקט ספציפי ולא לדף תוצאות החיפוש.
באמצעות סרגל החיפוש הגלובלי, תוכל לנווט במהירות אל הכרטיסים, הקבוצות, הפרויקטים, ההגדרות ונושאי העזרה העדכניים ביותר. אתה יכול אפילו להשתמש במקש קיצור /להזיז את הסמן לשורת החיפוש כדי לנווט ב-GitLab ביעילות רבה עוד יותר!
בעת בדיקת בקשת מיזוג, יכול להיות קשה לקבוע אם הקוד שהשתנה מכוסה על ידי בדיקות יחידה. במקום זאת, סוקרים יכולים להסתמך על הכיסוי הכולל ולבקש להגדיל אותו לפני אישור בקשת מיזוג. זה יכול להוביל לגישה אקראית לכתיבת מבחנים, שלמעשה לא תשפר את איכות הקוד או את כיסוי הבדיקה.
כעת, בעת הצגת הבדל בקשת מיזוג, תראה תצוגה ויזואלית של כיסוי קוד. סימנים חדשים יאפשרו לך להבין במהירות האם הקוד שהשתנה מכוסה בבדיקת יחידה, מה שיעזור להאיץ את סקירת הקוד ואת זמן המיזוג והפריסה של קוד חדש.
מאז יציאת GitLab 12.5 באמצעות לוחות סביבה אתה יכול לעקוב אחר מצב הסביבות, אבל לא יותר משבע סביבות בשלושה פרויקטים. שיפרנו את הלוח הזה במהדורה 13.4 על ידי עימוד שלו כדי לעזור לך לתחזק ולנהל את הסביבות שלך בקנה מידה. עכשיו אתה יכול לראות יותר סביבות בפרויקטים נוספים.
בדיקת API fuzzing היא דרך מצוינת למצוא באגים ופגיעויות ביישומי האינטרנט ובממשקי ה-API שלך שסורקים ושיטות בדיקה אחרות עלולים לפספס.
בדיקת API fuzzing ב- GitLab מאפשרת לך לספק מפרט OpenAPI v2 או קובץ HAR היישום שלך ואז מייצר אוטומטית נתוני קלט אקראיים שנועדו לבדוק מקרי קצה ולמצוא באגים. התוצאות נראות מיד בתוך הצינור שלך.
זוהי המהדורה הראשונה של בדיקת ה-API ל-fuzz ואנו נשמח לשמוע מה דעתך. יש לנו עוד במלאי עבור בדיקות fuzz רעיונות רבים, שבו נתבסס על שחרורו של תכונה זו.
בעבר, יצירת גרף בלוח המחוונים של המדדים ב-GitLab לא הייתה משימה קלה. לאחר שיצרת את המדד בקובץ YAML לוח המחוונים, ביצעת שינויים ב master, מבלי יכולת לוודא שהגרף החדש שנוצר עובד בדיוק כפי שאתה צריך. החל מהגרסה הזו, אתה יכול לצפות בשינויים בתצוגה מקדימה תוך כדי יצירת הגרף, לקבל מושג על התוצאה לפני שליחת השינויים לקובץ YAML של לוח המחוונים.
כאשר אתה מנהל מספר רב של פרויקטים ב-GitLab, אתה צריך מקור מידע יחיד על האופן שבו כיסוי הקוד משתנה לאורך זמן בכל הפרויקטים. בעבר, הצגת המידע הזה דרשה עבודה ידנית מייגעת וגוזלת זמן: היית צריך להוריד נתוני כיסוי קוד מכל פרויקט ולשלב אותם בטבלה.
במהדורה 13.4, ניתן היה להרכיב בקלות ובמהירות .csv קובץ עם כל הנתונים על כיסוי קוד עבור כל הפרויקטים של הקבוצה או עבור מבחר פרויקטים. תכונה זו היא MVC, אחריה תופיע היכולת כיסוי ממוצע של העלילה לאורך זמן.
מהדורה זו מציגה תמיכה במספר שפות חדשות עבור בדיקות fuzz שמטרתן כיסוי מלא.
כעת אתה יכול להעריך את מלוא היכולות של בדיקות מטושטשות ביישומי Java, Rust ו-Swift שלך ולמצוא שגיאות ופגיעויות שסורקים ושיטות בדיקה אחרות עלולים להחמיץ.
הדף סביבות מציג את המצב הכללי של הסביבות שלך. במהדורה זו שיפרנו דף זה על ידי הוספת תצוגת התראה. התראות המופעלות יחד עם מצב הסביבות שלך יעזרו לך לנקוט בפעולה מהירה כדי לתקן מצבים שמתעוררים.
צינורות מקוננים יכולים כעת להפעיל צינורות מקוננים משלהם
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
על ידי שימוש בצינורות מקוננים, ניתן כעת להפעיל צינורות חדשים בתוך צינורות צאצאים. רמת העומק הנוספת יכולה להיות שימושית אם אתה צריך את הגמישות ליצור מספר משתנה של צינורות.
בעבר, בעת שימוש בצינורות מקוננים, כל צינור צאצא דרש הגדרה ידנית של עבודת טריגר בצינור האב. כעת אתה יכול ליצור צינורות מקוננים שיפעילו באופן דינמי כל מספר של צינורות מקוננים חדשים. לדוגמה, אם יש לך monorepository, אתה יכול ליצור באופן דינמי את תת-הצינור הראשון, שבעצמו ייצור את המספר הנדרש של צינורות חדשים בהתבסס על שינויים בסניף.
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
בעבר, הניווט בין צינורות האב לצינורות מקוננים לא היה נוח במיוחד - היית צריך הרבה קליקים כדי להגיע לצינור הרצוי. זה גם לא היה קל להבין איזו עבודה התחילה את הצינור. כעת יהיה הרבה יותר קל לראות את הקשרים בין צינורות האב לצינורות מקוננים.
עבודות מטריצה מקבילות מציגות משתנים רלוונטיים בתואר המשרה
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
אם השתמשת מטריצת משימות, אולי שמתם לב שהיה קשה לקבוע באיזה משתנה מטריצה נעשה שימוש עבור עבודה מסוימת, מכיוון ששמות המשרה נראו כך matrix 1/4. במהדורה 13.4, תראה את ערכי המשתנים הרלוונטיים שהיו בשימוש בעבודה זו במקום שם המשרה הגנרי. לדוגמה, אם המטרה שלך היא לנפות באגים בארכיטקטורת x86, אז העבודה תיקרא matrix: debug x86.
משתמשי GitLab יוכלו כעת לחבר את חשבונות GitLab שלהם לחשבון Atlassian Cloud שלהם. זה יאפשר לך להיכנס ל-GitLab עם האישורים שלך מ-Atlassian, וגם יניח את הבסיס לשיפורי אינטגרציה עתידיים. גיטלב עם ג'ירה ועם מוצרים נוספים מליין אטלסיאן.
ארגונים ממוקדי ציות צריכים דרך להראות למבקרים השקפה הוליסטית של המרכיבים הקשורים לכל שינוי נתון בייצור. ב-GitLab זה אומר לאסוף הכל במקום אחד: בקשות מיזוג, כרטיסים, צינורות, סריקות אבטחה ונתוני מחויבות אחרים. עד עכשיו, היית צריך לאסוף אותו באופן ידני ב-GitLab או להגדיר את הכלים שלך לאסוף את המידע, מה שלא היה יעיל במיוחד.
כעת תוכל לאסוף ולייצא נתונים אלה באופן פרוגרמטי כדי לעמוד בדרישות הביקורת או לבצע ניתוחים אחרים. כדי לייצא רשימה של כל התחייבויות המיזוג עבור הקבוצה הנוכחית, עליך לעבור אל לוחות מחוונים של תאימות ולחץ על הכפתור רשימה של כל התחייבויות המיזוג. הקובץ שיתקבל יכיל את כל ההתחייבויות של בקשת המיזוג, המחבר שלהם, מזהה בקשת המיזוג הקשורה, קבוצה, פרויקט, מאשרים ומידע אחר.
ניהול הגישה למרחב השמות של GitLab הוא חלק חשוב ממאמצי הציות. מעקרונות של הרשאות מינימליות ועד ביטול גישה מתוזמנת, עשויות להיות מספר דרישות הקשורות לאסימוני גישה אישיים ב-GitLab. כדי להקל על התחזוקה והניהול של כל אישורי המשתמש הללו בתוך מרחב השמות שלך, סיפקנו את היכולת לרשום את כל אסימוני הגישה האישיים ובאופן אופציונלי לדחות גישה באמצעות API.
שיפורים אלה ב-GitLab API מאפשרים למשתמשים לרשום ולבטל את אסימוני הגישה האישיים שלהם, ולמנהלי מערכת לרשום ולבטל את אסימוני המשתמשים שלהם. כעת יהיה קל יותר למנהלי מערכת לראות למי יש גישה למרחב השמות שלהם, לקבל החלטות גישה על סמך נתוני משתמשים ולבטל אסימוני גישה אישיים שייתכן שנפגעו או שנפלו מחוץ למדיניות ניהול הגישה של החברה.
כאשר בודקים שינויי קוד, דיונים והתחייבויות לבקשת מיזוג, לרוב רצוי לבצע צ'ק-אאוט מקומי בסניף לבדיקה מעמיקה יותר. עם זאת, מציאת שם השרשור הופכת קשה יותר ככל שמתווסף תוכן נוסף לתיאור בקשת המיזוג ואתה צריך לגלול בהמשך העמוד.
הוספנו את שם הסניף לסרגל הצד של בקשת המיזוג, מה שהופך אותו לנגיש בכל עת ומבטל את הצורך לגלול בעמוד כולו. בדיוק כמו הקישור לבקשת המיזוג, קטע סניף המקור מכיל כפתור "העתק" נוח.
תודה איתן ריסור על תרומתך העצומה לפיתוח התכונה הזו!
בקשות מיזוג המוסיפות שינויים לקבצים מרובים מכווצות לפעמים את ההבדלים של קבצים גדולים כדי לשפר את ביצועי העיבוד. כאשר זה קורה, ניתן לדלג בטעות על קובץ במהלך הבדיקה, במיוחד בבקשות מיזוג עם מספר רב של קבצים. החל מגרסה 13.4, בקשות מיזוג יסמנו הבדלים המכילים קבצים מקופלים, כך שלא תפספסו את הקבצים הללו במהלך סקירת הקוד. לבהירות עוד יותר, אנו מתכננים להוסיף הדגשה לקבצים אלה במהדורה עתידית. הישארו מעודכנים לעדכונים בנושא כרטיס gitlab מס' 16047.
בקטע הבדלי בקשת מיזוג, קבצים גדולים מכווץ כדי לשפר את הביצועים. עם זאת, בעת סקירת קוד, קבצים מסוימים עשויים להחמיץ כאשר המבקר גולל ברשימת הקבצים, מכיוון שכל הקבצים הגדולים מכווצים.
הוספנו אזהרה גלויה בחלק העליון של דף הבדל בקשת המיזוג כדי ליידע את המשתמשים שיש קובץ מוזג בחלק זה. בדרך זו, לא תחמיץ שום שינוי בבקשת המיזוג במהלך הבדיקה.
בעבר, כאשר הצומת הראשי של אשכול Gitaly לא מקוון, המאגרים באותו צומת סומנו כקריאה בלבד. זה מנע אובדן נתונים במצבים שבהם היו שינויים בצומת שעדיין לא שוכפלו. כאשר הצומת חזר לאינטרנט, GitLab לא שוחזר אוטומטית, ומנהלי מערכת נאלצו להתחיל באופן ידני את תהליך הסנכרון או לקבל אובדן נתונים. מצבים אחרים, כגון כשל בעבודת שכפול בצומת משני, עלולים לגרום גם למאגרים מיושנים או לקריאה בלבד. במקרה זה, המאגר נשאר מיושן עד שהתרחשה פעולת הכתיבה הבאה, שתתחיל את עבודת השכפול.
לפתור את הבעיה הזאת פרפקט מתזמן כעת עבודת שכפול כאשר הוא מזהה מאגר מיושן בצומת אחד ואת הגרסה העדכנית ביותר של המאגר בצומת אחר. עבודת שכפול זו שומרת את המאגר מעודכן באופן אוטומטי, ומבטלת את הצורך בשחזור ידני של נתונים. שחזור אוטומטי גם מבטיח שצמתים משניים מעודכנים במהירות אם עבודת שכפול נכשלת, במקום לחכות לפעולת הכתיבה הבאה. מכיוון שרבים מאשכולות גיללי מאחסנים מספר רב של מאגרים, הדבר מפחית משמעותית את הזמן שמנהלים ומהנדסי אמינות מקדישים לשחזור נתונים לאחר שגיאה.
בנוסף, תיקון אוטומטי מתחיל שכפול של מאגרים בכל צומת Gitaly חדש שנוסף לאשכול, ומבטל עבודה ידנית בעת הוספת צמתים חדשים.
תקשורת אפקטיבית ב-GitLab מבוססת על רשימות מטלות. אם אתה מוזכר בהערה, זה קריטי להיות מסוגל לקפוץ למשימה או להתחיל לעשות משהו או לסמן אותה כמושלמה. חשוב גם להיות מסוגל להקצות לעצמך משימה כאשר אתה צריך לעבוד על משהו או לחזור אליו מאוחר יותר.
בעבר, לא יכולת להוסיף משימות או לסמן אותן כמושלמות בעת עבודה עם עיצובים. זה שיבש בצורה רצינית את יעילות התקשורת בין צוותי מוצר, שכן מטלות הן מרכיב קריטי בזרימת העבודה של GitLab.
במהדורה 13.4, עיצובים מתעדכנים עם הערות כרטיסים בשימוש במשימות, מה שהופך את העבודה איתם לעקבית ויעילה יותר.
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
שיפרנו את המדריך לפתרון בעיות עבור GitLab CI/CD עם מידע נוסף על בעיות נפוצות שאתה עלול להיתקל בהן. אנו מקווים שהתיעוד המשופר יהווה משאב רב ערך שיעזור לך להתחיל ולהפעיל את GitLab CI/CD במהירות ובקלות.
בעבר, בקשות מיזוג עלולות ליפול מתור המיזוג בטעות עקב הערות מאוחרות. אם כבר הייתה בקשת מיזוג בתור ומישהו הוסיף לה הערה שיצרה דיון חדש לא פתור, בקשת המיזוג נחשבה לא כשירה למיזוג והיא תיפול מהתור. כעת, לאחר הוספת בקשת מיזוג לתור המיזוג, ניתן להוסיף הערות חדשות ללא חשש לשבש את תהליך המיזוג.
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
מפתחים צריכים להיות מסוגלים לראות את ערך כיסוי הקוד לאחר השלמת הצינור - אפילו בתרחישים מורכבים כמו הפעלת צינור עם מספר עבודות שיש לנתח כדי לחשב את ערך הכיסוי. בעבר, ווידג'ט בקשת המיזוג הראה רק את הממוצע של הערכים הללו, מה שאומר שעליך לנווט לדף העבודה וחזרה לבקשת המיזוג כדי לקבל ערכי כיסוי ביניים. כדי לחסוך לך זמן ואת השלבים הנוספים הללו, גרמנו לווידג'ט להציג את ערך הכיסוי הממוצע, את השינויים שלו בין ענפי היעד והמקור, והסבר כלים המציג את ערך הכיסוי עבור כל עבודה שעל פיה חושב הממוצע.
רישום החבילות של GitLab הוא מקום לאחסון והפצה של חבילות בפורמטים שונים. כאשר יש לך הרבה חבילות בפרויקט או בקבוצה שלך, עליך לזהות במהירות חבילות שאינן בשימוש ולהסיר אותן כדי למנוע מאנשים להוריד אותן. אתה יכול להסיר חבילות מהרישום שלך באמצעות API של חבילה או דרך ממשק המשתמש של רישום החבילות. עם זאת, עד כה לא יכולת להסיר חבילות בעת צפייה בקבוצה דרך ממשק המשתמש. כתוצאה מכך, היית צריך להסיר חבילות מיותרות על בסיס של פרויקט, וזה היה לא יעיל.
כעת תוכל להסיר חבילות בעת הצגת רישום החבילות של קבוצה. כל שעליך לעשות הוא להיכנס לדף רישום החבילות של הקבוצה, לסנן את החבילות לפי שם ולהסיר כל מה שאינך צריך.
אתה יכול להשתמש במאגר Conan ב- GitLab כדי לפרסם ולהפיץ תלות ב-C/C++. עם זאת, חבילות בעבר יכלו להתאים רק לרמת המופע, מכיוון ששם החבילה של Conan יכול היה להיות מקסימום של 51 תווים בלבד. אם רצית לפרסם חבילה מתת-קבוצה, למשל gitlab-org/ci-cd/package-stage/feature-testing/conan, זה היה כמעט בלתי אפשרי לעשות.
כעת תוכל להקטין את חבילות Conan לרמת הפרויקט, מה שמקל על פרסום והפצת התלות של הפרויקטים שלך.
אנו נרגשים להוסיף סריקות תלות עבור פרויקטי קוד C, C++, C# ו-.Net המשתמשים במנהלי חבילות NuGet 4.9+ או Conan לרשימה שלנו שפות ומסגרות נתמכות. כעת תוכל להפעיל סריקת תלות כחלק מהשלב המאובטח כדי לבדוק פגיעויות ידועות בתלות שנוספו דרך מנהלי חבילות. הפגיעויות שנמצאו יוצגו בבקשת המיזוג שלך יחד עם רמת החומרה שלהן, כדי שתדע לפני ביצוע המיזוג אילו סיכונים טומנת בחובה התלות החדשה. אתה יכול גם להגדיר את הפרויקט שלך לדרוש אישור בקשת מיזוג עבור תלות עם פגיעויות ברמות חומרה קריטיות (קריטיות), גבוהות (גבוהות) או לא ידועות (לא ידוע).
בעבר, בעת הגדרת הגדרות בקשת המיזוג מיזוג כאשר הצינור מסתיים (Merge When Pipeline Succeeds, MWPS) לא נשלחה הודעת דוא"ל. היית צריך לבדוק ידנית את המצב או לחכות להתראת מיזוג. עם מהדורה זו אנו שמחים להציג תרומות של משתמשים @ravishankar2kool, שפתר בעיה זו על ידי הוספת התראות אוטומטיות לכל מי שנרשם לבקשת מיזוג כאשר סוקר משנה את הגדרת המיזוג ל-MWPS.
לא כל בעיה שמתעוררת מיד מפעילה התראות: משתמשים מדווחים על הפסקות וחברי צוות חוקרים בעיות ביצועים. תקריות הן כעת סוג של כרטיס, כך שהצוותים שלך יכולים ליצור אותם במהירות כחלק מזרימת העבודה הרגילה שלהם. נְקִישָׁה משימה חדשה מכל מקום ב-GitLab, ובשטח סוג בחר תַקרִית.
שיפרנו התראות GitLab על ידי הוספת סוג אזכור חדש במיוחד עבורן ב-GitLab Markdown, מה שמקל על השיתוף והאזכור של התראות. להשתמש ^alert#1234להזכיר את ההתראה בכל שדה Markdown: בתקריות, כרטיסים או בקשות מיזוג. זה גם יעזור לך לזהות משרות שנוצרות מהתראות ולא מכרטיסים או בקשות מיזוג.
תיאור ההתראה מכיל מידע קריטי לפתרון בעיות ושחזור, ומידע זה צריך להיות נגיש בקלות כך שלא תצטרך להחליף כלים או כרטיסיות בזמן שאתה פועל לפתרון תקרית. תקריות שנוצרו מהתראות מציגות את תיאור ההתראה המלא בלשונית פרטי התראה.
ל-GitLab, כאפליקציה יחידה, יש את היכולת הייחודית לבצע גילוי תוכן בכל זרימת העבודה של DevOps במהירות. ב-GitLab 13.4, חיפוש מתקדם מחזיר תוצאות 75% מהר יותר מוגבל למרחבי שמות ופרויקטים מסוימים, כמו ב-GitLab.com.
הייתה אפשרות לדחות את מחיקת הפרויקט הוצג ב-12.6. עם זאת, בעבר לא ניתן היה לראות את כל הפרויקטים הממתינים למחיקה במקום אחד. מנהלי מופעי משתמש של GitLab יכולים כעת להציג את כל פרויקטי המחיקה הממתינים במקום אחד, יחד עם כפתורים לשחזור פרויקטים אלה בקלות.
תכונה זו מעניקה למנהלי מערכת שליטה רבה יותר על מחיקת הפרויקט על ידי איסוף כל המידע הרלוונטי במקום אחד ומתן יכולת לבטל פעולות מחיקה לא רצויות.
בעבר, ניתן היה להגדיר כללי דחיפה קבוצתיים רק על ידי ביקור בכל קבוצה בנפרד דרך ממשק המשתמש של GitLab ויישום הכללים הללו. כעת אתה יכול לנהל את הכללים האלה באמצעות API כדי לתמוך בכלים המותאמים אישית שלך ובאוטומציה של GitLab.
אחסון אישורים מספק למנהלי מערכת את המידע שהם צריכים כדי לנהל את אישורי המשתמש עבור מופע GitLab שלהם. מכיוון שארגונים ממוקדי תאימות משתנים בקפדנות של מדיניות ניהול האישורים שלהם, הוספנו כפתור המאפשר למנהלי מערכת לבטל באופן אופציונלי את אסימון הגישה האישי (PAT) של משתמש. מנהלי מערכת יכולים כעת לבטל בקלות PATs שעלולים להיפגע. תכונה זו שימושית עבור ארגונים שרוצים אפשרויות תאימות גמישות יותר כדי למזער את ההפרעות למשתמשים שלהם.
ב-GitLab 13.4, אנו מציגים דרך חדשה להתאים אישית את עורך האתר הסטטי. למרות שקובץ התצורה אינו שומר או מקבל הגדרות כלשהן במהדורה זו, אנו מניחים את הבסיס להתאמה אישית עתידית של התנהגות העורך. במהדורות עתידיות נוסיף לקובץ .gitlab/static-site-editor.yml פרמטרים להתקנה כתובת האתר הבסיסית, באיזה תמונות שנטענו בעורך מאוחסנות, עוקף את הגדרות תחביר Markdown והגדרות עורך אחרות.
Front matter היא דרך גמישה ונוחה להגדיר משתני עמוד בקבצי נתונים לעיבוד על ידי מחולל האתרים הסטטי. הוא משמש בדרך כלל להגדרת כותרת העמוד, תבנית הפריסה או המחבר, אך ניתן להשתמש בו כדי להעביר כל סוג של מטא נתונים למחולל בעת עיבוד הדף ב-HTML. כלול בחלק העליון של כל קובץ נתונים, חלק המבוא מעוצב בדרך כלל כ-YAML או JSON ודורש תחביר עקבי ומדויק. משתמשים שאינם מכירים כללי תחביר ספציפיים עלולים להזין בטעות סימון לא חוקי, אשר בתורו עלול לגרום לבעיות עיצוב או אפילו כשלים בבנייה.
מצב העריכה WYSIWYG של עורך האתר הסטטי כבר מסיר את המבוא מהעורך כדי למנוע שגיאות עיצוב אלו. עם זאת, זה מונע ממך לשנות את הערכים המאוחסנים בחלק זה מבלי לחזור לעריכה במצב מקור. ב-GitLab 13.4, אתה יכול לגשת לכל שדה ולערוך את הערך שלו בממשק מוכר מבוסס טפסים. כאשר הכפתור נלחץ הגדרות (הגדרות) תיפתח חלונית המציגה שדה טופס עבור כל מפתח שהוגדר בהתחלה. השדות מאוכלסים בערך הנוכחי, ועריכת כל אחד מהם היא פשוטה כמו הזנתו בטופס האינטרנט. עריכת ההקדמה בדרך זו מונעת תחביר מורכב ונותנת לך שליטה מלאה על התוכן תוך הבטחה שהתוצאה הסופית מעוצבת באופן עקבי.
למשתמשי Jira ב-GitLab: אפליקציית GitLab עבור Jira и מחבר DVCS מאפשרים לך להציג מידע על התחייבויות GitLab ובקשות מיזוג ישירות בג'ירה. בשילוב עם שילוב Jira המובנה שלנו, אתה יכול לעבור בקלות בין שתי האפליקציות תוך כדי עבודה.
תכונות אלו היו זמינות בעבר רק בתוכנית הפרימיום שלנו, אך כעת זמינות לכל המשתמשים!
אשכול Gitaly מאפשר לך לשכפל מאגרי Git למספר צמתים "חמים" של Gitaly. זה מגביר את סבילות התקלות על ידי ביטול נקודות כשל בודדות. פעולות עסקה, שהוצג ב-GitLab 13.3, גורמים לשידור שינויים לכל צמתי Gitaly באשכול, אך רק צמתי Gitaly שמצביעים בהסכמה עם הצומת הראשי שומרים את השינויים בדיסק. אם כל צמתי העתק לא יסכימו, רק עותק אחד של השינוי יאוחסן בדיסק, ויוצר נקודת כשל אחת עד להשלמת השכפול האסינכרוני.
הצבעת רוב משפרת את סבילות התקלות על ידי דרישת הסכמה של רוב הצמתים (ולא כולם) לפני שמירת שינויים בדיסק. אם תכונת החלפה הזו מופעלת, הכתיבה אמורה להצליח במספר צמתים. צמתים מתנגדים מסונכרנים אוטומטית באמצעות שכפול אסינכרוני מאותם צמתים שיצרו מניין.
פרויקטים שבהם אנשים כותבים תצורות ב-JSON או YAML נוטים לרוב לבעיות כי קל לעשות שגיאת הקלדה ולשבור משהו. אפשר לכתוב כלי בדיקה כדי לתפוס בעיות אלה בצנרת ה-CI, אך שימוש בקובץ סכימת JSON יכול להיות שימושי כדי לספק תיעוד ורמזים.
משתתפי הפרויקט יכולים להגדיר במאגר שלהם את הנתיב לסכימה מותאמת אישית בקובץ .gitlab/.gitlab-webide.yml, המציין את הסכימה והנתיב לקבצים שיש לבדוק. כאשר אתה טוען קובץ ספציפי ל-IDE של האינטרנט, תראה משוב ואימות נוספים שיעזרו לך ליצור את הקובץ.
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
אם אתה משתמש במסועים עם גרף אציקלי מכוון (גרף אציקלי מכוון (DAG)), ייתכן שתגלה שיש מגבלה של 10 משרות שעבודה יכולה לציין בהן needs:, קשה מדי. ב-13.4, מגבלת ברירת המחדל הוגדלה מ-10 ל-50 כדי לאפשר רשתות מורכבות יותר של קשרים בין עבודות בצנרת שלכם.
אם אתה מנהל של מופע GitLab מותאם אישית, אתה יכול להעלות את המגבלה הזו אפילו יותר על ידי הגדרת תכונת החלפת מצב, למרות שאיננו מציעים תמיכה רשמית לכך.
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
במקרים מסוימים, עבודה שהוחמצה בצנרת עלולה להיחשב מוצלחת בטעות עבור תלות שצוינה ב needs, מה שגרם לעבודות עוקבות לפעול, מה שלא היה צריך לקרות. התנהגות זו תוקנה בגרסה 13.4, ו needs כעת מטפל נכון במקרים של משימות שהוחמצו.
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
GitLab נועל כעת אוטומטית את החפץ האחרון של העבודה והצינור המוצלח בכל ענף פעיל, בקשת מיזוג או תג כדי למנוע מחיקתו לאחר תום התפוגה. קל יותר לקבוע כללי תפוגה אגרסיביים יותר כדי לנקות חפצים ישנים. זה עוזר להפחית את צריכת שטח הדיסק ומבטיח שתמיד יש לך עותק של החפץ האחרון מהצינור.
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
אופטימיזציה של צינור ה-CI/CD שלך יכולה לשפר את מהירות האספקה ולחסוך כסף. שיפרנו את התיעוד שלנו כדי לכלול מדריך מהיר להפקת המרב מאופטימיזציה של הצינורות שלך.
(CORE, STARTER, PREMIUM, ULTIMATE, FREE, BRONZE, SILVER, GOLD) שלב מחזור DevOps: אמת
דוח בדיקת יחידה היא דרך קלה לראות את התוצאות של כל הבדיקות בצנרת. עם זאת, עם מספר רב של מבחנים, מציאת מבחנים שנכשלו עשויה להימשך זמן רב. בעיות אחרות שעלולות להקשות על השימוש בדוח כוללות קושי בגלילה בין פלטי עקבות ארוכים ועיגול זמן לאפס עבור בדיקות הפועלות תוך פחות משנייה אחת. כעת, כברירת מחדל, בעת מיון דוח בדיקה, הוא מציב תחילה בדיקות שנכשלו בתחילת הדוח, ולאחר מכן ממיין את הבדיקות לפי משך זמן. זה מקל על מציאת כשלים ומבחנים ארוכים. בנוסף, משכי הבדיקה מוצגים כעת באלפיות שניות או שניות, מה שהופך אותם להרבה יותר מהירים לקריאה, וגם בעיות גלילה קודמות נפתרו.
כעת קיימות מגבלות על גודל קבצי החבילות שניתן להעלות לרישום החבילות של GitLab. נוספו הגבלות כדי לייעל את ביצועי רישום החבילות ולמנוע שימוש לרעה. המגבלות משתנות בהתאם לפורמט החבילה. עבור GitLab.com, גדלי קבצים מקסימליים הם:
קונאן: 250MB
מייבן: 3GB
NPM: 300MB
NuGet: 250MB
PyPI: 3GB
עבור מופעים מותאמים אישית של GitLab, ברירות המחדל זהות. עם זאת, המנהל יכול לעדכן את ההגבלות באמצעות קונסולות מסילות.
אתה יכול להשתמש במאגר GitLab PyPI כדי ליצור, לפרסם ולשתף חבילות Python יחד עם קוד מקור וצינורות CI/CD. עם זאת, בעבר לא יכולת לבצע אימות למאגר באמצעות משתנה סביבה מוגדר מראש CI_JOB_TOKEN. כתוצאה מכך, היית צריך להשתמש באישורים האישיים שלך כדי לעדכן את מאגר PyPI, או אולי החלטת לא להשתמש במאגר כלל.
כעת קל יותר להשתמש ב-GitLab CI/CD כדי לפרסם ולהתקין חבילות PyPI באמצעות משתנה סביבה מוגדר מראש CI_JOB_TOKEN.
לסריקת DAST לפי דרישה שהייתה הוצג במהדורה הקודמת, נוספו פרופילי סורק DAST. הם מרחיבים את יכולות התצורה של סריקות אלה, ומאפשרות לך ליצור במהירות פרופילים מרובים כדי לכסות סוגי סריקה מרובים. ב-13.4, פרופיל הסורק כולל באופן מקורי הגדרת זמן קצוב של סורק שקובע את משך הזמן שהסורק DAST יפעל כשהוא מנסה לגלות את כל הדפים של אתר שנסרק. הפרופיל כולל גם הגדרת זמן קצוב לאתר יעד כדי להגדיר כמה זמן על הסורק להמתין עד שהאתר יהפוך לנגיש לפני ביטול הסריקה אם האתר לא יגיב עם קוד סטטוס 200 או 300. ככל שאנו ממשיכים לשפר תכונה זו תהיה נוסף לפרופיל הסורק במהדורות עתידיות; פרמטרי תצורה נוספים יתווספו.
אם אתה משתמש בדפי GitLab וברצונך לנהל טוב יותר שינויים בכתובות אתרים, ייתכן ששמת לב שניהול הפניות מחדש באתר שלך ב-GitLab לא היה אפשרי. GitLab מאפשרת לך כעת להגדיר כללים להפנות כתובת URL אחת לאחרת עבור אתר הדפים שלך על ידי הוספת קובץ תצורה למאגר. תכונה זו מתאפשרת הודות לתרומתו של קווין בארנט (@PopeDrFreud), אריק איסטווד שלנו (@MadLittleMods) וצוותי GitLab. תודה לכולם על ההשקעה.
גישה לגרסאות קודמות של Terraform state נחוצה הן לצורך תאימות והן לצורך איתור באגים במידת הצורך. תמיכה בגירסאות של מצב Terraform המנוהלת על ידי GitLab ניתנת החל מ-GitLab 13.4. ניהול גרסאות מופעל באופן אוטומטי עבור קבצי מצב חדשים של Terraform. קבצי המצב הקיימים של Terraform יהיו הועבר אוטומטית למאגר עם גרסאות במהדורה מאוחרת יותר.
בעת עיבוד אירועים, אתה צריך להיות מסוגל לקבוע בקלות כמה זמן התראה הייתה פתוחה וכמה פעמים האירוע הופעל. פרטים אלה הם לעתים קרובות קריטיים בקביעת ההשפעה על הלקוח ובמה הצוות שלך צריך לטפל קודם. בחלונית החדשה של פרטי האירוע, אנו מציגים את שעת תחילת ההתראה, מספר האירועים וקישור להתראה המקורית. מידע זה זמין עבור תקריות שנוצרות מהתראות.
ממד חומרת האירוע מאפשר למשיבים ולבעלי עניין לקבוע את ההשפעה של הפסקה, כמו גם את השיטה והדחיפות של התגובה. כשהצוות שלך משתף תוצאות במהלך פתרון תקריות ושחזור, הם יכולים לשנות הגדרה זו. כעת תוכל לערוך את חומרת האירוע בסרגל הצד הימני של דף פרטי האירוע, והחומרה מוצגת ברשימת התקריות.
שיפור זה ל-Container Network Security Rule Editor מאפשר למשתמשים ליצור, לערוך ולמחוק בקלות את הכללים שלהם ישירות מממשק המשתמש של GitLab. תכונות העורך כוללות .yaml למשתמשים מנוסים ועורך חוקים עם ממשק אינטואיטיבי עבור אלה שחוקים חדשים ברשת. תוכל למצוא אפשרויות ניהול כללים חדשות במדור אבטחה ותאימות > ניהול איומים > כללים (אבטחה ותאימות > ניהול איומים > מדיניות).
גם GitLab וגם GitLab Runner תומכים כעת אחסון כתם תכלת, מה שמקל על הפעלת שירותי GitLab ב-Azure.
מופעי GitLab תומכים ב-Azure עבור כל סוגי מאגרי האובייקטים, כולל קבצי LFS, חפצי CI ו גיבויים. כדי להגדיר אחסון Azure Blob, עקוב אחר הוראות ההתקנה אוטובוס או תרשים הגה.
בתגובה לביקוש הגובר לתמיכה בהפעלת GitLab על ארכיטקטורת ARM של 64 סיביות, אנו שמחים להכריז על זמינות החבילה הרשמית של ARM64 Ubuntu 20.04 Omnibus. תודה ענקית לזיתאי חן וגיום גרדט על התרומות הענקיות שהם תרמו - לבקשות המיזוג שלהם היה תפקיד מרכזי בכך!
כדי להוריד ולהתקין את החבילה עבור אובונטו 20.04, עבור אל שלנו דף התקנה ובחר Ubuntu.
כרטיסים חכמים, כגון Common Access Cards (CAC), יכולים לשמש כעת לאימות למופע GitLab שנפרס באמצעות תרשים Helm. כרטיסים חכמים מאומתים מול מסד נתונים מקומי באמצעות אישורי X.509. עם זאת, תמיכת כרטיסים חכמים עם תרשים Helm תואמת כעת לתמיכה בכרטיסים חכמים הזמינה בפריסות Omnibus.