Como usar a ferramenta gcloud para testar aplicativos e gerenciar índices

É possível usar a Google Cloud CLI para testar o aplicativo localmente e gerenciar índices do Firestore de produção na instância do modo Datastore. Nesta página, descrevemos o fluxo de trabalho típico dessas atividades.

A CLI gcloud é compatível com o seguinte fluxo de trabalho:

  1. Crie suporte local para uma instância do Datastore, inclusive diretório, arquivos obrigatórios e ID do projeto.
  2. Inicie o emulador do Datastore, que fornece a emulação local do ambiente de produção do Datastore.
  3. Gere definições de índice a partir das consultas do aplicativo ao emulador.
  4. Faça upload manual de definições de índice criadas ou geradas na instância do banco de dados da produção.
  5. Exclua índices não utilizados da instância do banco de dados de produção.

Fluxo de trabalho de desenvolvimento com a ferramenta de linha de comando

Este é o fluxo de trabalho típico usando a CLI gcloud:

  1. Inicie o emulador do Datastore.

  2. Defina variáveis de ambiente para que o aplicativo saiba que está usando o emulador.

  3. Inicie o aplicativo e teste-o no emulador. Execute as consultas que o aplicativo usa no emulador para gerar índices para a instância do banco de dados de produção.

  4. Faça upload dos índices gerados com o comando indexes create, passando o caminho para seu arquivo local index.yaml, assim como no seguinte exemplo:

    gcloud datastore indexes create ~/.config/gcloud/emulators/datastore/WEB-INF/index.yaml
    

    No caso do caminho de exemplo, não defina um diretório específico para a opção data-dir. Se tiver definido um diretório específico, modifique o caminho para usar o caminho para o arquivo index.yaml.

  5. Remova as variáveis de ambiente para que o aplicativo saiba que está usando a instância do banco de dados de produção.

  6. Execute o aplicativo na instância do banco de dados de produção.

  7. Com o tempo, convém não usar mais alguns dos índices. Exclua índices não utilizados de sua instância de banco de dados de produção removendo-os de seu arquivo index.yaml local e, em seguida, invocando o comando indexes cleanup:

    gcloud datastore indexes cleanup ~/.config/gcloud/emulators/datastore/WEB-INF/index.yaml
    

    Se você tiver definido um diretório específico para a opção data-dir, modifique o caminho no exemplo para usar o caminho para o arquivo index.yaml.

A seguir