A CLI Firebase é uma ferramenta que permite gerenciar e configurar o Firebase produtos e serviços na linha de comando.
A CLI fornece comandos que podem ser usados para executar Data Connect tarefas, como criar uma nova Data Connect inicial, inicializando um diretório local de trabalho correspondente, configurando Emulador Data Connect, listando recursos de Data Connect, gerar SDKs clientes e muito mais.
Configurar comandos
Adicionar Data Connect a um projeto do Firebase
firebase init
Use firebase init
para definir uma nova configuração de projeto local. Esse fluxo de trabalho
cria ou atualiza arquivos de configuração do Firebase no
diretório.
firebase init
O fluxo firebase init
orienta você na configuração de um serviço e de um banco de dados.
e, opcionalmente, a instalação do emulador Data Connect e
a configuração dos SDKs gerados.
Configuração do serviço e do banco de dados
Se você selecionar dataconnect
para a configuração do produto, a CLI vai solicitar um novo nome e local do serviço e se você quer vincular e criar uma instância do Cloud SQL para PostgreSQL ou criar uma nova.
Se uma instância atual estiver vinculada, a CLI vai verificar se há configurações compatíveis, como autenticação do IAM e endereços IP públicos.
Configuração do Local Emulator Suite
O fluxo da CLI oferece a configuração de emuladores, incluindo o emulador Data Connect.
Comandos do emulador Data Connect
Iniciar o emulador Data Connect
emulators:start/exec
firebase emulators:start/exec
Usar a versão Local Emulator Suite do emulador Data Connect
no modo interativo com start
ou no modo não interativo baseado em script com
exec
.
Comandos de gerenciamento de esquemas e conectores
Esta seção contém informações de referência da CLI para comandos usados para gerenciar esquemas e conectores.
Para saber como usar casos e práticas recomendadas relacionadas a esses comandos, consulte o guia de gerenciamento de esquemas e conectores.
Implantar recursos de esquema e conector
deploy
firebase deploy
Esse comando implanta recursos para serviços do Data Connect indexados em firebase.json. Uma migração de esquema será realizada, se necessário.
Comando | Descrição | |
---|---|---|
implantação do Firebase |
Flag | Descrição |
–-only dataconnect |
Implante esquemas e conectores para todos os serviços do Data Connect para isso. projeto, mas não implante outros recursos de produto do Firebase. | |
–-only dataconnect:serviceId |
Implante o esquema e os conectores para o serviço especificado do Data Connect. | |
–-only dataconnect:serviceId:connectorId |
Implante um único conector para o serviço especificado do Data Connect. | |
–-only dataconnect:serviceId:schema |
Implante o esquema para o serviço especificado do Data Connect. |
Com as flags –-only
, é possível transmitir valores separados por vírgulas para implantar qualquer
subconjunto de recursos.
firebase deploy --only dataconnect:service1:schema,dataconnect:service2
Listar serviços, esquemas e conectores do Data Connect
dataconnect:services:list
firebase dataconnect:services:list
Esse comando mostra informações básicas sobre os serviços, esquemas e conectores implantados em um projeto.
Comparar e migrar esquemas SQL
dataconnect:sql:diff
firebase dataconnect:sql:diff
Esse comando compara o esquema local de um serviço com o esquema atual do no banco de dados correspondente do Cloud SQL. Ele imprime os comandos que seriam executados para migrar o banco de dados para o novo esquema.
Comando | Descrição | |
---|---|---|
firebase dataconnect:sql:diff |
Flag/Parâmetro | Descrição |
serviceId |
Especifique o serviço. Se omitido, mostrar o diff para todos os serviços no firebase.json. |
dataconnect:sql:migrate
firebase dataconnect:sql:migrate
Esse comando aplica mudanças de esquema local ao banco de dados do Cloud SQL de um serviço.
Quando você configura um novo projeto Data Connect local com o arquivo
dataconnect.yaml
padrão, o comportamento do comando dataconect:sql:migrate
é solicitar as mudanças necessárias e, em seguida, as opcionais
antes de executar as mudanças. Você pode modificar esse comportamento para sempre
inclua ou ignore mudanças opcionais atualizando a dataconnect.yaml
conforme discutido em Migrar um esquema no modo restrito ou compatível
Em ambientes interativos, a CLI exibe cada instrução SQL de migração
(e se é destrutivo) e solicita as alterações que você deseja aplicar.
Transmitir a flag --force
é equivalente a aceitar todas as solicitações.
Em ambientes não interativos:
- sem
--force
, apenas alterações não destrutivas são feitas. Se houver alterações destrutivas, a CLI cancela sem nenhuma alteração. - com
--force
, todas as mudanças serão feitas. Se isso inclui qualquer ação alterações, elas serão impressas e você será perguntado se deseja continuar, a menos que a sinalização--force
seja fornecida.
Comando | Descrição | |
---|---|---|
firebase dataconnect:sql:migrate |
Flag | Descrição |
serviceId |
Migre o banco de dados para o serviço especificado. O serviceId é inferido se o projeto tiver apenas um serviço. | |
–-força |
Aceite solicitações automaticamente. |
Assim como com outras flags --only
, é possível fornecer vários serviços separados por
vírgulas.
Migrar um esquema no modo restrito ou compatível
Data Connect migrações de esquema têm duas validações de esquema diferentes. restrito e compatível. A validação no modo estrito exige que o esquema de banco de dados corresponder exatamente ao esquema do aplicativo um esquema de código-fonte pode ser implantado. A validação do modo compatível exige que o esquema do banco de dados seja compatível com o esquema do aplicativo. Isso significa que os elementos no banco de dados que não são usados pelo esquema do aplicativo não são modificados.
Esses modos de validação de esquema e as práticas recomendadas para migração de esquema são abordados no guia de gerenciamento de esquemas e conectores.
O modo de validação é definido usando a chave schemaValidation
no
arquivo dataconnect.yaml
. Se schemaValidation
não for especificado, a CLI vai aplicar
mudanças compatíveis e solicitar que você as execute antes de fazer mudanças rígidas. Consulte
a referência de configuração.
Comandos do SDK
Gerar SDKs
dataconnect:sdk:generate
firebase dataconnect:sdk:generate
Esse comando gera os SDKs tipados declarados em connector.yaml.
Consulte também os guias para trabalhar com os SDKs da Web, SDKs do Android e SDKs do iOS.
Comando | Descrição | |
---|---|---|
firebase dataconnect:sdk:generate |
Flag | Descrição |
--watch |
Mantém o processo em execução e gera novos SDKs sempre que você salva
alterações nos arquivos GQL do seu esquema e conector. Se a geração falhar, os erros serão impressos no stdout, o código gerado não será alterado e o comando continuará sendo executado. |
|
–-only ConnectorId:platform |
Gerar SDKs apenas para uma plataforma e um conector. |
Com as flags –only
, é possível transmitir valores separados por vírgulas.
firebase dataconnect:sdk:generate –-only connector1, connector1:kotlin
Comandos de gerenciamento do Cloud SQL
Conceder papéis do SQL para o Cloud SQL
dataconnect:sql:grant
firebase dataconnect:sql:grant
Este comando concede uma função de usuário do PostgreSQL para a conta de serviço ou usuário especificado:
- Leitor: pode ler as tabelas no esquema.
- Writer: pode ler e gravar em tabelas no esquema.
- Proprietário: pode realizar migrações e alterar o esquema. Isso não inclui para instalar extensões.
Comando | Descrição | |
---|---|---|
firebase dataconnect:sql:grant |
Flag/parâmetro | Descrição |
-R, --role role |
O papel SQL a ser concedido, que pode ser proprietário, gravador ou leitor. | |
-E, --email email_address |
E-mail de um usuário ou de uma conta de serviço para conceder o papel. |
Opções globais
As opções globais a seguir se aplicam a todos os comandos:
--json
alterna a saída da CLI para JSON para análise por outras ferramentas.--noninteractive
e--interactive
substituem, conforme necessário, as conversões automáticas detecção de ambientes não TTD.