2017-03-27 2 views
0

Je suis nouveau à la création de rpm. Je dois trouver un moyen d'installer/désinstaller/mettre à jour un plugin dans jenkins en utilisant rpm. Je peux installer le plugin en utilisant rpm, mais lors de la désinstallation, comment puis-je supprimer un nouveau fichier/répertoire qui ne faisait pas partie du paquet. Supposons que mon paquet ne déploie que le fichier xyz.jpi sur un serveur qui, au redémarrage du serveur, crée le dossier xyz.jpi et xyz. Lors de la désinstallation, je souhaite supprimer les deux dossiers créés.Comment faire pour supprimer le répertoire nouvellement créé ne fait pas partie du paquet rpm

+2

Installation 'de rpm' (un) ne doit pas supprimer le fichier n'appartenant pas au package. Dans votre cas, le dossier 'xyz' devrait appartenir à ce' rpm'. – iamauser

+1

Seuls les répertoires et fichiers qui sont empaquetés dans rpm/créés par lui ne sont susceptibles d'être supprimés que lors de la désinstallation. Reste soit vous supprimez manuellement ou écrire un script de désinstallation qui permet de suivre tous les autres chemins qui doivent être supprimés. –

Répondre

0

vous pouvez utiliser la directive %ghost dans la section %files; ce qui signifie que "ce fichier/dossier n'existe pas encore, mais quand il apparaîtra, ce sera le mien".

%files 
%ghost %dir /path/to/unexisting/xyz 

S'il y a des fichiers présents dans ce répertoire; Je ne suis pas sûr que rpm les enlèvera. Dans ce cas, il pourrait être nécessaire d'ajouter une autre ligne (à tester!)

%ghost /path/to/unexisting/xyz/* 

plus d'informations dans le documentation