É 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:
- Crie suporte local para uma instância do Datastore, inclusive diretório, arquivos obrigatórios e ID do projeto.
- Inicie o emulador do Datastore, que fornece a emulação local do ambiente de produção do Datastore.
- Gere definições de índice a partir das consultas do aplicativo ao emulador.
- Faça upload manual de definições de índice criadas ou geradas na instância do banco de dados da produção.
- 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:
Defina variáveis de ambiente para que o aplicativo saiba que está usando o emulador.
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.
Faça upload dos índices gerados com o comando
indexes create
, passando o caminho para seu arquivo localindex.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 arquivoindex.yaml
.Remova as variáveis de ambiente para que o aplicativo saiba que está usando a instância do banco de dados de produção.
Execute o aplicativo na instância do banco de dados de produção.
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 comandoindexes 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 arquivoindex.yaml
.
A seguir
- Saiba mais sobre o emulador.
- Veja detalhes sobre a configuração de índice.