יצירת חבילה של אינטגרציה רציפה

חבילת אינטגרציה רציפה (CI) היא קבוצה של הוראות אימות שמשויכות לפרויקט LookML. משתמש Looker עם ההרשאה manage_ci יכול להגדיר את הפריטים הבאים בחבילת CI:

לפני שמתחילים

כדי ליצור חבילת CI, צריך:

  • מופע Looker שעומד בדרישות של CI ומופעל בו CI.
  • חשבון משתמש ב-Looker עם ההרשאה manage_ci (ההרשאה הזו כלולה בקבוצת הרשאות האדמין).
  • פרויקט של LookML עם לפחות קומיט אחד שנפרס לייצור. שירותי CI ברקע יכולים לאחזר את הגדרות ה-Git של הפרויקט רק אם הפרויקט נמצא במצב ייצור. אם הפרויקט קיים רק במצב פיתוח, ה-CI יחזיר שגיאות כשמגדירים טריגרים של webhook.

יצירת חבילת CI

אפשר להגדיר ולהפעיל את כלי האימות בדף Suites ב-Looker IDE:

הדף 'חבילות CI'

כדי ליצור חבילת CI, מבצעים את השלבים הבאים:

  1. ב-Looker IDE, לוחצים על סמל השילוב הרציף בסרגל הניווט של ה-IDE.
  2. לוחצים על הכרטיסייה חבילות כדי לפתוח את הדף חבילות.
  3. בדף Suites (חבילות), אפשר ליצור חבילה חדשה או לערוך חבילה קיימת:
    • כדי ליצור חבילה חדשה, לוחצים על הלחצן יצירת חבילה.
    • כדי לערוך חבילה קיימת, לוחצים על הלחצן עריכת החבילה של החבילה.
  4. מזינים שם חבילה. אם אתם עורכים חבילה קיימת, אתם יכולים ללחוץ על סמל העיפרון כדי לערוך את שם החבילה.
  5. (אופציונלי) אם רוצים להגדיר בדיקות אימות אוטומטיות לפי לוח זמנים חוזר, מעבירים את המתג הפעלה לפי לוח זמנים למצב מופעל. מידע נוסף זמין בקטע הפעלת טריגר לפי לוח זמנים בדף הזה.
  6. (אופציונלי) מפעילים את המתג Trigger on pull requests from Looker אם רוצים להגדיר בדיקות אימות אוטומטיות בכל פעם שמפתח Looker שולח בקשת מיזוג למאגר. מידע נוסף זמין בקטע הפעלת טריגר בבקשות משיכה מ-Looker בדף הזה.

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

  7. (אופציונלי) אם רוצים להגדיר בדיקות אימות אוטומטיות בכל פעם שמריצים משימת CI ב-dbt Cloud, מפעילים את המתג Trigger on pull requests from dbt Cloud. מידע נוסף מופיע בקטע הפעלת טריגר בבקשות משיכה מ-dbt Cloud בדף הזה.

  8. (אופציונלי) מפעילים את המתג הפעלת התראות באימייל אם רוצים לקבל התראות באימייל על סמך הסטטוס של הרצת CI. מידע נוסף זמין בקטע הגדרת התראות בדף הזה.

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

  10. שומרים את השינויים:

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

טריגרים

יש כמה דרכים להפעיל ריצות של CI:

טריגר לפי לוח זמנים

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

כשמפעילים את המתג הזה, אפשר לבחור את התדירות והפרטים של הפעלת חבילת ה-CI באופן אוטומטי:

  • חודשי, ביום ובשעה ספציפיים
  • שבועי, ביום ובשעה ספציפיים
  • יומי, בשעה ספציפית
  • מדי שעה או כל 2, 3, 4, 6, 8 או 12 שעות, החל משעה מסוימת ביום ועד שעה מסוימת ביום
  • דקות כל 5, 10, 15, 20 או 30 דקות, החל משעה מסוימת ביום ועד שעה מסוימת ביום
  • בחודשים ספציפיים בשנה, ביום ובשעה ספציפיים
  • ימים ספציפיים בשבוע בשעה ספציפית

הפעלת טריגר בבקשות pull מ-Looker

