Switch to the puppetlabs/apt module
Originally created by @intrigeri on #15510 (Redmine)
The shared apt module is deprecated and the shared Puppet modules group decided to switch to https://github.com/puppetlabs/puppetlabs-apt.
See https://gitlab.com/shared-puppet-modules-group/apt/blob/master/UPGRADING.md for migration info. Lots of features we use are missing so this is going to take time. Let’s try to make it happen by the end of 2019Q1.
This migration can be split into steps:
-
migrate away from functionality provided by the shared apt module but that’s not supported by puppetlabs/apt: either switch to already supported alternatives, or to “plugins”, or submit PRs to puppetlabs/apt-
listchangesdone -
doneapt::apticron
→APT::Periodic
+ monitoring check -
doneapt::reboot_required_notify
→ installreboot-notifier
ourselves apt::dpkg_statoverride
→ import it in puppet-tails
-
reach the point where the only functionality we use from the shared apt module is also supported either by puppetlabs/apt directly or by modules that depend on it- switch to puppetlabs/apt; changes that must happen in lockstep when
doing so:
apt::apt_conf
→apt::conf
apt::custom_key_dir
→apt
class’keys
parameter but implementation looks scary (do the red flags apply to us?); worst case, follow https://wiki.debian.org/DebianRepository/UseThirdParty and drop the non-ascii-armorded key in/usr/share/keyrings/example-archive-keyring.gpg
+ point to it fromsources.list
- -
apt::cron
→ https://github.com/voxpupuli/puppet-unattended_upgrades- apt::package
→package
+apt::pin
apt::preferences_snippet
→apt::pin
apt::proxy*
→apt
class’proxy
parameterapt::sources_list
,apt::repos
,apt::use_next_release
,apt::use_volatile
,tails::apt::repository::*
→ puppetlabs/apt provides several was to managesources.list
To list the apt::
things we use:
git grep -h --only-matching --color=never \
--recurse-submodules -E '\bapt::[^ ]+\b' -- \
hieradata/ manifests/ modules/reprepro/ modules/tails* \
2>/dev/null \
| sort -u
Feature Branch: puppet-lizard-manifests:feature15510, puppet-tails:feature15510
Parent Task: #15500 (closed)