Mój pierwszy post tutaj, ale szukałem go w Google i nie mogę znaleźć prostego sposobu na zrobienie tego.Jak programowo zainstalować najnowszą wersję rpm, bez znajomości jej numeru wersji?
Mam program, który automatycznie konfiguruje nowe serwery CentOS Linux, ponieważ pochodzą one w Internecie. W ramach tego procesu instaluje najnowszą wersję rpm epel-release.
Polecenie używam wygląda następująco:
$ rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-7.noarch.rpm && \
yum clean all
... To działa świetnie, dopóki nie zmieni plik rpm do EPEL-release-6-8.noarch, następnie EPEL uwalnianiu-6-9 .noarch i tak dalej. Wydają się aktualizować wersję co 3-4 miesiące. To jest problem, ponieważ jeśli repozytorium zaktualizuje numer wersji epel-release, moje skrypty się nie uda, ponieważ nie ma pojęcia, jaka powinna być ta wersja.
Nie udało mi się znaleźć linku, który mógłby przekierować do najnowszego pliku Epel rpm, więc nie mam innego wyjścia, jak zakodować wersję na stałe do moich skryptów instalacyjnych i zmienić ją, gdy zawiedzie.
Ktoś wie prosty (nie zakodowane) sposób, aby pobrać najnowszą EPEL rpm bez znajomości numeru wersji? Mam nadzieję na sposób, który nie wymaga dong curl na liście plików repo i przeglądanie adresu URL, ale ciekawy, co ktoś może zasugerować?
Dziękuję Ravello! –
Naprawdę, naprawdę fajnie - dziękuję! – paulsm4
To świetny pomysł! Zaadaptowałem go na "Ansible playbook", aby złamać zależności na kilku zakodowanych repozytoriach RPM do repozytorium: https://github.com/zigg/octothorpe/commit/c3b0cdf751a6818385925c7b358361e000076daf – zigg