Dopo aver aggiunto al tuo progetto il plug-in Maven di App Engine basato su gcloud CLI, sono disponibili i seguenti obiettivi Maven specifici di App Engine:
Obiettivo | Descrizione |
---|---|
appengine:cloudSdkLogin |
Imposta lo stato globale dellgcloud CLI per account. |
appengine:deploy |
Esegue temporaneamente ed esegue il deployment di un'applicazione in App Engine. |
appengine:deployAll |
Esegue contemporaneamente ed esegue il deployment di un'applicazione con tutte le sue configurazioni YAML valide contemporaneamente su App Engine. |
appengine:deployCron |
Esegue le fasi ed esegue il deployment di un file di configurazione cron.yaml in App Engine. |
appengine:deployDispatch |
Esegue le fasi ed esegue il deployment di un file di configurazione dispatch.yaml in App Engine. |
appengine:deployDos |
Esegue le fasi ed esegue il deployment di un file di configurazione dos.yaml in App Engine. |
appengine:deployIndex |
Esegue le fasi ed esegue il deployment di un file di configurazione index.yaml in App Engine. |
appengine:deployQueue |
Esegue le fasi ed esegue il deployment di un file di configurazione queue.yaml in App Engine. |
appengine:help |
Visualizza le informazioni di assistenza sul plug-in Maven di App Engine. |
appengine:run |
Esegue il server di sviluppo di App Engine. Quando il server è in esecuzione, controlla continuamente per determinare se appengine-web.xml è stato modificato. In questo caso, il server ricarica l'applicazione. Non è necessario arrestare e riavviare l'applicazione a causa delle modifiche a appengine-web.xml . Questo obiettivo è supportato per i servizi in bundle legacy.
|
appengine:stage |
Genera una directory dell'applicazione per il deployment. |
appengine:start |
Avvia l'esecuzione del devserver di App Engine in modo asincrono e poi torna alla riga di comando. Quando questo obiettivo viene eseguito, il comportamento è uguale a quello dell'obiettivo run , ma Maven continua a elaborare gli obiettivi e si chiude dopo che il server è attivo e in esecuzione. Questo obiettivo è supportato per i servizi in bundle legacy.
|
appengine:stop |
Interrompe un server di sviluppo web di App Engine in esecuzione. Questo obiettivo è supportato per i servizi in bundle legacy. |
Per ulteriori informazioni su come configurare e utilizzare Maven, consulta Utilizzo di Maven.
Utilizzo dei parametri
A ogni obiettivo sono associati parametri che puoi specificare nel file pom.xml
.
Ad esempio:
<plugins>
<plugin>
<groupId>com.google.cloud.tools</groupId>
<artifactId>appengine-maven-plugin</artifactId>
<version>2.7.0</version>
<configuration>
<deploy.stopPreviousVersion>true</deploy.stopPreviousVersion>
<cloudSdkHome>/usr/foo/path/to/cloudsdk</cloudSdkHome>
</configuration>
</plugin>
</plugins>
Puoi definire i parametri di configurazione anche nella riga di comando, seguendo il pattern -D[USER_PROPERTY]=[PARAMETER_VALUE]
.
Ad esempio, per specificare una directory in cui posizionare temporaneamente l'applicazione:
mvn appengine:stage -Dapp.stage.stagingDirectory=[YOUR_STAGING_DIRECTORY]
Consulta le seguenti sezioni per un elenco dei parametri disponibili per ogni obiettivo.
appengine:deploy
Esegue temporaneamente ed esegue il deployment di un'applicazione in App Engine.
Puoi utilizzare i seguenti parametri, alcuni dei quali corrispondono ai flag della riga di comando gcloud app deploy
o gcloud app services
flag della riga di comando:
Parametro | Descrizione | Proprietà utente |
---|---|---|
appEngineDirectory |
La directory che contiene app.yaml e altri file di configurazione di App Engine supportati. Il valore predefinito è ${basedir}/src/main/appengine . |
app.stage.appEngineDirectory |
artifact |
La posizione dell'archivio JAR o WAR di cui eseguire il deployment. Il valore predefinito è ${project.build.directory}/${project.build.finalName}.${project.packaging} . |
app.stage.artifact |
bucket |
Il bucket Cloud Storage utilizzato per posizionare temporaneamente i file associati al deployment. Se questo argomento non è specificato, viene utilizzato il bucket predefinito dell'applicazione. | app.deploy.bucket |
cloudSdkPath |
Parametro facoltativo per configurare la località di Google Cloud CLI. L'impostazione predefinita è il rilevamento automatico dal PERCORSO o dal percorso di installazione standard. | cloudSdkPath |
deployables |
I file YAML per i servizi o le configurazioni di cui vuoi eseguire il deployment.
Il valore predefinito è il file app.yaml nella directory temporanea.
Se non viene trovato, tenta di generare automaticamente i file di configurazione necessari (ad esempio app.yaml ) nella directory temporanea. |
app.deploy.deployables |
dockerDirectory |
La directory contenente il Dockerfile e altre risorse Docker.
Il valore predefinito è ${basedir}/src/main/docker/ . |
app.stage.dockerDirectory |
imageUrl |
Eseguire il deployment con un'immagine Docker specifica. ImageUrl deve essere un nome Artifact Registry valido, ad esempio docker.pkg.dev/foo , dove foo è il nome dell'immagine. |
app.deploy.imageUrl |
projectId |
Il nome del progetto Google Cloud da utilizzare per questa chiamata.
Il valore predefinito è il progetto corrente selezionato durante l'inizializzazione di gcloud . |
app.deploy.projectId |
promote |
Promuovi la versione di cui è stato eseguito il deployment in modo da ricevere tutto il traffico. Il valore predefinito è True . |
app.deploy.promote |
server |
Il server App Engine a cui connettersi. In genere, non è necessario modificare questo valore. | app.deploy.server |
stagingDirectory |
Obbligatorio. La directory in cui posizionare l'applicazione. Il valore predefinito è ${project.build.directory}/appengine-staging . |
app.stage.stagingDirectory |
stopPreviousVersion |
Arresta la versione in esecuzione in precedenza quando esegui il deployment di una nuova versione che riceve tutto il traffico. | app.deploy.stopPreviousVersion |
version |
La versione dell'app che verrà creata o sostituita da questo deployment. Se non specifichi una versione, ne verrà generata una automaticamente. | app.deploy.version |
appengine:help
Visualizza le informazioni di assistenza sul plug-in Maven di App Engine. Per visualizzare i dettagli dei parametri, chiama:
mvn appengine:help -Ddetail=true -Dgoal=[GOAL_NAME]
Puoi utilizzare i seguenti parametri:
Parametro | Descrizione | Proprietà utente |
---|---|---|
detail |
Se il valore è true, vengono visualizzate tutte le proprietà impostabili per ciascun obiettivo. Il valore predefinito è False . |
detail |
goal |
Il nome dell'obiettivo per cui mostrare la guida. Se non specificati, verranno visualizzati tutti gli obiettivi. | goal |
indentSize |
Il numero di spazi per livello di rientro. Deve essere un numero positivo.
Il valore predefinito è 2 . |
indentSize |
lineLength |
La lunghezza massima di una linea di visualizzazione. Deve essere un numero positivo.
Il valore predefinito è 80 . |
lineLength |
appengine:stage
Genera una directory delle build dell'applicazione per il deployment.
Puoi utilizzare i seguenti parametri:
Parametro | Descrizione | Proprietà utente |
---|---|---|
appEngineDirectory |
La directory che contiene app.yaml e altri file di configurazione di App Engine supportati. Il valore predefinito è ${basedir}/src/main/appengine . |
app.stage.appEngineDirectory |
artifact |
La posizione dell'archivio JAR o WAR di cui eseguire il deployment. Il valore predefinito è ${project.build.directory}/${project.build.finalName}.${project.packaging} . |
app.stage.artifact |
cloudSdkPath |
Parametro facoltativo per configurare la posizione di gcloud CLI. | cloudSdkPath |
dockerDirectory |
La directory contenente il Dockerfile e altre risorse Docker.
Il valore predefinito è ${basedir}/src/main/docker/ ${basedir}/src/main/docker/ . |
app.stage.dockerDirectory |
stagingDirectory |
Obbligatorio. La directory in cui posizionare l'applicazione. Il valore predefinito è
${project.build.directory}/appengine-staging |
app.stage.stagingDirectory |