Tenho uma situação em que preciso criar um arquivo de configuração preenchido com valores padrão na inicialização do meu aplicativo. Este não é um arquivo de configuração típico onde nos preocupamos profundamente com quaisquer modificações feitas pelos usuários. Durante a atualização, quero simplesmente remover o arquivo de configuração para que o novo código seja inicializado e recrie automaticamente o arquivo de configuração com os padrões novamente (não é minha decisão - apenas seguindo os pedidos com relutância).
Existe uma maneira de construir um pacote rpm que possui um arquivo que não é instalado para que, durante a desinstalação, ele remova esse arquivo?
Eu sei que sempre posso adicionar um scriptlet de pré-remoção que remove o arquivo - eu só queria saber se posso fazer com que o rpm faça isso automaticamente para mim.
Responder1
Você pode fazer isso usando a %ghost
diretiva:
%files
%ghost /path/to/future.file
dedocumentação:
A diretiva %fantasma
Como mencionamos na seção chamada Lista %files, se um arquivo for especificado na lista %files, esse arquivo será automaticamente incluído no pacote. Há momentos em que um arquivo deveria pertencer ao pacote, mas não ser instalado - arquivos de log e arquivos de estado são bons exemplos de casos em que você pode desejar que isso aconteça.
Responder2
Não, não é possível.
Aliás: RPM serve para entregar aplicativos e biblioteca. Para gerenciamento de configuração, você deve usar Ansible.