כדי להגדיר חבילת CI להפעלה אוטומטית של בקשת משיכה, מפעילים את המתג Trigger on pull requests from Looker. כדי להשתמש בהפעלת בקשות משיכה, אדמין Looker צריך להגדיר את מאגר Git בדף Continuous Integration Admin ב-Looker).

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

לדוגמה, אם במאגר יש שלושה ענפים בשמות main, release_1 ו-dev, אפשר להזין main, release_1 בשדה רק לענף היעד. כלומר, הפעלות של CI יופעלו כשמפתח Looker ישלח בקשת משיכה (pull request) לענף main או לענף release_1. אם מפתח Looker שולח בקשת משיכה (pull request) לענף dev, הפעלה אוטומטית של חבילת ה-CI לא תופעל.

הפעלת טריגר בבקשות משיכה מ-dbt Cloud

אם הגדרתם את השילוב של dbt Cloud במופע שלכם, אתם יכולים להגדיר חבילת CI שתופעל אוטומטית כשמשימת CI של dbt Cloud תסתיים. חבילת ה-CI מאמתת אם שינויים במודלים של dbt יגרמו לשגיאות SQL ב-Looker Explores לפני פריסת השינויים ב-dbt.

כדי להגדיר את הטריגר הזה, מפעילים את המתג Trigger on pull requests from dbt Cloud כשיוצרים או עורכים חבילת CI.

אחרי שמפעילים את הטריגר הזה, מגדירים את האפשרויות הבאות:

  • ‫dbt Cloud Job: בוחרים את משימת ה-CI של dbt Cloud מהשדה הנפתח שאמור להפעיל את החבילה הזו.

  • מאפיין משתמש בסכימה: בוחרים את מאפיין המשתמש ב-Looker שמכיל את שם הסכימה של חיבור מסד הנתונים. ברשימה הזו יופיעו רק מאפייני משתמשים שהופעלו עבור CI בלוח הניהול.

כששומרים את חבילת הכלים עם הטריגר הזה מופעל, Looker רושם באופן אוטומטי webhook בחשבון dbt Cloud כדי להאזין לסיום של עבודות.

בהרצות שהופעלו על ידי dbt Cloud, ‏ Looker מזהה באופן דינמי את הסכימה הזמנית שנוצרה על ידי ההרצה של dbt Cloud ומבטל את התכונה שנבחרה של המשתמש באמצעות שם הסכימה הזמנית למשך ההרצה של CI.

הגדרת התראות

כדי לקבל התראות באימייל על סמך הסטטוס של הרצות CI, אפשר להגדיר התראות לחבילת CI. כך תוכלו לעקוב אחרי הרצות של שילוב רציף בלי להיכנס לדף Runs בסביבת הפיתוח המשולבת (IDE) של Looker.

כדי להגדיר התראות באימייל לחבילת CI, פועלים לפי השלבים הבאים כשיוצרים או עורכים חבילת CI:

  1. מפעילים את המתג הפעלת התראות באימייל.
  2. בשדה כתובות אימייל, מזינים רשימה של כתובות אימייל שמופרדות בפסיקים, שאליהן יישלחו ההתראות.
  3. משתמשים בתיבות הסימון כדי לבחור את סטטוסי העבודה שצריכים להפעיל התראה:
    • נכשל: מפעיל שליחת אימייל כשריצת CI נכשלת בבדיקות אימות.
    • שגיאה: מפעיל שליחת אימייל כשריצת CI נתקלת בשגיאה במערכת או בהגדרה.
    • עבר: מפעיל שליחת אימייל כשריצת CI מסתיימת בהצלחה.
    • בוטל: מפעיל שליחת אימייל כשריצת CI מבוטלת.

מחיקת חבילה

כדי למחוק חבילת CI, מבצעים את השלבים הבאים:

  1. ב-Looker IDE, לוחצים על סמל השילוב הרציף בסרגל הניווט של ה-IDE.
  2. לוחצים על הכרטיסייה חבילות כדי לפתוח את הדף חבילות.
  3. בדף חבילות, לוחצים על הלחצן עריכת החבילה של החבילה הרצויה.
  4. בדף של החבילה, לוחצים על הלחצן מחיקת החבילה.
  5. בתיבת הדו-שיח לאישור, לוחצים על הלחצן מחיקת החבילה.