Dopo aver aggiunto alla gcloud CLI plug-in Maven App Engine basato sull'interfaccia a riga di comando gcloud , sono disponibili i seguenti obiettivi Maven specifici per App Engine:
Obiettivo | Descrizione |
---|---|
appengine:cloudSdkLogin |
Imposta lo stato globale della gcloud CLI per account. |
appengine:deploy |
Esegue il deployment e le fasi di un'applicazione in App Engine. |
appengine:deployAll |
Esegue il deployment e le fasi di un'applicazione con tutte le relative configurazioni yaml valide contemporaneamente in App Engine. |
appengine:deployCron |
Esegue il deployment e le fasi di un file di configurazione cron.yaml in App Engine. |
appengine:deployDispatch |
Esegue il deployment e le fasi di un file di configurazione dispatch.yaml in App Engine. |
appengine:deployDos |
Esegue il deployment e le fasi di un file di configurazione dos.yaml in App Engine. |
appengine:deployIndex |
Esegue il deployment e le fasi di un file di configurazione index.yaml in App Engine. |
appengine:deployQueue |
Esegue il deployment e le fasi di un file di configurazione queue.yaml in App Engine. |
appengine:help |
Visualizza le informazioni della guida sul plug-in Maven App Engine. |
appengine:run |
Esegue il server di sviluppo App Engine. Quando il server è attivo, controlla continuamente se appengine-web.xml è cambiato. 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 server di sviluppo App Engine in modo asincrono, quindi
torna alla riga di comando. Quando viene eseguito questo obiettivo, il comportamento è lo stesso
dell'obiettivo run , tranne per il fatto che Maven continua a elaborare gli obiettivi
ed esce dopo l'avvio del server. Questo obiettivo è supportato per i servizi in bundle legacy.
|
appengine:stop |
Arresta un server di sviluppo web App Engine in esecuzione. Questo obiettivo è supportato per i servizi in bundle legacy. |
Per ulteriori informazioni su come configurare e utilizzare Maven, consulta Utilizzare 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 anche definire i parametri di configurazione nella riga di comando, seguendo il pattern -D[USER_PROPERTY]=[PARAMETER_VALUE]
.
Ad esempio, per specificare una directory in cui eseguire lo staging dell'applicazione:
mvn appengine:stage -Dapp.stage.stagingDirectory=[YOUR_STAGING_DIRECTORY]
Consulta le sezioni seguenti per un elenco dei parametri disponibili per ciascun obiettivo.
appengine:deploy
Esegue il deployment e le fasi 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 ai flag della riga di comando gcloud app services
:
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 da eseguire. Il valore predefinito è
${project.build.directory}/${project.build.finalName}.${project.packaging} . |
app.stage.artifact |
bucket |
Il bucket Cloud Storage utilizzato per eseguire il commit dei file associati al deployment. Se questo parametro non viene specificato, viene utilizzato il bucket predefinito dell'applicazione. | app.deploy.bucket |
cloudSdkPath |
Parametro facoltativo per configurare la posizione di Google Cloud CLI. Il valore predefinito è il rilevamento automatico dal percorso PATH o dalla posizione 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 di staging.
Se non viene trovato, tenta di generare automaticamente i file di configurazione necessari (ad esempio app.yaml ) nella directory di staging. |
app.deploy.deployables |
dockerDirectory |
La directory contenente il Dockerfile e altre risorse Docker.
Il valore predefinito è
${basedir}/src/main/docker/ . |
app.stage.dockerDirectory |
imageUrl |
Esegui 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 al momento dell'inizializzazione di gcloud . |
app.deploy.projectId |
promote |
Promuovi la versione di cui è stato eseguito il deployment in modo che riceva 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 eseguire l'implementazione dell'applicazione. Il valore predefinito è
${project.build.directory}/appengine-staging . |
app.stage.stagingDirectory |
stopPreviousVersion |
Interrompi 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 per te. | app.deploy.version |
appengine:help
Visualizza le informazioni della guida sul plug-in Maven App Engine. Per visualizzare i dettagli del parametro, chiama:
mvn appengine:help -Ddetail=true -Dgoal=[GOAL_NAME]
Puoi utilizzare i seguenti parametri:
Parametro | Descrizione | Proprietà utente |
---|---|---|
detail |
Se true, vengono visualizzate tutte le proprietà impostabili per ogni obiettivo. Il valore predefinito è
False . |
detail |
goal |
Il nome dell'obiettivo per cui mostrare la guida. Se non viene specificato, 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 riga di visualizzazione. Deve essere un numero positivo.
Il valore predefinito è 80 . |
lineLength |
appengine:stage
Genera una directory di compilazione 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 da eseguire. Il valore predefinito è
${project.build.directory}/${project.build.finalName}.${project.packaging} . |
app.stage.artifact |
cloudSdkPath |
Parametro facoltativo per configurare la posizione 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 eseguire l'implementazione dell'applicazione. Il valore predefinito è
${project.build.directory}/appengine-staging |
app.stage.stagingDirectory |