Como gerar pacotes
Se há a necessidade de dar o pip install de algo nas vms devemos colocar o pacote e a versão no requirements.txt, atenção o nosso requirements.txt serve somente para o vscode encontrar os importes e para rodarmos os testes unitários. No servidor não utilizamos o pip install, optamos por utilizar o rpm
Em pkgs>core>itflex-core.spec temos todas as dependências que estão no requirements.txt
Quando utilizamos o Requires no código, na verdade estamos fazendo um yum install
Requires: python3-cachetools = 3.1.1-1
Requires: python3-dataclasses = 0.6-1
Requires: python3-flask = 1.0.2-1
Ao buscarmos os pacotes RPM para instalar e pode acontecer do pacote do python ja existir no ALMALINUX. Para descobrirmos se existe ou não vamos no repo do alma pesquisar em:
Outro repo que devemos pesquisar é o do EPEL
Utilizamos o fpm para buscar os pacotes no pip
Na prática para gerarmos um novo pacote precisaríamos criar uma nova pasta dentro de itflex>third_party>rpms>python36 definir o nome, a versão e mandar rodar
Toda a vez que alteramos o third_party o CI compila
Resumindo
Devemos verificar se o pacote existe nos repos do ALMALINUX e do epel, caso não exista devemos adiciona-lo no requirements no third_party e no spec.