Para implementar uma versão da sua app com a API Admin, defina os detalhes de configuração da sua versão através de um ficheiro formatado em JSON. Pode criar manualmente o ficheiro de configuração ou converter um ficheiro app.yaml
existente.
Existem duas partes na criação de um ficheiro de configuração formatado em JSON:
- Defina as informações de configuração da versão que quer implementar.
- Defina uma secção
deployment
para especificar todos os ficheiros e recursos da sua app que quer implementar.
Antes de começar
Primeiro, tem de carregar todos os ficheiros e recursos da sua app para um
contentor do Cloud Storage
antes de poder criar o ficheiro de configuração app.json
.
Criar manualmente o ficheiro de configuração JSON
Use os seguintes passos se precisar de criar manualmente o ficheiro de configuração, por exemplo, quando a sua app exclui um app.yaml
ou a sua app Java existente usa um ficheiro appengine-web.xml
.
Para criar manualmente o ficheiro de configuração app.json
para implementar a sua app com a API Admin:
- Crie um nome de ficheiro
app.json
. - Use as informações de configuração fornecidas na coleção apps.services.versions para definir e configurar a versão que quer implementar.
- Use o modelo na secção Defining the
deployment
para especificar todos os ficheiros e recursos que quer implementar a partir do seu contentor do Cloud Storage.
Consulte também a secção Exemplo abaixo para ajudar a criar o seu ficheiro de configuração app.json
.
Converter um ficheiro app.yaml
no formato JSON
Pode usar a ferramenta convert_yaml.py
para converter e gerar uma versão app.json
a partir de um ficheiro app.yaml
existente.
Se existir um ficheiro app.yaml
, que normalmente usa para implementar manualmente
versões da sua app, pode
reter essas informações convertendo essas definições de configuração no formato
JSON.
Pré-requisito
Transfira e instale a ferramenta convert_yaml.py
, incluindo os requisitos especificados.
Converter ficheiros YAML com a ferramenta convert_yaml.py
Para converter o seu ficheiro app.yaml
com a ferramenta convert_yaml.py
:
Localize e anote o caminho do diretório para o seu
app.yaml
.Exemplo:
cd root/apps-container/my-application/
Onde o
app.yaml
da aplicaçãoexample-python-app.py
pode ter o seguinte aspeto:service: default version: v1 runtime: python27 threadsafe: true handlers: - url: /.* script: example-python-app.py
Navegue para o diretório local onde transferiu a ferramenta
convert_yaml.py
, por exemplo:cd root/tools/appengine-config-transformer
Crie o ficheiro
app.json
a partir do ficheiroapp.yaml
executando a ferramentaconvert_yaml.py
:python ./convert_yaml.py [DIRECTORY_PATH]/app.yaml > [DIRECTORY_PATH]/app.json
Em que
[DIRECTORY_PATH]
é o caminho do diretório para o seu ficheiroapp.yaml
.É criada uma versão JSON (
app.json
) do seu ficheiroapp.yaml
no diretório[DIRECTORY_PATH]
.Certifique-se de que o ID da sua versão está definido no
app.json
ficheiro de configuração.Se o seu ficheiro
app.yaml
excluir o elementoversion: [VERSION_NAME]
, o elemento"id": [VERSION_NAME]
não é incluído no ficheiroapp.json
após a conversão. Por exemplo, se quiser definir o ID da versão comov1
, tem de adicionar manualmente a seguinte linha ao ficheiroapp.json
:"id": "v1",
Use o modelo na secção Defining the
deployment
para especificar todos os ficheiros e recursos da sua app que quer implementar.
Consulte também a secção Exemplo abaixo para ajudar a criar o seu ficheiro de configuração app.json
.
Definir a secção deployment
Para criar uma secção deployment
no ficheiro de configuração app.json
e definir manualmente todos os recursos localizados no seu contentor do Cloud Storage, use as informações de referência na secção deployment
da coleção apps.services.versions
. Se estiver a definir ficheiros individuais, pode usar o seguinte modelo:
"deployment": {
"files": {
"my-resource-file1": {
"sourceUrl": "https://storage.googleapis.com/[MY_BUCKET_ID]/my-application/my-resource-file1"
},
}
},
Onde my-resource-file1
define o nome do ficheiro e o caminho do diretório relativo de onde quer implementar esse ficheiro no App Engine.
Ficheiro de exemplo app.json
Use o exemplo seguinte app.json
para ajudar a criar o ficheiro de configuração.
No exemplo app.json
seguinte, o ID da versão v1
é definido juntamente com uma secção deployment
que inclui dois ficheiros de origem de exemplo do contentor do [MY_BUCKET_ID]
Cloud Storage.
{
"deployment": {
"files": {
"example-resource-file1": {
"sourceUrl": "https://storage.googleapis.com/[MY_BUCKET_ID]/example-application/example-resource-file1"
},
"images/example-resource-file2": {
"sourceUrl": "https://storage.googleapis.com/[MY_BUCKET_ID]/example-application/images/example-resource-file2"
},
}
},
"id": "v1",
"handlers": [
{
"urlRegex": "/.*",
"script": {
"scriptPath": "example-python-app.py"
}
},
],
"runtime": "python27",
"threadsafe": true,
}