Attività e proprietà del plug-in Gradle di App Engine

Dopo aver aggiunto il plug-in App Engine al progetto, puoi utilizzare i seguenti task Gradle specifici per App Engine per le applicazioni nell'ambiente standard di App Engine:

Attività Descrizione
tasks Mostra le informazioni della guida sulle attività installate.
appengineCloudSdkLogin Imposta lo stato globale dell'interfaccia a riga di comando gcloud per account.
appengineDeploy Esegue il deployment e le fasi di un'applicazione in App Engine.
appengineDeployAll Esegue il deployment e le fasi di un'applicazione con tutte le relative configurazioni yaml valide contemporaneamente in App Engine.
appengineDeployCron Esegue il deployment e le fasi di un file di configurazione cron.yaml in App Engine.
appengineDeployDispatch Mette in fase ed esegue il deployment di una configurazione dispatch.yaml in App Engine.
appengineDeployDos Mette in fase ed esegue il deployment di una configurazione dos.yaml in App Engine.
appengineDeployIndex Mette in fase ed esegue il deployment di una configurazione index.yaml in App Engine.
appengineDeployQueue Esegue il deployment e le fasi di un file di configurazione queue.yaml in App Engine.
appengineRun Esegue il server di sviluppo di App Engine. Quando il server viene è in esecuzione, verifica continuamente se appengine-web.xml è cambiato. In caso affermativo, il server si ricarica. per l'applicazione. Non è necessario arrestare e riavviare l'applicazione a causa delle modifiche a appengine-web.xml.
appengineStage Genera una directory dell'applicazione per il deployment.
appengineStart Avvia l'esecuzione del server di sviluppo App Engine in modo asincrono e poi torna alla riga di comando. Quando viene eseguito questo obiettivo, il comportamento è uguale a quello dell'obiettivo di esecuzione, tranne per il fatto che Gradle continua a elaborare le attività ed esce dopo l'avvio del server.
appengineStop Arresta un server di sviluppo web di App Engine in esecuzione.
explodeWar Espande il file WAR nella directory di compilazione.

Per visualizzare un elenco di tutte le attività:

gradle tasks

Per ulteriori informazioni su come configurare e utilizzare Gradle, consulta Utilizzare Gradle per App Engine.

Proprietà delle attività

I contenuti del file gradle.build sono un insieme di regole per descrivere la tua build. È scritto in un linguaggio specifico per dominio per descrivere le build, basato sul linguaggio Groovy.

A ogni attività sono associate delle seguenti proprietà che puoi utilizzare. Puoi specificare queste proprietà nel file gradle.build utilizzando un compito e proprietà di chiusura di configurazione.

Nell'esempio seguente:

  • La chiusura della configurazione per il plug-in è appengine.
  • L'attività è run.
  • La proprietà port è impostata su 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
  }
}

Se devi specificare solo alcune proprietà, puoi impostarle in un'unica riga:

  appengine.run.port = 8888

Consulta le sezioni seguenti per un elenco delle proprietà disponibili per ogni attività.

appengineStage

task(stage)

Genera una directory dell'applicazione per il deployment. appengineStage viene utilizzato dall'attività appengineDeploy.

Puoi utilizzare le seguenti proprietà:

Proprietà Descrizione
compileEncoding La codifica dei caratteri da utilizzare durante la compilazione delle JSP. Si applica alle applicazioni in esecuzione solo nell'ambiente standard di App Engine.
deleteJsps Elimina i file di origine JSP dopo la compilazione. Si applica solo alle applicazioni in esecuzione nell'ambiente standard di App Engine.
disableJarJsps Disabilita l'aggiunta delle classi generate dai JSP. Si applica solo alle applicazioni in esecuzione nell'ambiente standard di App Engine.
disableUpdateCheck Disabilita il controllo degli aggiornamenti della gcloud CLI.
enableJarClasses Aggiungi a Speciali WEB-INF/classes content. Si applica solo alle applicazioni in esecuzione nell'ambiente standard di App Engine.
useMtimeFileWatcher Utilizza il polling mtime per rilevare le modifiche al codice sorgente. Utile se modifichi il codice da una macchina remota utilizzando un file system distribuito.
enableJarSplitting Suddividi i file JAR di dimensioni superiori a 10 MB in frammenti più piccoli. Si applica al solo nell'ambiente standard di App Engine.
enableQuickstart Utilizza la guida rapida di Eclipse Jetty per elaborare le annotazioni dei servlet. Si applica solo all'ambiente standard di App Engine.
jarSplittingExcludes Escludi i file che corrispondono all'elenco di SUFFIXES separati da virgole da tutti i JAR . Si applica alle applicazioni in esecuzione in App Engine solo nell'ambiente standard.
sourceDirectory Obbligatorio. Il percorso dei file di applicazioni web compilati oppure il è esplosa WAR. Viene utilizzato come origine per l'implementazione. Si applica al solo nell'ambiente standard di App Engine. Il valore predefinito è build/exploded-${gradle-module-name}.
stagingDirectory Obbligatorio. La directory in cui posizionare l'applicazione in un'area intermedia. Il valore predefinito è build/staged-app.

