Puppet/packaging
Сравнение с пакетами от upstream
Для puppet 3.x (и меньше) апстрим тоже делал rpm-ки, аналогичные тем, что в ALT Sisyphus:
- пакет puppet, который позволяет выполнять на подчинённых нодах puppet-агент (последний: puppet-3.8.7-1.el7.noarch.rpm из https://yum.puppetlabs.com/el/7/products/x86_64/ );
- пакет puppet-server, который позволяет запускать puppet-мастер (последний: puppet-server-3.8.7-1.el7.noarch.rpm из https://yum.puppetlabs.com/el/7/products/x86_64/ ).
Для puppet 4.x апстрим делает распухшие rpm-ки, в которые забандлены зависимости (и всё лежит в /opt/ и в /etc/puppetlabs/ вместо /etc/, например, /etc/puppetlabs/puppet/):
- пакет puppet-agent (вместо puppet); например, puppet-agent-1.8.3 из https://yum.puppetlabs.com/el/7/PC1/x86_64/ включает (см. таблицу соответствий версий) в себя традиционный puppet-4.8.2;
- пакет puppetserver (улучшенный вариант вместо puppet-server); например, Puppet Server 2.3 устаналивает Puppet Agent 1.4.0, который включает puppet 4.4.
Нетрадиционные распухшие rpm-ки (как апстримные для 4.x), конечно, не годятся как дистрибутивные для Sisyphus.
Сравнение содержимого: разницы нет
Если учесть, что в апстримном puppet-agent всё содержимое сложено в в /opt/ и в /etc/puppetlabs/ вместо /etc/, есть ли разница в содержимом пакета в ALT Sisyphus и предлагаемой апстримом rpm-ки?
Видимо, нет. Например, сравним один из файлов:
[imz@basalt IN]$ rpmpeek puppet-agent-1.8.3-1.el7.x86_64.rpm cat ./etc/puppetlabs/puppet/auth.conf >auth_puppetlabs.conf [imz@basalt IN]$ rpmpeek /ALT/Sisyphus/noarch/RPMS.classic/puppet-4.8.2-alt1.noarch.rpm cat ./etc/puppet/auth.conf >auth_ALT.conf [imz@basalt IN]$ diff -du auth_puppetlabs.conf auth_ALT.conf [imz@basalt IN]$
Упаковка непоследней версии puppet
Для тех, кто не готов переезжать на последнюю версию, удобно иметь пакет в ALT Sisyphus и с непоследней версией puppet. Встаёт вопрос: с какой?
- Вот здесь upstream описывает особенности переезда: Puppet 3.x to 4.x: Get upgrade-ready.
В общем, они выделяют именно Puppet 3 (как нечто общее, а не отдельные случаи 3.x), и нам из непоследних версий стоит паковать просто одну -- последнюю из 3.x (т.е. 3.8.7); и назвать пакет puppet3. https://puppet.com/download-open-source-puppet/thank-you :
Upgrading?
If you're upgrading from Puppet 3, follow our instructions to plan your upgrade, and remember to update your Puppet code.