Nous avons un dépôt Yum personnalisé sur lequel nos développeurs téléchargent des builds.
Le problème est qu'après un certain temps, il devient encombré d'anciennes versions.
Supprimer les anciennes versions manuellement est assez ennuyeux, donc avant d'essayer de l'automatiser nous-mêmes, je me demande s'il existe un script qui nettoierait les anciens RPM en fonction de la version (préférée) ou de l'heure de téléchargement.
Le mieux serait de pouvoir spécifier de sauvegarder simplement les dernières versions de X et d'effacer tout le reste. Ensuite, nous pourrions le cron et le laisser fonctionner quotidiennement.
Merci pour toute idée.
yum
repository
SyRenity
la source
la source
Réponses:
La manière "simple" consiste à simplement vider tout dans un répertoire et à exécuter:
... la manière la plus compliquée est de configurer koji / etc. pour faire vos builds et créer les repos.
la source
xargs
place, sinon vous pourriez en avoirrm: missing operand
(s'il n'y a pas d'anciens RPM à supprimer). Donc:repomanage --keep=2 --old /path/to/repo | xargs rm -f
rm $(repomanage --keep=2 --old /path/to/repo)
pourrait facilement dépasser la longueur de commande maximale.xargs
s'occupera d'une énorme liste d'arguments. Voir: offbytwo.com/2011/06/26/things-you-didnt-know-about-xargs.htmlDécouvrez l'utilitaire "repomanage" du RPM yum-utils. Il fait exactement ce que vous recherchez.
la source
Je tirerais parti du système de gestion des versions ou d'étiquetage que vous utilisez pour identifier les versions. Vous pouvez également identifier les packages par date avec un script exécuté sur le serveur hébergeant le référentiel.
la source
Si les téléchargements se produisent tous les jours, pourquoi ne pas envisager de supprimer les anciens fichiers qui sont plus anciens au-delà d'un certain nombre de jours (en termes de temps d'accès / de modification)? Trouvez-les et supprimez-les. Si vous pouviez demander à vos développeurs de télécharger des builds de telle sorte qu'ils mettent le nom du mois en cours dans le nom de fichier lors du téléchargement, il serait logique, à partir du nom de fichier directement, que le fichier ait été téléchargé pendant ce que l'on appelle le mois de l'année et il est logique de supprimer simplement par la base de la recherche du nom de fichier. Il serait facile pour votre automatisation de script d'envisager simplement de supprimer ces fichiers ou de simplement conserver les fichiers qui correspondent au mois précédent et au mois en cours. Juste une pensée.
la source