Need apt-pinning to ensure Cisco OS packages get installed
Bug #1124275 reported by
Mark T. Voelker
This bug affects 2 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Cisco Openstack |
Fix Released
|
Undecided
|
Unassigned | ||
Folsom |
Fix Released
|
High
|
Mark T. Voelker |
Bug Description
We've been running into some issues of late in which if a Cisco package repo is unreachable for some reason (usually a proxy problem), the Ubuntu packages for OpenStack components get installed rather than the Cisco ones. To prevent that, Daneyon has suggested that we add apt-pinning to our Puppetry, ala:
apt::pin {'cisco': priority => '990', originator => 'LP-PPA-
To post a comment you must log in.
I think a more correct incantation is probably something like:
apt::pin { "cisco":
priority => '990',
#release => 'folsom',
originator => 'Cisco'
}
Which results in:
root:/etc/ puppet/ manifests# cat /etc/apt/ preferences. d/cisco. pref puppet/ manifests#
# cisco
Package: *
Pin: release o=Cisco
Pin-Priority: 990
root:/etc/
Note that "originator" and "release" are essentially mutually exclusive (it's an if/elseif loop in the Puppet apt module, and "release" is higher up). The name supplied to the "originator" argument is supposed to match the "Origin:" line in the repository in question's Release file (e.g. ftp://ftpeng. cisco.com/ openstack/ cisco/dists/ folsom/ Release), hence "Cisco".
I ran an "apt-get update;apt-cache showpkg python-nova" by way of testing this, and verified that it did indeed prefer the Cisco version of the package rather than the Ubuntu.