Hey there, in case someone is interested.. We have a lot of packages which are version critical like Postgres or Erlang, and package upgrades/security fixes with apt-get upgrade/dist-upgrade would lead to service restarts or incompatibilites to other parts in case a never version is available, what needs to be avoided in production.. On debian based systems this can be circumvented by doing a echo 'packagename hold' | dpkg --set-selections which will set a package on hold and exclude it from upgrading when doing a apt-get upgrade/dist-upgrade e.g. :~ # echo 'esl-erlang hold' | dpkg --set-selections :~ # dpkg --get-selections |grep esl-erlang esl-erlang hold :~ # apt-cache policy esl-erlang esl-erlang: Installed: 1:15.b.2-1~debian~squeeze Candidate: 1:15.b.3-1~debian~squeeze Version table: 1:15.b.3-1~debian~squeeze 0 500 http://binaries.erlang-solutions.com/debian/ squeeze/contrib amd64 Packages *** 1:15.b.2-1~debian~squeeze 0 500 http://binaries.erlang-solutions.com/debian/ squeeze/contrib amd64 Packages 100 /var/lib/dpkg/status 1:15.b.1-1~debian~squeeze 0 500 http://binaries.erlang-solutions.com/debian/ squeeze/contrib amd64 Packages :~ # apt-get dist-upgrade Reading package lists... Done Building dependency tree Reading state information... Done Calculating upgrade... Done The following packages have been kept back: esl-erlang The following packages will be upgraded: base-files debian-archive-keyring dpkg dpkg-dev libc-bin libc-dev-bin libc6 libc6-dev libdpkg-perl libexpat1 linux-libc-dev locales 12 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. Need to get 17.6 MB of archives. After this operation, 20.5 kB of additional disk space will be used. Do you want to continue [Y/n]? qed.. Because it seam's like I am the only one on earth which needs such a feature (because it's not already chef and no one cares..), I wrote a resource 'apt_package_hold' [1] to do this with chef, like apt_package_hold "esl-erlang" do version node[:erlang][:version] action [:install, :hold] end Of course that only works for debian based systems, don't know if there is a similar mechanism on other platforms. Greets Holger Amann Sauspiel GmbH, Berlin [1] https://github.com/sauspiel/chef_cookbooks/blob/master/apt/libraries/apt_package_hold.rb |
Archive powered by MHonArc 2.6.16.