Testar e implementar a sua app atualizada no Python 3

ID da região

O REGION_ID é um código abreviado que a Google atribui com base na região que seleciona quando cria a sua app. O código não corresponde a um país ou uma província, embora alguns IDs de regiões possam parecer semelhantes aos códigos de países e províncias usados frequentemente. Para apps criadas após fevereiro de 2020, REGION_ID.r está incluído nos URLs do App Engine. Para apps existentes criadas antes desta data, o ID da região é opcional no URL.

Saiba mais acerca dos IDs de regiões.

Depois de atualizar a sua app para ser compatível com o Python 2 e o Python 3:

  1. Teste a app num ambiente Python 3 local.

  2. Implemente e teste no App Engine sem desviar tráfego para a sua app.

  3. Migre tráfego para a sua app.

Pode ter de dedicar muito tempo a corrigir problemas de compatibilidade que não são visíveis até executar a app atualizada num ambiente Python 3.

Para evitar usar dados de produção e Google Cloud quota durante os testes, pode usar os seguintes emuladores:

Outros Google Cloud serviços, como o Cloud Storage e o Memorystore, não fornecem emuladores.

Testar localmente

Para testar a funcionalidade da sua app antes da implementação, siga as instruções para a executar localmente no tempo de execução do Python 3.

Testar no App Engine antes de mudar o tráfego

Antes de encaminhar o tráfego para a sua app Python atualizada, implemente a app no tempo de execução do App Engine Python 3 para outra ronda de testes. Por exemplo, para testar o serviço default da sua app:

  1. Certifique-se de que atualizou os ficheiros de configuração da app para compatibilidade com o tempo de execução do Python 3.

    Não altere as variáveis de ambiente que enviam pedidos para emuladores ou bases de dados de teste até estar tudo pronto para transferir tráfego para a sua app.

  2. Implemente a nova versão, mas impeça o encaminhamento automático do tráfego para a nova versão:

    gcloud app deploy --no-promote

  3. Aceda à nova versão navegando para o seguinte URL:

    https://VERSION_ID-dot-default-dot-PROJECT_ID.REGION_ID.r.appspot.com

Agora, pode testar a nova versão no ambiente de tempo de execução do App Engine. Pode depurar a sua aplicação vendo os respetivos registos. Para mais informações, consulte o artigo Escrever registos de aplicações.

As solicitações enviadas para https://PROJECT_ID.REGION_ID.r.appspot.com são encaminhadas para a versão configurada anteriormente para receber tráfego.

Para testar novas versões de outros serviços, siga o mesmo processo, mas substitua default no URL pelo nome do seu serviço:

https://VERSION-dot-SERVICE-dot-PROJECT_ID.REGION_ID.r.appspot.com

Para mais informações sobre a segmentação de serviços e versões específicos, consulte o artigo Como os pedidos são encaminhados.

Migrar tráfego para a sua app

Quando tiver tudo pronto para enviar tráfego para a nova versão:

  1. Atualize as variáveis de ambiente no ficheiro app.yaml para enviar pedidos às bases de dados de produção e a outros serviços, em vez de a quaisquer emuladores ou dados de teste que estava a usar.

  2. Impedir que o tráfego seja encaminhado automaticamente para a nova versão após a implementação:

    gcloud app deploy --no-promote

  3. Depois de confirmar que a sua app está a interagir com as bases de dados de produção e os repositórios de dados, use a Google Cloud consola para migrar o tráfego:

    Faça a gestão das versões

    Selecione a versão mais recente da app atualizada e clique em Migrar tráfego.