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

כדי ליצור חבילת CI, פועלים לפי השלבים הבאים:
- ב-Looker IDE, לוחצים על סמל אינטגרציה רציפה (CI) בסרגל הניווט של ה-IDE.
- לוחצים על הכרטיסייה חבילות כדי לפתוח את הדף חבילות.
- בדף Suites (חבילות), אפשר ליצור חבילה חדשה או לערוך חבילה קיימת:
- כדי ליצור חבילה חדשה, לוחצים על הלחצן יצירת חבילה.
- כדי לערוך חבילה קיימת, לוחצים על הלחצן עריכת החבילה של החבילה.
- מזינים שם חבילה. אם אתם עורכים חבילה קיימת, אתם יכולים ללחוץ על סמל העיפרון כדי לערוך את שם החבילה.
- (אופציונלי) אם רוצים להגדיר בדיקות אימות אוטומטיות לפי לוח זמנים חוזר, מעבירים את המתג הפעלה לפי לוח זמנים למצב מופעל. מידע נוסף זמין בקטע הפעלת טריגר לפי לוח זמנים בדף הזה.
(אופציונלי) מפעילים את המתג Trigger on pull requests from Looker אם רוצים להגדיר בדיקות אימות אוטומטיות בכל פעם שמפתח Looker שולח בקשת מיזוג למאגר. מידע נוסף זמין בקטע הפעלת טריגר בבקשות משיכה מ-Looker בדף הזה.
אם מפעילים הפעלה של חבילת CI באמצעות בקשת מיזוג, אפשר להשתמש בשדה רק עבור ענף היעד כדי לציין שבקשות מיזוג רק לענפים ספציפיים במאגר יפעילו את חבילת ה-CI. מידע נוסף זמין בקטע הפעלת טריגר בבקשות משיכה מ-Looker בדף הזה.
(אופציונלי) אם רוצים להגדיר בדיקות אימות אוטומטיות בכל פעם שמריצים משימת CI ב-dbt Cloud, מעבירים את המתג Trigger on pull requests from dbt Cloud למצב פעיל. מידע נוסף מופיע בקטע הפעלת טריגר בבקשות משיכה מ-dbt Cloud בדף הזה.
(אופציונלי) מפעילים את המתג הפעלת התראות באימייל אם רוצים לקבל התראות באימייל על סמך הסטטוס של הרצת CI. מידע נוסף זמין בקטע הגדרת התראות בדף הזה.
אופציונלי: מפעילים את המתגים של כלי האימות כדי להפעיל כלי אימות ולהגדיר את האפשרויות שלו. לפרטים נוספים, אפשר לעיין בדפי התיעוד של כל אחד מהכלים לאימות:
שומרים את השינויים:
- כדי ליצור חבילה חדשה, לוחצים על הלחצן יצירת חבילה.
- אם אתם עורכים חבילה קיימת, לוחצים על הלחצן עדכון החבילה.
טריגרים
יש כמה דרכים להפעיל ריצות של CI:
- באופן אוטומטי, לפי לוח זמנים חוזר.
- באופן אוטומטי, כשמפתח Looker שולח בקשת משיכה למאגר של פרויקט LookML.
- באופן אוטומטי, כשמשימת CI ב-dbt Cloud יוצרת בקשת משיכה.
- באופן ידני, באמצעות הלחצן Run suite בדף Suites ב-Looker IDE.
- באופן ידני, על ידי הפעלה מחדש של הרצת CI קודמת, מהדף Runs של Looker IDE.
הפעלת טריגר לפי לוח זמנים
כדי להגדיר חבילת CI כך שתופעל אוטומטית לפי לוח זמנים, צריך להפעיל את המתג הפעלה לפי לוח זמנים.
כשהמתג הזה מופעל, אפשר לבחור את התדירות והפרטים של הפעלת חבילת ה-CI באופן אוטומטי:
- חודשי, ביום ובשעה ספציפיים
- שבועי, ביום ובשעה ספציפיים
- יומי, בשעה ספציפית
- שעתי או כל 2, 3, 4, 6, 8 או 12 שעות, מתחיל ומסתיים בשעות ספציפיות ביום
- דקות כל 5, 10, 15, 20 או 30 דקות, החל משעה מסוימת ביום ועד שעה מסוימת ביום
- בחודשים ספציפיים בשנה, ביום ובשעה ספציפיים
- ימים ספציפיים בשבוע בשעה ספציפית
הפעלת טריגר בבקשות משיכה מ-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:
- מפעילים את המתג הפעלת התראות באימייל.
- בשדה כתובות אימייל, מזינים רשימה של כתובות אימייל שמופרדות בפסיקים, שאליהן יישלחו ההתראות.
- משתמשים בתיבות הסימון כדי לבחור את סטטוסי המשימות שצריכים להפעיל התראה:
- נכשל: מפעיל שליחת אימייל כשריצת CI נכשלת בבדיקות אימות.
- שגיאה: מפעיל שליחת אימייל כשריצת CI נתקלת בשגיאת מערכת או בשגיאת הגדרה.
- Passed: מפעיל שליחת אימייל כשהרצת CI מסתיימת בהצלחה.
- Cancelled: מפעיל אימייל כשריצת CI מבוטלת.
מחיקת חבילה
כדי למחוק חבילת CI, מבצעים את השלבים הבאים:
- ב-Looker IDE, לוחצים על סמל אינטגרציה רציפה (CI) בסרגל הניווט של ה-IDE.
- לוחצים על הכרטיסייה חבילות כדי לפתוח את הדף חבילות.
- בדף חבילות, לוחצים על הלחצן עריכת החבילה של החבילה הרצויה.
- בדף של החבילה, לוחצים על הלחצן מחיקת החבילה.
- בתיבת הדו-שיח לאישור, לוחצים על הלחצן מחיקת החבילה.