Instalação do zypper local repo vs rpm

0

Ter um pipeline de construção que esteja reconstruindo alguns pacotes do CentOS a partir do src para torná-los compatíveis com o SUSE. Enquanto trabalhava nisso, notei uma estranheza e queria ver se alguém pode explicar o que está acontecendo.

O pipeline começa com a construção dos pacotes A e A-devel. A próxima etapa do pipeline precisa que esses dois pacotes sejam instalados para criar os pacotes B e B-devel. Estamos usando um contêiner para construir os pacotes. Para instalar o A e o A-devel, eu originalmente tinha 2 etapas:

zypper install A-dependency A-other-dependency rpm -i /rpmbuild/output/dir/A.rpm /rpmbuild/output/dir/A-devel.rpm

Esperava tornar isso mais fácil montando /rpmbuild/output/dir como um repositório local do zypper e depois ter zypper cuidando da resolução de dependência:

zypper addrepo --gpgcheck-allow-unsigned /rpmbuild/output/dir local zypper install A A-devel

Isso funciona para instalar os pacotes , mas faz com que a versão do B e do B-devel comece a falhar.

A diferença entre os 2 foi pequena, mas fazendo com que B e B-devel falissem:

  1. a instalação do zypper estava colocando o arquivo pkgconfig para o A-devel em /usr/lib/pkgconfig/a.pc
  2. a instalação do rpm estava colocando o arquivo pkgconfig para o A-devel em /usr/lib64/pkgconfig/a.pc

Alguma idéia de por que as duas implementações alteram o terminal desse arquivo e como posso consertar a implementação do zypper para que funcione?

Obrigado!

    
por oldNoakes 12.06.2018 / 06:35

0 respostas