משימות ומאפיינים של App Engine Gradle Plugin

אחרי שמוסיפים את הפלאגין App Engine Gradle לפרויקט, אפשר להשתמש במשימות Gradle ספציפיות ל-App Engine:

משימה תיאור
tasks הצגת מידע עזרה על משימות מותקנות.
appengineStage יוצר ספריית אפליקציות לפריסה.
appengineDeploy מבצעת staging ופריסה של אפליקציה ב-App Engine.
appengineDeployCron פריסת קובץ הגדרה cron.yaml ב-App Engine.
appengineDeployDispatch פריסת קובץ הגדרות dispatch.yaml ב-App Engine.
appengineDeployDos פריסת קובץ הגדרה dos.yaml ב-App Engine.
appengineDeployIndex פריסת קובץ הגדרות index.yaml ב-App Engine.
appengineDeployQueue פריסת קובץ הגדרה queue.yaml ב-App Engine.
jettyRun מפעיל את שרת הפיתוח באמצעות הגדרות ברירת המחדל של Jetty. מידע נוסף על הפלאגין Gretty זמין במאמרים Gretty Configuration ו-Gretty Tasks.

כדי לראות רשימה של כל המשימות:

gradle tasks

מידע נוסף על הגדרה ושימוש ב-Gradle זמין במאמר שימוש ב-App Engine Gradle ובמאגר app-gradle-plugin ב-GitHub.

מאפייני המשימה

התוכן של הקובץ gradle.build הוא קבוצה של כללים לתיאור הבנייה. הוא כתוב בשפה ספציפית לדומיין לתיאור של מבנים, על סמך שפת Groovy.

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

בדוגמה הזו:

  • התאריך שבו ההגדרה של הפלאגין תיסגר הוא appengine.
  • המשימה היא deploy.
  • המאפיינים stopPreviousVersion ו-promote מוגדרים כ-true.
appengine {
  deploy {   // deploy configuration
    stopPreviousVersion = true  // default - stop the current version
    promote = true              // default - & make this the current version
  }
}
אם אתם צריכים לציין רק כמה מאפיינים, אתם יכולים להגדיר אותם בשורה אחת:

  appengine.deploy.stopPreviousVersion = true

בקטעים הבאים מפורטת רשימה של הנכסים שזמינים לכל משימה.

appengineStage

task(stage)

יוצר ספריית אפליקציות לפריסה. בשימוש במשימה appengineDeploy ובמשימה jettyRun.

אפשר להשתמש במאפיינים הבאים:

מאפיין (property) תיאור
artifact ארטיפקט בנוי שמכיל את כל המחלקות, המשאבים והמניפסטים. ברירת המחדל היא build/libs/[YOUR_SERVLET].war.
appEngineDirectory המיקום של קובץ app.yaml. ברירת המחדל היא src/main/appengine.
dockerDirectory המיקום של Dockerfile. ברירת המחדל היא src/main/docker.
stagingDirectory חובה. הספרייה שאליה האפליקציה תועבר. ברירת המחדל היא build/staged-app.

appengineDeploy

task(deploy)

מבצעת staging ופריסה של אפליקציה ב-App Engine.

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

בדוגמה הבאה:

  • התאריך שבו ההגדרה של הפלאגין תיסגר הוא appengine.
  • המשימה היא run.
  • הנכס port מוגדר כ-8080.
appengine {  // App Engine tasks configuration
  run {      // local (dev_appserver) configuration (standard environments only)
    port = 8080                 // default
  }

  deploy {   // deploy configuration
    stopPreviousVersion = true  // default - stop the current version
    promote = true              // default - & make this the current version
  }
}

אם אתם צריכים לציין רק כמה מאפיינים, אתם יכולים להגדיר אותם בשורה אחת:

  appengine.run.port = 8888
מאפיין (property) תיאור
appEngineDirectory המיקום של קובצי ההגדרות של .yaml (cron,‏ index וכו') שממנו יופעלו פריסות ספציפיות להגדרות (appengineDeployCron וכו'). באפליקציות גמישות, ברירת המחדל היא src/main/appengine.
bucket קטגוריה של Cloud Storage שמשמשת להעברת קבצים שמשויכים לפריסה. אם לא מציינים את הארגומנט הזה, נעשה שימוש בדלי ברירת המחדל של האפליקציה.
deployables קובצי ה-YAML של השירותים או ההגדרות שרוצים לפרוס. ברירת המחדל היא הקובץ app.yaml בספריית ההכנה. אם הוא לא נמצא, המערכת מנסה ליצור באופן אוטומטי קובצי הגדרה נדרשים (כמו app.yaml) בספריית ההעברה לבדיקה.
imageUrl פריסה באמצעות קובץ אימג' של Docker ספציפי. כתובת ה-URL של Docker חייבת להיות אחת משמות המארחים התקינים של Artifact Registry.
project שם הפרויקט ב-Google Cloud Platform שבו רוצים להשתמש עבור הקריאה הזו. ברירת המחדל היא הפרויקט הנוכחי שנבחר כשמפעילים את הכלי gcloud. כדי לאמת, אפשר להשתמש במספר gcloud config list project.
promote מקדמים את הגרסה שנפרסה כדי לקבל את כל תנועת הגולשים. ברירת המחדל היא True.
server שרת App Engine שאליו מתחברים. בדרך כלל אין צורך לשנות את הערך הזה.
stopPreviousVersion צריך להפסיק את הגרסה שהופעלה קודם כשפורסים גרסה חדשה שמקבלת את כל התנועה.
version הגרסה של האפליקציה שתיצור או תחליף את הפריסה הזו. אם לא תציינו גרסה, המערכת תיצור גרסה בשבילכם.

מאפיינים גלובליים

מאפיין (property) תיאור
tools.cloudSdkHome מאפיין אופציונלי להגדרת המיקום של Google Cloud CLI. בדרך כלל, הפלאגין מוצא את זה ב-CLI של gcloud כשהוא מותקן באמצעות gcloud components install app-engine-java.