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:

Repo do alma

Outro repo que devemos pesquisar é o do EPEL

Repo 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.