¿Puedo crear un paquete rpm que posea un archivo que no instala?

¿Puedo crear un paquete rpm que posea un archivo que no instala?

Tengo una situación en la que necesito crear un archivo de configuración lleno de valores predeterminados en el inicio inicial de mi aplicación. Este no es un archivo de configuración típico en el que nos preocupamos mucho por las modificaciones realizadas por los usuarios. Durante la actualización, simplemente quiero eliminar el archivo de configuración para que el nuevo código se inicie y vuelva a crear automáticamente el archivo de configuración con los valores predeterminados (no es mi decisión, solo sigo las órdenes de mala gana).

¿Hay alguna manera de crear un paquete rpm que posea un archivo que no instala de modo que durante la desinstalación elimine este archivo?

Sé que siempre puedo agregar un scriptlet previo a la eliminación que elimine el archivo. Me preguntaba si puedo hacer que rpm lo haga automáticamente.

Respuesta1

Puedes hacer esto usando la %ghostdirectiva:

%files
%ghost /path/to/future.file

desde eldocumentación:

La Directiva %fantasma

Como mencionamos en la sección denominada Lista de %files, si se especifica un archivo en la lista de %files, ese archivo se incluirá automáticamente en el paquete. Hay ocasiones en las que un archivo debería ser propiedad del paquete pero no estar instalado: los archivos de registro y los archivos de estado son buenos ejemplos de casos en los que es posible que desee que esto suceda.

Respuesta2

No, no es posible.

Por cierto: RPM es para entregar aplicaciones y bibliotecas. Para la gestión de la configuración, debe utilizar Ansible.

información relacionada