Después de añadir el complemento de Maven de App Engine basado en gcloud CLI a tu proyecto, tienes disponibles los siguientes objetivos de Maven específicos de App Engine:
| Objetivo | Descripción |
|---|---|
appengine:cloudSdkLogin |
Define el estado global de la CLI de gcloud para account. |
appengine:deploy |
Fasea y despliega una aplicación en App Engine. |
appengine:deployAll |
Fase y despliega una aplicación con todas sus configuraciones yaml válidas simultáneamente en App Engine. |
appengine:deployCron |
Fase y despliega un archivo de configuración cron.yaml en App Engine. |
appengine:deployDispatch |
Fase y despliega un archivo de configuración dispatch.yaml en App Engine. |
appengine:deployDos |
Fase y despliega un archivo de configuración dos.yaml en App Engine. |
appengine:deployIndex |
Fase y despliega un archivo de configuración index.yaml en App Engine. |
appengine:deployQueue |
Fase y despliega un archivo de configuración queue.yaml en App Engine. |
appengine:help |
Muestra información de ayuda sobre el complemento Maven de App Engine. |
appengine:run |
Ejecuta el servidor de desarrollo de App Engine. Cuando el servidor está en funcionamiento, comprueba continuamente si appengine-web.xml ha cambiado. Si es así, el servidor vuelve a cargar la aplicación. No es necesario que detengas y reinicies tu aplicación
debido a los cambios en appengine-web.xml. Este objetivo se admite en los servicios agrupados antiguos.
|
appengine:stage |
Genera un directorio de aplicaciones para la implementación. |
appengine:start |
Inicia la ejecución del servidor de desarrollo de App Engine de forma asíncrona y, a continuación, vuelve a la línea de comandos. Cuando se ejecuta este objetivo, el comportamiento es el mismo que el del objetivo run, excepto que Maven sigue procesando objetivos y se cierra después de que el servidor esté en funcionamiento. Este objetivo se admite en los servicios agrupados antiguos.
|
appengine:stop |
Detiene un servidor de desarrollo web de App Engine en ejecución. Este objetivo se admite en los servicios agrupados antiguos. |
Para obtener más información sobre cómo configurar y usar Maven, consulta el artículo Usar Maven.
Usar parámetros
Cada objetivo tiene parámetros asociados que puedes especificar en el archivo pom.xml.
Por ejemplo:
<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>También puede definir parámetros de configuración en la línea de comandos siguiendo el patrón -D[USER_PROPERTY]=[PARAMETER_VALUE].
Por ejemplo, para especificar un directorio en el que almacenar provisionalmente tu aplicación, haz lo siguiente:
mvn appengine:stage -Dapp.stage.stagingDirectory=[YOUR_STAGING_DIRECTORY]
En las siguientes secciones se muestra una lista de los parámetros disponibles para cada objetivo.
appengine:deploy
Fasea y despliega una aplicación en App Engine.
Puede usar los siguientes parámetros, algunos de los cuales corresponden a marcas de línea de comandos de gcloud app deploy o marcas de línea de comandos de gcloud app services:
| Parámetro | Descripción | Propiedad del usuario |
|---|---|---|
appEngineDirectory |
El directorio que contiene app.yaml y otros archivos de configuración de App Engine compatibles. El valor predeterminado es ${basedir}/src/main/appengine. |
app.stage.appEngineDirectory |
artifact |
Ubicación del archivo JAR o WAR que se va a implementar. El valor predeterminado es ${project.build.directory}/${project.build.finalName}.${project.packaging}. |
app.stage.artifact |
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. | app.deploy.bucket |
cloudSdkPath |
Parámetro opcional para configurar la ubicación de Google Cloud CLI. El valor predeterminado es detectar automáticamente la ubicación de la instalación estándar o de la variable PATH. | cloudSdkPath |
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. |
app.deploy.deployables |
dockerDirectory |
El directorio que contiene el Dockerfile y otros recursos de Docker.
El valor predeterminado es ${basedir}/src/main/docker/. |
app.stage.dockerDirectory |
imageUrl |
Despliega con una imagen de Docker específica. ImageUrl debe ser un nombre de Artifact Registry válido. Por ejemplo, docker.pkg.dev/foo,
donde foo es el nombre de la imagen. |
app.deploy.imageUrl |
projectId |
El nombre del proyecto Google Cloud que se usará en esta invocación.
El valor predeterminado es el proyecto seleccionado al inicializar gcloud. |
app.deploy.projectId |
promote |
Promociona la versión implementada para que reciba todo el tráfico. El valor predeterminado es True. |
app.deploy.promote |
server |
El servidor de App Engine al que conectarse. Por lo general, no es necesario cambiar este valor. | app.deploy.server |
stagingDirectory |
Obligatorio. El directorio en el que se debe almacenar la aplicación. El valor predeterminado es ${project.build.directory}/appengine-staging. |
app.stage.stagingDirectory |
stopPreviousVersion |
Detener la versión que se estaba ejecutando anteriormente al implementar una nueva versión que reciba todo el tráfico. | app.deploy.stopPreviousVersion |
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. | app.deploy.version |
appengine:help
Muestra información de ayuda sobre el complemento Maven de App Engine. Para mostrar los detalles de los parámetros, llama a:
mvn appengine:help -Ddetail=true -Dgoal=[GOAL_NAME]
Puede usar los siguientes parámetros:
| Parámetro | Descripción | Propiedad del usuario |
|---|---|---|
detail |
Si es true, se muestran todas las propiedades configurables de cada objetivo. El valor predeterminado es False. |
detail |
goal |
Nombre del objetivo del que se debe mostrar la ayuda. Si no se especifica, se mostrarán todos los objetivos. | goal |
indentSize |
Número de espacios por nivel de sangría. Debe ser un número positivo.
El valor predeterminado es 2 (ADMITE VALORES NULL). |
indentSize |
lineLength |
La longitud máxima de una línea de display. Debe ser un número positivo.
El valor predeterminado es 80 (ADMITE VALORES NULL). |
lineLength |
appengine:stage
Genera un directorio de compilación de la aplicación para la implementación.
Puede usar los siguientes parámetros:
| Parámetro | Descripción | Propiedad del usuario |
|---|---|---|
appEngineDirectory |
El directorio que contiene app.yaml y otros archivos de configuración de App Engine compatibles. El valor predeterminado es ${basedir}/src/main/appengine. |
app.stage.appEngineDirectory |
artifact |
Ubicación del archivo JAR o WAR que se va a implementar. El valor predeterminado es ${project.build.directory}/${project.build.finalName}.${project.packaging}. |
app.stage.artifact |
cloudSdkPath |
Parámetro opcional para configurar la ubicación de gcloud CLI. | cloudSdkPath |
dockerDirectory |
El directorio que contiene el Dockerfile y otros recursos de Docker.
El valor predeterminado es ${basedir}/src/main/docker/${basedir}/src/main/docker/. |
app.stage.dockerDirectory |
stagingDirectory |
Obligatorio. El directorio en el que se debe almacenar la aplicación. El valor predeterminado es ${project.build.directory}/appengine-staging. |
app.stage.stagingDirectory |