Tareas y propiedades del complemento Gradle de App Engine

Una vez que hayas añadido el complemento Gradle de App Engine a tu proyecto, podrás usar las siguientes tareas de Gradle específicas de App Engine:

Tarea Descripción
tasks Muestra información de ayuda sobre las tareas instaladas.
appengineStage Genera un directorio de aplicaciones para la implementación.
appengineDeploy Fasea y despliega una aplicación en App Engine.
appengineDeployCron Despliega un archivo de configuración cron.yaml en App Engine.
appengineDeployDispatch Despliega un archivo de configuración dispatch.yaml en App Engine.
appengineDeployDos Despliega un archivo de configuración dos.yaml en App Engine.
appengineDeployIndex Despliega un archivo de configuración index.yaml en App Engine.
appengineDeployQueue Despliega un archivo de configuración queue.yaml en App Engine.
jettyRun Ejecuta el servidor de desarrollo con las configuraciones predeterminadas de Jetty. Para obtener más información sobre el complemento Gretty, consulta Configuración de Gretty y Tareas de Gretty.

Para ver una lista de todas las tareas, sigue estos pasos:

gradle tasks

Para obtener más información sobre cómo configurar y usar Gradle, consulta Usar Gradle de App Engine y el repositorio app-gradle-plugin en GitHub.

Propiedades de la tarea

El contenido del archivo gradle.build es un conjunto de reglas para describir tu compilación. Está escrito en un lenguaje específico de dominio para describir compilaciones, basado en el lenguaje Groovy.

Cada tarea tiene propiedades asociadas que puedes usar. Puedes especificar estas propiedades en el archivo gradle.build mediante un cierre de configuración, una tarea y propiedades.

En este ejemplo:

  • El cierre de la configuración del complemento es appengine.
  • La tarea es deploy.
  • Las propiedades stopPreviousVersion y promote se definen como true.
appengine {
  deploy {   // deploy configuration
    stopPreviousVersion = true  // default - stop the current version
    promote = true              // default - & make this the current version
  }
}
Si solo tienes que especificar algunas propiedades, puedes definirlas en una sola línea:

  appengine.deploy.stopPreviousVersion = true

En las siguientes secciones se incluye una lista de las propiedades disponibles para cada tarea.

appengineStage

task(stage)

Genera un directorio de aplicaciones para la implementación. Usada por la tarea appengineDeploy y la tarea jettyRun.

Puedes usar las siguientes propiedades:

Propiedad Descripción
artifact Artefacto compilado que contiene todas las clases, los recursos y los manifiestos. El valor predeterminado es build/libs/[YOUR_SERVLET].war (ADMITE VALORES NULL).
appEngineDirectory Ubicación del archivo app.yaml. El valor predeterminado es src/main/appengine.
dockerDirectory Ubicación del Dockerfile. El valor predeterminado es src/main/docker.
stagingDirectory Obligatorio. El directorio en el que se debe almacenar la aplicación. El valor predeterminado es build/staged-app.

appengineDeploy

task(deploy)

Fasea y despliega una aplicación en App Engine.

Cada tarea tiene propiedades asociadas que puedes usar. Puedes especificar estas propiedades en el archivo gradle.build mediante un cierre de configuración, una tarea y propiedades.

En el siguiente ejemplo:

  • El cierre de la configuración del complemento es appengine.
  • La tarea es run.
  • La propiedad port se ha definido como 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
  }
}

Si solo tienes que especificar algunas propiedades, puedes definirlas en una sola línea:

  appengine.run.port = 8888
Propiedad Descripción
appEngineDirectory Ubicación de los archivos de configuración de .yaml (cron, index, etc.) desde los que se desplegarán las configuraciones específicas (appengineDeployCron, etc.). En el caso de las aplicaciones flexibles, el valor predeterminado es src/main/appengine.
bucket El segmento de Cloud Storage que se usa para almacenar los archivos asociados a la implementación. Si no se especifica este argumento, se usará el cubo predeterminado de la aplicación.
deployables Los archivos YAML de los servicios o las configuraciones que quieras desplegar. El valor predeterminado es el archivo app.yaml del directorio de almacenamiento provisional. Si no se encuentra, se intenta generar automáticamente los archivos de configuración necesarios (como app.yaml) en el directorio de staging.
imageUrl Despliega con una imagen de Docker específica. La URL de Docker debe ser uno de los nombres de host válidos de Artifact Registry.
project El nombre del proyecto de Google Cloud Platform que se va a usar en esta invocación. El valor predeterminado es el proyecto seleccionado al inicializar la herramienta gcloud. Para verificarlo, usa gcloud config list project.
promote Promociona la versión implementada para que reciba todo el tráfico. El valor predeterminado es True.
server El servidor de App Engine al que conectarse. Por lo general, no es necesario cambiar este valor.
stopPreviousVersion Detener la versión que se estaba ejecutando anteriormente al implementar una nueva versión que reciba todo el tráfico.
version La versión de la aplicación que se creará o sustituirá con este despliegue. Si no especifica ninguna versión, se generará una automáticamente.

Propiedades globales

Propiedad Descripción
tools.cloudSdkHome Propiedad opcional para configurar la ubicación de Google Cloud CLI. Normalmente, el complemento encuentra este valor en gcloud CLI cuando se instala con gcloud components install app-engine-java.