appengineRun

task(run)

Esegue il server web di sviluppo App Engine. Quando il server è in esecuzione, controlla continuamente se appengine-web.xml è cambiato. In caso affermativo, il server ricarica l'applicazione. Ciò significa che non è necessario arrestare e riavviare l'applicazione a causa delle modifiche a appengine-web.xml.

Puoi utilizzare le seguenti proprietà, alcune delle quali corrispondono Flag della riga di comando del server di sviluppo locale:

Proprietà Descrizione
environment Una mappa delle variabili di ambiente da inviare al server di sviluppo locale. Esempio: [key1: "value1", key2: "value2"]
jvmFlags Argomenti aggiuntivi da passare al comando java quando viene avviata un'istanza dell'app. Può essere specificato più di una volta. Esempio: -Xmx1024m -Xms256m
host Nome host a cui devono essere associati i servizi delle applicazioni. Il valore predefinito è localhost.
port Porta più bassa a cui devono essere associati i servizi delle applicazioni. Il valore predefinito è 8080.
serverVersion Versione server da avviare, le opzioni sono "1" e "2-alpha". Il valore predefinito è "1".
services Obbligatorio. Percorsi di una directory contenente una directory contenente WEB-INF/web.xml. Il valore predefinito è build/exploded-app.
startSuccessTimeout Intervallo di tempo in secondi di attesa per l'avvio del server di app per sviluppatori in in background (quando si utilizza appengineStart).

appengineDeploy

task(deploy)

Organizza in fasi ed esegue il deployment di un'applicazione in App Engine.

Proprietà Descrizione
appEngineDirectory Posizione dei file di configurazione .yaml (cron, indice e così via) da quali deployment specifici della configurazione (appengineDeployCron ecc.) dal quale eseguire il deployment. Per le applicazioni standard, i file di configurazione .xml vengono convertiti in .yaml durante lo staging e inseriti in build/staged-app/WEB-INF/appengine-generated.
bucket Il bucket Google Cloud Storage utilizzato per lo stage dei file associati e deployment continuo. Se questo argomento non è specificato, lo stato predefinito in uso.
imageUrl Esegui il deployment con un'immagine Docker specifica. L'URL di Docker deve provenire da uno dei nomi host di Google Container Registry validi.
projectId L'ID progetto della piattaforma Google Cloud da utilizzare per questa chiamata. Devi specificare un projectId oppure puoi impostare GCLOUD_CONFIG su usa il set di progetti nello stato di configurazione di gcloud.
promote Promuovi la versione di cui è stato eseguito il deployment in modo che riceva tutto il traffico. Il valore predefinito è True.
server Il server App Engine a cui connetterti. In genere, non è necessario per modificare questo valore.
stopPreviousVersion Arresta la versione in esecuzione in precedenza quando esegui il deployment di una nuova versione riceve tutto il traffico.
version La versione dell'app che verrà creata o sostituita da questo deployment. Se non specifichi una versione, ne verrà generata una per te.

Proprietà globali

Proprietà Descrizione
tools.cloudSdkHome Proprietà facoltativa per configurare la posizione dell'interfaccia a riga di comando gcloud. Se questa proprietà non è specificata, il plug-in scarica automaticamente la CLI gcloud.
tools.cloudSdkVersion Parametro facoltativo per specificare la versione di gcloud CLI che preferisci.