Depois que você adiciona o plug-in do Maven do App Engine baseado na CLI gcloud ao projeto, são disponibilizadas as seguintes metas do Maven específicas do App Engine:
Meta | Descrição |
---|---|
appengine:cloudSdkLogin |
Define o estado global da CLI gcloud para a conta. |
appengine:deploy |
Testa e implanta um aplicativo no App Engine. |
appengine:deployAll |
Prepara e implanta um aplicativo com todas as configurações yaml válidas simultaneamente no App Engine. |
appengine:deployCron |
Prepara e implanta um arquivo de configuração cron.yaml
no App Engine. |
appengine:deployDispatch |
Prepara e implanta um arquivo de configuração dispatch.yaml
no App Engine. |
appengine:deployDos |
Prepara e implanta um arquivo de configuração dos.yaml
no App Engine. |
appengine:deployIndex |
Prepara e implanta um arquivo de configuração index.yaml
no App Engine. |
appengine:deployQueue |
Prepara e implanta um arquivo de configuração queue.yaml
no App Engine. |
appengine:help |
Exibe informações de ajuda sobre o plug-in do Maven para App Engine. |
appengine:run |
Executa o servidor de desenvolvimento do App Engine. Quando o servidor está
em execução, ele faz verificações contínuas para determinar se
appengine-web.xml foi alterado. Se afirmativo, o servidor atualizará
o aplicativo. Você não precisa parar e reiniciar o aplicativo devido
a alterações em appengine-web.xml . Esta meta é compatível com os serviços incluídos legados.
|
appengine:stage |
Gera um diretório de aplicativos para implantação. |
appengine:start |
Inicia a execução do servidor de desenvolvimento do App Engine de forma assíncrona e depois
retorna para a linha de comando. Quando esta meta é executada, o comportamento dela é igual
ao da meta run . A diferença é que o Maven continua processando metas
e é encerrado depois que o servidor entra em funcionamento. Esta meta é compatível com os serviços incluídos legados.
|
appengine:stop |
Para um servidor de desenvolvimento da Web do App Engine em execução. Esta meta é compatível com os serviços incluídos legados. |
Para ver mais informações sobre como configurar e usar o Maven, consulte o artigo Como usar o Maven.
Como usar parâmetros
Cada meta tem parâmetros associados que podem ser especificados no arquivo pom.xml
.
Por exemplo:
<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>
Também é possível definir parâmetros de configuração na linha de comando seguindo o
padrão -D[USER_PROPERTY]=[PARAMETER_VALUE]
.
Por exemplo, para especificar um diretório de teste do seu aplicativo:
mvn appengine:stage -Dapp.stage.stagingDirectory=[YOUR_STAGING_DIRECTORY]
Consulte as seções a seguir para ver uma lista dos parâmetros disponíveis para cada meta.
appengine:deploy
Testa e implanta um aplicativo no App Engine.
Use os parâmetros abaixo, alguns dos quais correspondem a
sinalizações de linha de comando gcloud app deploy
ou sinalizações de linha de comando gcloud app services
:
Parâmetro | Descrição | Propriedade do usuário |
---|---|---|
appEngineDirectory |
O diretório que contém app.yaml e outros arquivos de
configuração compatíveis do App Engine. O padrão é
${basedir}/src/main/appengine . |
app.stage.appEngineDirectory |
artifact |
O local do arquivo JAR ou WAR para implantação. O padrão é
${project.build.directory}/${project.build.finalName}.${project.packaging} . |
app.stage.artifact |
bucket |
O bucket do Cloud Storage usado para testar arquivos associados à implantação. Se esse argumento não for especificado, o bucket padrão do aplicativo será usado. | app.deploy.bucket |
cloudSdkPath |
Parâmetro opcional para configurar o local da Google Cloud CLI. O padrão é descobrir automaticamente a partir do CAMINHO ou do local de instalação padrão. | cloudSdkPath |
deployables |
Arquivos YAML dos serviços ou configurações que você quer implantar.
O padrão é o arquivo app.yaml no diretório de preparo.
Se ele não for encontrado, tentará gerar automaticamente os arquivos de configuração
necessários (como app.yaml ) no diretório
de preparo. |
app.deploy.deployables |
dockerDirectory |
O diretório que contém o Dockerfile e outros recursos do Docker.
O padrão é
${basedir}/src/main/docker/ . |
app.stage.dockerDirectory |
imageUrl |
Implanta com uma imagem Docker específica. ImageUrl precisa ser
um nome válido do Artifact Registry, por exemplo, docker.pkg.dev/foo ,
em que foo é o nome da imagem. |
app.deploy.imageUrl |
projectId |
O nome do projeto do Google Cloud a ser usado nesta invocação.
O padrão é o projeto atual selecionado ao
inicializar gcloud . |
app.deploy.projectId |
promote |
Promote the deployed version to receive all traffic. O padrão é
True . |
app.deploy.promote |
server |
Servidor do App Engine ao qual conectar-se. Normalmente não é preciso alterar esse valor. | app.deploy.server |
stagingDirectory |
Obrigatório. Diretório onde o aplicativo será testado. O padrão é
${project.build.directory}/appengine-staging . |
app.stage.stagingDirectory |
stopPreviousVersion |
Interrompe a versão em execução ao implantar uma nova versão que recebe todo o tráfego. | app.deploy.stopPreviousVersion |
version |
A versão do app que será criada ou substituída por essa implantação. Se você não especificar uma versão, será gerado um número de versão automaticamente. | app.deploy.version |
appengine:help
Exibe informações de ajuda sobre o plug-in do Maven para App Engine. Para exibir os detalhes do parâmetro, chame:
mvn appengine:help -Ddetail=true -Dgoal=[GOAL_NAME]
Use os parâmetros a seguir:
Parâmetro | Descrição | Propriedade do usuário |
---|---|---|
detail |
Se verdadeiro, exibe todas as propriedades configuráveis para cada meta. O padrão é
False . |
detail |
goal |
O nome da meta para exibir o respectivo conteúdo de ajuda. Quando não especificado, todas as metas são exibidas. | goal |
indentSize |
O número de espaços por nível de recuo. Deve ser um número positivo.
O padrão é 2 . |
indentSize |
lineLength |
O comprimento máximo de uma linha de exibição. Deve ser um número positivo.
O padrão é 80 . |
lineLength |
appengine:run
Executa o servidor da Web de desenvolvimento do App Engine. Quando o servidor está
em execução, ele faz verificações contínuas para determinar se appengine-web.xml
foi
alterado. Se houver, o servidor recarregará o aplicativo. Isso significa que você
não precisa parar e reiniciar o aplicativo devido a alterações em
appengine-web.xml
.
Use os parâmetros a seguir. Alguns deles correspondem a flags de linha de comando do servidor de desenvolvimento local:
Propriedade | Descrição | Configuração do plug-in | Configuração da linha de comando |
---|---|---|---|
automaticRestart |
Reiniciar as instâncias automaticamente quando os arquivos do aplicativo da Web (recursos
ou arquivos de classe) forem alterados. Para configurar o Maven para colocar os arquivos de classe
compilados no diretório correto do app da Web, altere
a configuração "outputDirectory" do Maven:
<build> <outputDirectory> target/${project.artifactId}-${project.version}/WEB-INF/classes </outputDirectory> ... <plugins> ... |
devserver.automaticRestart |
app.devserver.automaticRestart |
environment |
Um mapa de variáveis de ambiente a enviar para o servidor de desenvolvimento local.
Exemplo:
<environment> <key1>value1</key1> <key2>value2</key2> </environment> |
devserver.environment |
app.devserver.environment |
jvmFlags |
Outros argumentos a serem transmitidos ao comando java ao iniciar uma
instância do aplicativo. Pode ser especificado mais de uma vez. Exemplo:
<jvmFlags> <jvmFlag>-Xmx1024m</jvmFlag> <jvmFlag>-Xms256m</jvmFlag> </jvmFlags> |
devserver.jvmFlags |
app.devserver.jvmFlags |
host |
Nome do host a que os serviços de aplicativos precisam se vincular. O padrão é
localhost .
|
devserver.host |
app.devserver.host |
port |
Porta mais baixa a que os serviços de aplicativos precisam se vincular. O padrão é
8080 .
|
devserver.port |
app.devserver.port |
serverVersion |
Versão do servidor a iniciar. As opções são “1” e “2-alpha”. O padrão é “1”. | devserver.serverVersion |
app.devserver.serverVersion |
services |
Obrigatório. Caminho(s) para um diretório que contém
WEB-INF/web.xml . O padrão é build/exploded-app .
|
devserver.services |
app.devserver.services |
appengine:stage
Gera um diretório de compilação de aplicativos para implantação.
Você pode usar os seguintes parâmetros:
Parâmetro | Descrição | Propriedade do usuário |
---|---|---|
appEngineDirectory |
O diretório que contém app.yaml e outros arquivos de
configuração compatíveis do App Engine. O padrão é
${basedir}/src/main/appengine . |
app.stage.appEngineDirectory |
artifact |
O local do arquivo JAR ou WAR para implantação. O padrão é ${project.build.directory}/${project.build.finalName}.${project.packaging} . |
app.stage.artifact |
cloudSdkPath |
Parâmetro opcional para configurar o local da CLI gcloud. | cloudSdkPath |
dockerDirectory |
O diretório que contém o Dockerfile e outros recursos do Docker.
O padrão é
${basedir}/src/main/docker/ ${basedir}/src/main/docker/ . |
app.stage.dockerDirectory |
stagingDirectory |
Obrigatório. Diretório onde o aplicativo será testado. O padrão é
${project.build.directory}/appengine-staging |
app.stage.stagingDirectory |
appengine:start
Inicia a execução do servidor da Web de desenvolvimento do App Engine de forma assíncrona
e depois retorna à linha de comando. Quando esta meta é executada, o comportamento dela é igual
ao da meta run
. A diferença é que o Maven continua processando metas e é encerrado
depois que o servidor entra em funcionamento.
Use os seguintes parâmetros:
Propriedade | Descrição | Configuração do plug-in | Configuração da linha de comando |
---|---|---|---|
environment |
Um mapa de variáveis de ambiente a enviar para o servidor de desenvolvimento local.
Exemplo:
<environment> <key1>value1</key1> <key2>value2</key2> </environment> |
devserver.environment |
app.devserver.environment |
jvmFlags |
Outros argumentos a serem transmitidos ao comando java ao iniciar uma
instância do aplicativo. Pode ser especificado mais de uma vez. Exemplo:
<jvmFlags> <jvmFlag>-Xmx1024m</jvmFlag> <jvmFlag>-Xms256m</jvmFlag> </jvmFlags> |
devserver.jvmFlags |
app.devserver.jvmFlags |
host |
Nome do host a que os serviços de aplicativos precisam se vincular. O padrão é
localhost .
|
devserver.host |
app.devserver.host |
port |
Porta mais baixa a que os serviços de aplicativos precisam se vincular. O padrão é
8080 .
|
devserver.port |
app.devserver.port |
serverVersion |
Versão do servidor a iniciar. As opções são “1” e “2-alpha”. O padrão é “1”. | devserver.serverVersion |
app.devserver.serverVersion |
services |
Obrigatório. Caminho(s) para um diretório que contém
WEB-INF/web.xml . O padrão é build/exploded-app .
|
devserver.services |
app.devserver.services |
startSuccessTimeout |
Tempo, em segundos, para aguardar o início do servidor de apps de desenvolvimento em segundo plano (ao usar appengineStart). | devserver.startSuccessTimeout |
app.devserver.startSuccessTimeout |
appengine:stop
Para um servidor de desenvolvimento da Web do App Engine em execução.
Use os seguintes parâmetros:
Parâmetro | Descrição | Configuração do plug-in | Configuração da linha de comando |
---|---|---|---|
host |
Nome do host a que o servidor de administração precisa se vincular. O padrão é
localhost |
devserver.adminHost |
app.devserver.adminHost |
port |
Porta a que o servidor de administração precisa se vincular. O padrão é 8000 . |
devserver.adminPort |
app.devserver.adminPort |
cloudSdkHome |
Parâmetro opcional para configurar o local da CLI gcloud. Se essa propriedade não for especificada, o plug-in fará automaticamente o download da CLI gcloud. | cloudSdkHome |
cloudSdkHome |