Depois de adicionar o plug-in Maven do App Engine baseado na CLI gcloud ao seu projeto, os seguintes objetivos Maven específicos do App Engine estão disponíveis:
Objetivo | Descrição |
---|---|
appengine:cloudSdkLogin |
Define o estado global da CLI gcloud para account. |
appengine:deploy |
Prepara e implementa uma aplicação no App Engine. |
appengine:deployAll |
Prepara e implementa uma aplicação com todas as respetivas configurações YAML válidas simultaneamente no App Engine. |
appengine:deployCron |
Prepara e implementa um ficheiro de configuração cron.yaml no App Engine. |
appengine:deployDispatch |
Prepara e implementa um ficheiro de configuração dispatch.yaml no App Engine. |
appengine:deployDos |
Prepara e implementa um ficheiro de configuração dos.yaml no App Engine. |
appengine:deployIndex |
Prepara e implementa um ficheiro de configuração index.yaml no App Engine. |
appengine:deployQueue |
Prepara e implementa um ficheiro de configuração queue.yaml no App Engine. |
appengine:help |
Apresenta informações de ajuda sobre o plug-in do Maven do App Engine. |
appengine:run |
Executa o servidor de desenvolvimento do App Engine. Quando o servidor está em execução, verifica continuamente se appengine-web.xml foi alterado. Se tiver, o servidor recarrega a aplicação. Não tem de parar nem reiniciar a aplicação
devido a alterações ao appengine-web.xml . Este objetivo é suportado para os serviços incluídos antigos.
|
appengine:stage |
Gera um diretório de aplicações para implementação. |
appengine:start |
Inicia a execução do devserver do App Engine de forma assíncrona e, em seguida, volta à linha de comandos. Quando este objetivo é executado, o comportamento é o mesmo
que o objetivo run , exceto que o Maven continua a processar objetivos
e sai após o servidor estar em funcionamento. Este objetivo é suportado para os serviços incluídos antigos.
|
appengine:stop |
Para um servidor de programação Web do App Engine em execução. Este objetivo é suportado para os serviços incluídos antigos. |
Para mais informações sobre como configurar e usar o Maven, consulte o artigo Usar o Maven.
Usar parâmetros
Cada objetivo tem parâmetros associados que pode especificar no ficheiro 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 pode definir parâmetros de configuração na linha de comandos, seguindo o padrão -D[USER_PROPERTY]=[PARAMETER_VALUE]
.
Por exemplo, para especificar um diretório para o qual preparar a sua aplicação:
mvn appengine:stage -Dapp.stage.stagingDirectory=[YOUR_STAGING_DIRECTORY]
Consulte as secções seguintes para ver uma lista dos parâmetros disponíveis para cada objetivo.
appengine:deploy
Prepara e implementa uma aplicação no App Engine.
Pode usar os seguintes parâmetros, alguns dos quais correspondem a gcloud app deploy
sinalizadores de linha de comandos ou gcloud app services
sinalizadores de linha de comandos:
Parâmetro | Descrição | Propriedade do utilizador |
---|---|---|
appEngineDirectory |
O diretório que contém app.yaml e outros ficheiros de configuração do App Engine suportados. A predefinição é
${basedir}/src/main/appengine . |
app.stage.appEngineDirectory |
artifact |
A localização do arquivo JAR ou WAR a implementar. A predefinição é
${project.build.directory}/${project.build.finalName}.${project.packaging} . |
app.stage.artifact |
bucket |
O contentor do Cloud Storage usado para preparar ficheiros associados à implementação. Se este argumento não for especificado, é usado o contentor predefinido da aplicação. | app.deploy.bucket |
cloudSdkPath |
Parâmetro opcional para configurar a localização da CLI gcloud. A predefinição é a deteção automática a partir do PATH ou da localização de instalação padrão. | cloudSdkPath |
deployables |
Os ficheiros YAML dos serviços ou das configurações que quer implementar.
A predefinição é o ficheiro app.yaml no diretório de preparação.
Se não for encontrado, tenta gerar automaticamente os ficheiros de configuração necessários (como app.yaml ) no diretório de preparação. |
app.deploy.deployables |
dockerDirectory |
O diretório que contém o Dockerfile e outros recursos do Docker.
A predefinição é
${basedir}/src/main/docker/ . |
app.stage.dockerDirectory |
imageUrl |
Implementar com uma imagem do Docker específica. ImageUrl tem de ser
um nome do Artifact Registry válido, por exemplo, docker.pkg.dev/foo ,
em que foo é o nome da imagem. |
app.deploy.imageUrl |
projectId |
O Google Cloud nome do projeto a usar para esta invocação.
O valor predefinido é o projeto atual selecionado quando inicializa gcloud . |
app.deploy.projectId |
promote |
Promova a versão implementada para receber todo o tráfego. A predefinição é
True . |
app.deploy.promote |
server |
O servidor do App Engine ao qual estabelecer ligação. Normalmente, não precisa de alterar este valor. | app.deploy.server |
stagingDirectory |
Obrigatório. O diretório para o qual a aplicação deve ser preparada. A predefinição é
${project.build.directory}/appengine-staging . |
app.stage.stagingDirectory |
stopPreviousVersion |
Pare a versão em execução anterior quando implementar uma nova versão que recebe todo o tráfego. | app.deploy.stopPreviousVersion |
version |
A versão da app que vai ser criada ou substituída por esta implementação. Se não especificar uma versão, é gerada uma para si. | app.deploy.version |
appengine:help
Apresenta informações de ajuda sobre o plug-in do Maven do App Engine. Para apresentar os detalhes dos parâmetros, chame:
mvn appengine:help -Ddetail=true -Dgoal=[GOAL_NAME]
Pode usar os seguintes parâmetros:
Parâmetro | Descrição | Propriedade do utilizador |
---|---|---|
detail |
Se for verdadeiro, apresenta todas as propriedades definíveis para cada objetivo. A predefinição é
False . |
detail |
goal |
O nome do objetivo para o qual mostrar ajuda. Se não for especificado, todos os objetivos são apresentados. | goal |
indentSize |
O número de espaços por nível de avanço. Deve ser um número positivo.
A predefinição é 2 . |
indentSize |
lineLength |
O comprimento máximo de uma linha de visualização. Deve ser um número positivo.
A predefinição é 80 . |
lineLength |
appengine:stage
Gera um diretório de compilação de aplicações para implementação.
Pode usar os seguintes parâmetros:
Parâmetro | Descrição | Propriedade do utilizador |
---|---|---|
appEngineDirectory |
O diretório que contém app.yaml e outros ficheiros de configuração do App Engine suportados. A predefinição é
${basedir}/src/main/appengine . |
app.stage.appEngineDirectory |
artifact |
A localização do arquivo JAR ou WAR a implementar. A predefinição é
${project.build.directory}/${project.build.finalName}.${project.packaging} . |
app.stage.artifact |
cloudSdkPath |
Parâmetro opcional para configurar a localização da CLI gcloud. | cloudSdkPath |
dockerDirectory |
O diretório que contém o Dockerfile e outros recursos do Docker.
A predefinição é
${basedir}/src/main/docker/ ${basedir}/src/main/docker/ . |
app.stage.dockerDirectory |
stagingDirectory |
Obrigatório. O diretório para o qual a aplicação deve ser preparada. A predefinição é
${project.build.directory}/appengine-staging |
app.stage.stagingDirectory |