Qual é a maneira correta de forçar o RPM a apagar e instalar em vez de atualizar?

2

Eu tenho um RPM cujo software recentemente teve seu esquema de banco de dados completamente redesenhado. A versão atual (chamaremos de B.0) é incompatível com versões mais antigas do esquema do banco de dados.

Felizmente, ainda está na fase beta e, como não foi lançada oficialmente, gostaria de evitar escrever scripts de migração de banco de dados, a menos que (e até) seja realmente necessário fazê-lo.

Uma atualização falhará, porque a (nova) criação do esquema do banco de dados acontece em um scriptlet que nunca é executado durante uma atualização, o que coloca o aplicativo em um estado ruim. Se o A.x estiver instalado, quero que eles apaguem e reinstalem.

Encontrei a tag "Conflicts" do RPM, que parece fazer o trabalho, mas a mensagem de erro é equivocada "arquivo

por InfernalRapture 16.08.2017 / 22:46

1 resposta

2

Se o seu pacote não puder ser atualizado, você deve considerar renomear o pacote . Por exemplo, se a terceira versão do seu software foi reescrita, você pode acabar com foo3-3.0.0-1.x86_64 , o que é obsoleto foo < = 3.0.0.

Isso é apropriado somente quando um caminho de atualização não é tecnicamente possível.

link

Além disso, uma vez que você mencionou que é uma versão beta, convém consultar as diretrizes de versão para manter numericamente ordenável. (Você vai querer que a versão não beta substitua a versão beta.)

link

    
por 15.11.2017 / 02:04