Como criar aplicativos do App Engine com a API Admin

Use a API Admin do Google App Engine para criar aplicativos do App Engine de maneira programática, em novos projetos do Google Cloud Platform. Ao usar a API Admin com a API Cloud Resource Manager, você consegue gerenciar de maneira programática os projetos do GCP e os aplicativos do App Engine.

Ao criar um aplicativo do App Engine, você cria também um recurso Application para um projeto de destino do GCP no local especificado.

Para criar manualmente um aplicativo do App Engine em um projeto do GCP, consulte o tópico Como gerenciar projetos, aplicativos e faturamento na sua linguagem no ambiente padrão ou flexível.

Antes de começar

É preciso atender aos seguintes pré-requisitos, antes de criar um aplicativo do App Engine usando a API Admin:

  • É preciso criar um projeto do GCP ou usar um atual.
  • É preciso que você seja o proprietário do projeto de destino do GCP.
  • É preciso que você tenha permissão para acessar a API Admin.

Antes que qualquer outra conta de usuário possa executar tarefas em um aplicativo do App Engine, o proprietário do projeto do GCP precisa primeiro criar o recurso Application. Por exemplo, primeiro você precisa criar o aplicativo do App Engine para que uma conta de usuário com o papel de Implantador do App Engine possa implantar um aplicativo usando uma conta de serviço.

Para criar um projeto do GCP:

API

Para criar um projeto do GCP de maneira programática, é possível usar a API do Cloud Resource Manager. Para saber detalhes, consulte Como criar um novo projeto. Veja um breve exemplo.

Console

Para criar um projeto do GCP usando o Console do GCP:

Acesse a página Projetos

gcloud

Depois de instalar o SDK do Google Cloud, é possível executar o seguinte comando da ferramenta gcloud para criar um projeto do GCP:

gcloud projects create

Se você optar por utilizar um projeto do GCP atual, certifique-se de que ele não tenha o recurso Application, porque os projetos são compatíveis com apenas um aplicativo do App Engine. Use o método apps.get ou execute o comando gcloud app describe para verificar se o projeto do GCP tem o recurso Application.

Como criar um aplicativo do App Engine

Para criar um aplicativo do App Engine com a API Admin:

  1. Autorize suas solicitações HTTP, por exemplo, consiga um token de acesso.

    A autorização de acesso à API Admin pode ser realizada com diferentes fluxos do OAuth, dependendo das necessidades do seu aplicativo de API. Para mais informações, consulte Como acessar a API.

  2. Envie uma solicitação HTTP POST usando seu token de acesso e a API Admin para criar um aplicativo do App Engine.

    Você define o recurso Application e o projeto de destino do GCP na solicitação HTTP POST, por exemplo:

    POST https://appengine.googleapis.com/v1/apps { "id": "[MY_PROJECT_ID]", "locationId": "[MY_APP_LOCATION]" }
    

    Campos de solicitação HTTP obrigatórios:

    • id: o ID do projeto de destino do GCP em que você quer criar um aplicativo do App Engine.

    • locationId: o nome da região geográfica em que o aplicativo do App Engine está localizado, conforme listado nos Locais do App Engine, por exemplo, us-east1.

      Para uma lista completa dos locais compatíveis, use o método apps.locations.list.

      Exemplo: autorize e execute essa solicitação de exemplo no APIs Explorer para visualizar uma lista atual de locais compatíveis.

    Para uma lista completa de opções de campo, consulte o recurso Application.

    Exemplo de comando cURL:

    curl -X POST -d "{ 'id': '[MY_PROJECT_ID]', 'locationId': '[MY_APP_LOCATION]' }" -H "Content-Type: application/json" -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps
    

    Em que:

    • [MY_PROJECT_ID] é o código do projeto de destino em que você quer criar o aplicativo do App Engine.
    • [MY_APP_LOCATION] é o local em que você quer criar o aplicativo do App Engine.
    • [MY_ACCESS_TOKEN] é o token de acesso que você recebeu para autorizar suas solicitações HTTP.

    Exemplo de resposta:

    {
      "name": "apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f",
      "metadata": {
        "@type": "type.googleapis.com/google.appengine.v1.OperationMetadataV1",
        "method": "google.appengine.v1.Applications.CreateApplication",
        "insertTime": "2016-10-03T20:48:02.099Z",
        "user": "me@example.com",
        "target": "apps/[MY_PROJECT_ID]"
      }
    }
    
  3. Verifique se o aplicativo do App Engine foi criado:

    1. Veja o status da operação de criação real:

      A solicitação HTTP POST usada na etapa anterior retornou o nome da operação no campo name, utilizado com o método GET da coleção apps.operations para verificar o status da operação de criação.

      Por exemplo, se o campo name da resposta for:

      "name": "apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f"
      

      Você enviará a seguinte solicitação HTTP GET:

      GET https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f
      

      Exemplo de comando cURL:

      curl -X GET -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f
      

      Em que [MY_ACCESS_TOKEN] é seu token de acesso e [MY_PROJECT_ID] é o código do projeto de destino.

      Exemplo de resposta:

      {
        "name": "apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f",
        "metadata": {
          "@type": "type.googleapis.com/google.appengine.v1.OperationMetadataV1",
          "method": "google.appengine.v1.Applications.CreateApplication",
          "insertTime": "2016-10-03T20:48:02.099Z",
          "endTime": "2016-10-03T20:48:18.272Z",
          "user": "me@example.com",
          "target": "apps/[MY_PROJECT_ID]"
        },
        "done": true,
        "response": {
          "@type": "type.googleapis.com/google.appengine.v1.Application",
          "id": "[MY_PROJECT_ID]",
          "locationId": "[MY_APP_LOCATION]"
        }
      }
      
    2. Verifique se o aplicativo do App Engine foi criado no projeto:

      Para visualizar detalhes sobre a versão, use o método GET da coleção apps. É preciso especificar qual projeto você implantou na solicitação HTTP GET, por exemplo:

      GET https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]
      

      Exemplo de comando cURL:

      curl -X GET -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/
      

      Em que [MY_ACCESS_TOKEN] é seu token de acesso e [MY_PROJECT_ID] é o código do projeto de destino.

      Exemplo de resposta:

      {
        "name": "apps/[MY_PROJECT_ID]",
        "id": "[MY_PROJECT_ID]",
        "authDomain": "gmail.com",
        "locationId": "us-central",
        "defaultHostname": "[MY_PROJECT_ID].appspot.com",
        "defaultBucket": "[MY_PROJECT_ID].appspot.com"
      }
      

Próximas etapas

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

API Admin do App Engine