עדכון וניהול של שלבים באמצעות גרסאות

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

שינויים שכדאי להשתמש בגרסאות בשבילם כוללים:

  • הוספת שדות חובה חדשים
  • הוצאה משימוש של שדות קלט או פלט
  • שינוי סוגי נתונים, כמו מחרוזת, float או int
  • שינוי ההתנהגות הבסיסית של שלב

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

  • current_version: מספר הגרסה של הפריסה הפעילה הנוכחית.
  • min_version: הגרסה הכי ישנה של השלב שנתמכת.

בדוגמה הבאה של מניפסט אפשר לראות איך מגדירים גרסאות לשלב:

JSON

...
"flows": {
     "workflowElements": [
       {
         "id": "...",
         "state": "...",
         "name": "...",
         "description": "...",
         "version" : {
           "current_version": 3,
           "min_version" : 1
         },
...

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

Apps Script

/**
 * Executes the step and handles different versions.
 * @param {Object} event The event object from the workflow.
 */
function onExecute(event) {
  // Get the version ID from the execution metadata.
  const versionId = event.workflow.executionMetadata.versionId;

  // Implement different behavior based on the version.
  if (versionId < 2) {
    // Handle earlier versions
  } else {
    // Handle current and newer versions
  }
}