אחרי הוספת הפלאגין App Engine Maven שמבוסס על CLI של gcloud לפרויקט, מטרות Maven הבאות שספציפיות ל-App Engine זמינות:
| מטרה | תיאור |
|---|---|
appengine:cloudSdkLogin |
מגדירה את המצב הגלובלי של ה-CLI של gcloud עבור חשבון. |
appengine:deploy |
מבצעת staging ופריסה של אפליקציה ב-App Engine. |
appengine:deployAll |
מכין לפריסה ופורס אפליקציה עם כל הגדרות ה-YAML התקינות שלה בו-זמנית ב-App Engine. |
appengine:deployCron |
מעבירים קובץ הגדרות cron.yaml לסטייג' ופורסים אותו ב-App Engine. |
appengine:deployDispatch |
מעבירים קובץ הגדרות dispatch.yaml לסטייג' ופורסים אותו ב-App Engine. |
appengine:deployDos |
מעבירים קובץ הגדרות dos.yaml לסטייג' ופורסים אותו ב-App Engine. |
appengine:deployIndex |
מעבירים קובץ הגדרה index.yaml ל-App Engine ומבצעים פריסה. |
appengine:deployQueue |
מעבירים קובץ הגדרות queue.yaml לסטייג' ופורסים אותו ב-App Engine. |
appengine:help |
מציגה מידע עזרה על App Engine Maven Plugin. |
appengine:run |
מפעיל את שרת הפיתוח של App Engine. כשהשרת פועל, הוא בודק כל הזמן אם appengine-web.xml השתנה. אם כן, השרת טוען מחדש את האפליקציה. אתם לא צריכים להפסיק ולהפעיל מחדש את האפליקציה בגלל שינויים ב-appengine-web.xml. היעד הזה נתמך בשירותים מדור קודם.
|
appengine:stage |
יוצר ספריית אפליקציות לפריסה. |
appengine:start |
הפקודה מפעילה את שרת הפיתוח של App Engine באופן אסינכרוני, ואז חוזרת לשורת הפקודה. כשמפעילים את היעד הזה, ההתנהגות זהה לזו של היעד run, אלא ש-Maven ממשיך לעבד יעדים ויוצא אחרי שהשרת מופעל ופועל. היעד הזה נתמך בשירותים מדור קודם.
|
appengine:stop |
הפקודה מפסיקה שרת פיתוח אינטרנט של App Engine שפועל. היעד הזה נתמך בשירותים מדור קודם. |
מידע נוסף על הגדרה ושימוש ב-Maven זמין במאמר שימוש ב-Maven.
שימוש בפרמטרים
לכל יעד יש פרמטרים משויכים שאפשר לציין בקובץ pom.xml.
לדוגמה:
<plugins>
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>2.8.1</version>
<configuration>
<deploy.stopPreviousVersion>true</deploy.stopPreviousVersion>
<cloudSdkHome>/usr/foo/path/to/cloudsdk</cloudSdkHome>
</configuration>
</plugin>
</plugins>אפשר גם להגדיר פרמטרים של הגדרה בשורת הפקודה, לפי התבנית -D[USER_PROPERTY]=[PARAMETER_VALUE].
לדוגמה, כדי לציין ספרייה שאליה תועבר האפליקציה:
mvn appengine:stage -Dapp.stage.stagingDirectory=[YOUR_STAGING_DIRECTORY]
בקטעים הבאים מפורטת רשימה של הפרמטרים שזמינים לכל יעד.
appengine:deploy
מבצעת staging ופריסה של אפליקציה ב-App Engine.
אפשר להשתמש בפרמטרים הבאים, שחלקם תואמים לדגלים של שורת הפקודה gcloud app deploy או לדגלים של שורת הפקודה gcloud app services:
| פרמטר | תיאור | מאפיין משתמש |
|---|---|---|
appEngineDirectory |
הספרייה שמכילה את app.yaml וקבצים אחרים של הגדרות App Engine שנתמכים. ברירת המחדל היא ${basedir}/src/main/appengine. |
app.stage.appEngineDirectory |
artifact |
המיקום של ארכיון ה-JAR או ה-WAR לפריסה. ברירת המחדל היא ${project.build.directory}/${project.build.finalName}.${project.packaging}. |
app.stage.artifact |
bucket |
קטגוריית Cloud Storage שמשמשת להעברת קבצים שמשויכים לפריסה. אם לא מציינים את הארגומנט הזה, המערכת משתמשת בדלי ברירת המחדל של האפליקציה. | app.deploy.bucket |
cloudSdkPath |
פרמטר אופציונלי להגדרת המיקום של Google Cloud CLI. ברירת המחדל היא גילוי אוטומטי מנתיב או ממיקום התקנה רגיל. | cloudSdkPath |
deployables |
קובצי ה-YAML של השירותים או ההגדרות שרוצים לפרוס.
ברירת המחדל היא הקובץ app.yaml בספריית ההכנה.
אם לא נמצא קובץ כזה, המערכת תנסה ליצור באופן אוטומטי קובצי הגדרות נדרשים (כמו app.yaml) בספריית ההכנה. |
app.deploy.deployables |
dockerDirectory |
הספרייה שמכילה את קובץ ה-Dockerfile ומשאבי Docker אחרים.
ברירת המחדל היא ${basedir}/src/main/docker/. |
app.stage.dockerDirectory |
imageUrl |
פריסה באמצעות תמונת Docker ספציפית. הערך של ImageUrl חייב להיות שם תקין ב-Artifact Registry, לדוגמה, docker.pkg.dev/foo, כאשר foo הוא שם התמונה. |
app.deploy.imageUrl |
projectId |
Google Cloud שם הפרויקט שבו רוצים להשתמש בהפעלה הזו.
ברירת המחדל היא הפרויקט הנוכחי שנבחר כשמפעילים את gcloud. |
app.deploy.projectId |
promote |
מקדמים את הגרסה שנפרסה כדי לקבל את כל התנועה. ברירת המחדל היא True. |
app.deploy.promote |
server |
שרת App Engine שאליו מתחברים. בדרך כלל אין צורך לשנות את הערך הזה. | app.deploy.server |
stagingDirectory |
חובה. הספרייה שאליה האפליקציה תועבר. ברירת המחדל היא ${project.build.directory}/appengine-staging. |
app.stage.stagingDirectory |
stopPreviousVersion |
צריך להפסיק את הגרסה שהופעלה קודם כשפורסים גרסה חדשה שמקבלת את כל התנועה. | app.deploy.stopPreviousVersion |
version |
הגרסה של האפליקציה שתיצור או תחליף את הפריסה הזו. אם לא מציינים גרסה, המערכת תיצור גרסה בשבילכם. | app.deploy.version |
appengine:help
מציגה מידע עזרה על App Engine Maven Plugin. כדי להציג פרטים על פרמטר, קוראים לפונקציה:
mvn appengine:help -Ddetail=true -Dgoal=[GOAL_NAME]
אפשר להשתמש בפרמטרים הבאים:
| פרמטר | תיאור | מאפיין משתמש |
|---|---|---|
detail |
אם הערך הוא true, כל הנכסים שניתנים להגדרה מוצגים לכל יעד. ברירת המחדל היא False. |
detail |
goal |
שם המטרה שעבורה רוצים להציג עזרה. אם לא מציינים שם, כל המטרות יוצגו. | goal |
indentSize |
מספר הרווחים לכל רמת הזחה. הערך צריך להיות מספר חיובי.
ברירת המחדל היא 2. |
indentSize |
lineLength |
האורך המקסימלי של שורת תצוגה. הערך צריך להיות מספר חיובי.
ברירת המחדל היא 80. |
lineLength |
appengine:stage
יוצרת ספריית build של האפליקציה לפריסה.
אפשר להשתמש בפרמטרים הבאים:
| פרמטר | תיאור | מאפיין משתמש |
|---|---|---|
appEngineDirectory |
הספרייה שמכילה את app.yaml וקבצים אחרים של הגדרות App Engine שנתמכים. ברירת המחדל היא ${basedir}/src/main/appengine. |
app.stage.appEngineDirectory |
artifact |
המיקום של ארכיון ה-JAR או ה-WAR שרוצים לפרוס. ברירת המחדל היא
${project.build.directory}/${project.build.finalName}.${project.packaging}. |
app.stage.artifact |
cloudSdkPath |
פרמטר אופציונלי להגדרת המיקום של ה-CLI של gcloud. | cloudSdkPath |
dockerDirectory |
הספרייה שמכילה את קובץ ה-Dockerfile ומשאבי Docker אחרים.
ברירת המחדל היא ${basedir}/src/main/docker/${basedir}/src/main/docker/. |
app.stage.dockerDirectory |
stagingDirectory |
חובה. הספרייה שאליה האפליקציה תועבר. ברירת המחדל היא ${project.build.directory}/appengine-staging. |
app.stage.stagingDirectory |