5. Manual do Ambiente - gentil-eilison/Ankit-Backend GitHub Wiki

5. Manual do Ambiente

Inicializando o ambiente

Configuração Inicial

  • Ao baixar a aplicação, será necessário rodar os comandos:
$ python manage.py migrate`
$ python manage.py load_nationalities`
$ python manage.py load_languages`
$ python manage.py load_superuser`

Esses comandos, respectivamente, aplicam as migrações no banco de dados; carregam dados sobre nacionalidades, idiomas e cria um superusuário padrão para o administrador. A senha e e-mail dele podem ser encontrados no arquivo load_superuser.py. Também será necessário criar um arquivo .env utilizando o arquivo .env-EXAMPLE como exemplo.

  • Para criar um novo superusuário, basta utilizar este comando:

    $ python manage.py createsuperuser
    

Celery

Esta aplicação utiliza o celery como um distributed task queue, além de conter também tarefas periodicas pré-configuradas e também aquelas que serão configuradas pelo administrador para realização do backup do banco de dados. Dessa forma, é necessário rodar tanto o celery worker, quanto o celery_beat.

Rodando o projeto

Para rodar o projeto localmente sem utilizar o Docker, utilize estes comandos:

$ python manage.py runserver
$ celery -A config.celery_app worker --loglevel=INFO
$ celery -A config.celery_app beat --loglevel=INFO

Pronto!

Para rodar com o Docker, crie, na pasta raíz do projeto, uma pasta .envs e, dentro dela, uma pasta .local. Dentro da última pasta, você irá criar dois arquivos: (1) É o arquivo .django, no qual você irá inserir as variáveis de ambiente do contêiner do Django; (2) O arquivo .postgres, onde as as variáveis de configuração do banco estarão. Após isso, rode:

docker compose -f local.yml build
docker compose -f local.yml up

Pronto!

Ferramentas para o Administrador do Sistema

O administrador do sistema possui ao seu dispor a interface administrativa do Django para realizar tarefas de administração, como inspecionar logs das atividades da aplicação e configurar backups do banco de dados. Essas duas tarefas estão descritas com mais detalhes na próxima seção.

Configurando o Ambiente do Frontend

Quando o usuário baixar a aplicação e abrir o projeto em algum editor de código, basta abrir um terminal na pasta da aplicação e executar o seguinte comando:

npm install

Ele irá instalar todas as dependências do projeto e salvá-las na pasta node_modules. Depois disso, se o usuário estiver rodando o backend do Ankit localmente e quiser usá-lo para testes, por exemplo, basta ir no arquivo das variavéis de ambiente, .env, e apontar as variáveis de ambiente para seus correspondentes no backend local:

  • NEXT_PUBLIC_ANKIT_API_URL, que aponta para a URL da API do Ankit;

  • NEXT_PUBLIC_CSV_FILE_DOWNLOAD_BASE_URL, que diz respeito a URL base do Ankit;

  • NEXT_PUBLIC_GOOGLE_LOGIN_URL, que refere-se à URL a qual o usuário será redirecionado para escolher a conta Google com a qual deseja logar/criar sua conta;

  • NEXT_PUBLIC_GOOGLE_LINK_URL, que aponta para a URL que faz uma ligação da conta Ankit do usuário com uma conta Google de mesmo endereço de email.

Após isso, é só iniciar a aplicação com o comando npm run dev. Caso ele queira testar somente a aplicação frontend, isto é, usando o backend que está em produção, não será necessário configurar as variáveis de ambiente: ele só precisará iniciar a aplicação depois da instalação dos módulos.