Eu trabalho em um software de servidor que é direcionado para o RHEL / CentOS e atualmente é distribuído por meio de um arquivo RPM padrão. O que me traz aqui é que inclui um mecanismo de cliente para download que os usuários podem acessar passando pela interface principal da Web.
Então é isso que eu tenho:
Aparentemente (4) não é desejável, então o que queremos é manter todas as versões de agentes que foram instaladas, mesmo com o upgrade do componente do servidor.
Uma solução possível que pode funcionar é colocar o agente em seu próprio RPM que tenha o número da versão do agente no nome e que o RPM principal exija como dependência. Então, quando o produto estiver instalado, o rpm -qa mostrará:
<product>-1.0.0
<product>-agent-install-1.0.5-1.0 (might be a better way to format the name)
E quando o servidor for atualizado, você verá:
<product>-2.0.0
<product>-agent-install-1.0.5-1.0
<product>-agent-install-1.2.0-1.0
Como não sou um especialista em Linux, gostaria de saber se a estratégia que descrevi acima é ...
Existe uma maneira mais limpa que você faria em vez disso? Por exemplo, eu poderia ter cada instalação do servidor, basta copiar o instalador do agente em um diretório separado e, como o outro diretório não é gerenciado pelo RPM, ele ficará por perto e não será excluído. Mas isso seria melhor?
Tags software-installation rpm rhel