Este é o módulo responsável por capturar o dump do banco de dados remoto hospedado no heroku para a aplicação do backend do Parlametria.
Para que este módulo funcione é necessário que o serviço heroku-cli definido no docker-compose.override.yml
na raiz desse repositório tenha sido iniciado. Recomenda-se iniciar este serviço usando o repositório orquestrador leggo-geral.
Se ao levantar os serviços usando o leggo-geral o seguinte erro for encontrado:
ERROR: Volume backup_data declared as external, but could not be found. Please create the volume manually using `docker volume create --name=backup_data` and try again.
Então execute em um terminal local: docker volume create --name=backup_data
- Crie um arquivo .env no mesmo diretório deste README.
- Copia o conteúdo do .env.sample para este novo arquivo .env
- Preencha HEROKU_APP_NAME com o nome do app no heroku ao qual o banco de dados está associado. Entre em contato em caso de dúvidas.
- Preencha HEROKU_API_KEY com a sua chave da API para acesso ao heroku via linha de comando. Mais informações sobre como obter essa chave abaixo.
Existem duas formas de obter sua HEROKU_API_KEY:
Via Dashboard do Heroku
- Visite e faça o login em https://dashboard.heroku.com
- Acessa sua conta em https://dashboard.heroku.com/account
- Na seção API KEY obtenha sua chave de acesso a API. Essa é a chave que deve ser preenchida na variável HEROKU_API_KEY do .env.
Via heroku-cli
- Ceritifique-se que os serviços do leggo-backend foram iniciados. Seja via docker-compose na raiz desse repositório ou usando o leggo-geral (ex: através do comando python3.x compose/run painel up).
- Da raiz desse repositório execute:
make get-heroku-api-key
- Preencha com seu login e senha no heroku. É importante que você tenha acesso/permissão ao app no Heroku. Caso você não tenha entre em contato.
- Copie o código mostrado e preencha a a variável HEROKU_API_KEY no .env com ele.
- Pare e reinicie os serviços do leggo-backend, conforme feito no passo 1, para que a mudança no .env seja aplicada.
Após configurar a variável HEROKU_API_KEY não será preciso repetir esse processo novamente. A menos que a KEY tenha expirado (após 1 ano da sua criação). Nunca faça commit da sua chave particular no repositório!
Certifique-se que as variáveis de ambiente foram configuradas corretamente seguindo as seções anteriores. Para isto execute o comando (na raiz desse repositório):
make download-remote-db-heroku
Com as variáveis de ambiente configuradas corretamente e após a execução do passo anterior de download, é possível realizar a importação do dump baixado para o banco de dados local. Cuidado! Nesta etapa as informações de seu banco local serão sobrescritas e qualquer coisa que não esteja no banco remoto do heroku será perdida. Execute o comando (na raiz desse repositório):
make import-dump-to-db
Se preferir, existe um comando que realiza o download e o import de uma única vez. Certifique-se que as variáveis de ambiente foram configuradas corretamente seguindo as seções anteriores. Execute o comando (na raiz desse repositório):
Certifique-se que
make sync-db-with-heroku