Dialogflow CX משתלב עם כמה ספקי Git (כמו GitHub, Gitlab, Bitbucket ועוד). השילוב הזה מאפשר לייצא בקלות את הנציג לקובץ JSON כדי להעביר אותו לספק Git, וגם למשוך מספק Git כדי לשחזר את הנציג. פורמט הייצוא של JSON שנשלח לספק Git הוא התוכן המורחב של קובץ ה-ZIP של הסוכן שיוצא.
התכונה הזו מאפשרת לכם להשתמש בתכונות של בקרת מקורות של ספק Git, כמו:
- בדיקת שינויים בסוכן באמצעות כלי סקר קוד
- בדיקת ההבדלים בין הסוכנים באמצעות כלים להשוואת קבצים (diff)
- מיזוגים
מגבלות
המגבלות הבאות חלות:
- [רק בגרסה הישנה של השילוב] בממשקי ה-API של GitHub יש מגבלה על מספר הקבצים שאפשר לעדכן ב-commit אחד. אם מספר הקבצים גדול מ-500, יכול להיות שלא תוכלו לשלוח ל-GitHub מ-Dialogflow CX. במקרים כאלה, אתם יכולים לייצא את הנציג כקובץ ZIP ולהשתמש ב-Git CLI במחשב שלכם כדי להעביר את קובצי הנציג ל-GitHub. המגבלה הזו תטופל בגרסה מאוחרת יותר של Dialogflow CX.
- אין תמיכה במאגרים באירוח עצמי עם גישה פרטית ב-GitHub, כי ל-Dialogflow CX אין גישה למאגרים האלה.
- מאגר Git לא יכול להכיל קבצים אחרים מלבד קובצי הנציג שיוצאו באמצעות ייצוא הנציג. כל הקבצים האחרים במאגר יוסרו בכל פעם שתבצעו דחיפה.
הגדרות אישיות
כדי להגדיר את התכונה הזו, צריך לקבל טוקן גישה מספק ה-Git, לשמור אותו ב-Secret Manager ולספק את המשאב הסודי ל-Dialogflow CX:
טוקן גישה
כדי לקבל אסימון גישה מספק Git:
GitHub
צריך לקבל אסימון אישי של GitHub. אם אתם משתמשים באסימון גישה אישי מפורט, אתם צריכים את הרשאות הגישה הבאות:
- Repository Permissions > Contents: קריאה וכתיבה
- Repository Permissions > Metadata: לקריאה בלבד (אמורה להיבחר אוטומטית אחרי שבוחרים את ההרשאה Contents)
Gitlab
צריך לקבל אסימון גישה אישי של GitLab.
Bitbucket
צריך לקבל אסימון גישה ל-Bitbucket.
Secret Manager
אחרי שיש לכם טוקן גישה, אתם צריכים ליצור סוד לטוקן:
- מפעילים את Secret Manager API.
- thought יצירת סוד.
הגדרת Dialogflow CX
כדי להגדיר את השילוב הזה ב-Dialogflow CX:
- נותנים לסוכן השירות של Dialogflow הרשאה לגשת לסוד של טוקן הגישה ב-Secret Manager.
מקצים את התפקיד
Secret Manager Secret Accessorלחשבון השירותgcp-sa-dialogflow.iam.gserviceaccount.comבפרויקט של הנציג. איך נותנים גישה לסוד ב-Secret Manager - פותחים את הגדרות השילוב של Git:
- מסוף כלי ליצירת סוכנים בממשק שיחה
- כדי לפתוח את מסך ההגדרות, לוחצים על סמל ההגדרות בפינה השמאלית העליונה.
- גוללים למטה ולוחצים על Add Git integration.
- מסוף Dialogflow CX
- לוחצים על הכרטיסייה ניהול.
- לוחצים על Git בקטע Testing & Deployment.
- לוחצים על חדש.
- מסוף כלי ליצירת סוכנים בממשק שיחה
- מזינים את פרטי ההגדרה:
- מזינים את הפרטים הבאים:
- השם המוצג של החיבור ל-GitHub.
- כתובת ה-URL של מאגר Git (לדוגמה:
https://github.com/<path-to-repo>.git). - מוסיפים את ענפי ה-Git שהסוכן יקיים איתם אינטראקציה. כדי להגדיר סניף כברירת המחדל, לוחצים על סמל הכוכב שלצידו.
- הסוד של טוקן הגישה, שהוא גרסת הסוד שיצרתם בפורמט
projects/*/secrets/*/versions/*לגרסה ספציפית אוprojects/*/secrets/*/versions/latestלגרסה העדכנית.
- לוחצים על Connect.
- יכול להיות שיעברו כמה דקות עד ששירות Git יהיה מוכן. ההתראות יוצגו במסוף.
- מזינים את הפרטים הבאים:
דחיפה ושחזור
אחרי ההגדרה, אפשר לדחוף את הנציג ל-Git או למשוך אותו ממנו.
הכפתור Push משמש לייצוא הנציג ולביצוע commit להסתעפות Git שנבחרה בתפריט הנפתח של הסתעפויות Git. השמירה הזו תכלול את כל הסוכן ולא שינויים ספציפיים, ותמחק את כל הקבצים הקיימים במאגר.
משתמשים עם תפקידי Dialogflow Reader יכולים להעביר למאגרי Git. כדי למנוע דחיפות לא רצויות, צריך להגדיר את הסוכנים האלה עם טוקני גישה אישיים לקריאה בלבד.
הלחצן Restore משמש כדי לשלוף את נתוני הסוכן מההסתעפות ב-Git שנבחרה בתפריט הנפתח של ההסתעפויות ב-Git, ולשחזר את הסוכן ב-Dialogflow CX מהנתונים האלה. הפעולה הזו תחליף את הסוכן שלכם, בדיוק כמו כל שחזור של סוכן.
תרחיש שימוש לדוגמה
בדוגמה הבאה מוסבר איך כמה אנשים יכולים להשתמש בתכונה הזו כדי להציע שינויים שונים לנציג בסביבת הייצור.
נניח שהנציג משתמש בהסתעפויות Git הבאות:
- Prod: הסתעפות לסוכן בסביבת הייצור
- Dev1: הסתעפות לפיתוח נציגים
- Dev2: ענף נוסף לפיתוח נציגים
משתמש 1 רוצה להציע שינויים בנציג ומבצע את הפעולות הבאות:
- מייצאים את הנציג בסביבת הייצור לנציג חדש.
- מבצעים את השינויים הרצויים בעותק של הסוכן.
- בודקים את השינויים.
- מעבירים את הנציג ששיניתם להסתעפות Dev1.
- יוצרים בקשת מיזוג להסתעפות Prod.
משתמש 2 רוצה להציע שינויים בסוכן ומבצע את הפעולות הבאות:
- מייצאים את הנציג בסביבת הייצור לנציג חדש.
- מבצעים את השינויים הרצויים בעותק של הסוכן.
- בודקים את השינויים.
- מעבירים את הנציג ששיניתם להסתעפות Dev2.
- יוצרים בקשת מיזוג להסתעפות Prod.
משתמש 3 בודק את בקשות המיזוג של שני המשתמשים ומבצע את הפעולות הבאות:
- לפתור התנגשויות.
- השינויים שאושרו נשמרים.
- משחזר את הסתעפות הייצור ב-Git לסוכן הייצור ב-Dialogflow CX.