Switch to using unattended-upgrades for apt-maintenance.
This commit is contained in:
parent
5703b44e75
commit
18188cb971
91
ubuntu/roles/apt-maintenance/files/50unattended-upgrades
Normal file
91
ubuntu/roles/apt-maintenance/files/50unattended-upgrades
Normal file
@ -0,0 +1,91 @@
|
||||
// Automatically upgrade packages from these (origin:archive) pairs
|
||||
//
|
||||
// Note that in Ubuntu security updates may pull in new dependencies
|
||||
// from non-security sources (e.g. chromium). By allowing the release
|
||||
// pocket these get automatically pulled in.
|
||||
Unattended-Upgrade::Allowed-Origins {
|
||||
"${distro_id}:${distro_codename}";
|
||||
"${distro_id}:${distro_codename}-security";
|
||||
// Extended Security Maintenance; doesn't necessarily exist for
|
||||
// every release and this system may not have it installed, but if
|
||||
// available, the policy for updates is such that unattended-upgrades
|
||||
// should also install from here by default.
|
||||
"${distro_id}ESM:${distro_codename}";
|
||||
// "${distro_id}:${distro_codename}-updates";
|
||||
// "${distro_id}:${distro_codename}-proposed";
|
||||
// "${distro_id}:${distro_codename}-backports";
|
||||
};
|
||||
|
||||
// List of packages to not update (regexp are supported)
|
||||
Unattended-Upgrade::Package-Blacklist {
|
||||
// "vim";
|
||||
// "libc6";
|
||||
// "libc6-dev";
|
||||
// "libc6-i686";
|
||||
};
|
||||
|
||||
// This option will controls whether the development release of Ubuntu will be
|
||||
// upgraded automatically.
|
||||
Unattended-Upgrade::DevRelease "false";
|
||||
|
||||
// This option allows you to control if on a unclean dpkg exit
|
||||
// unattended-upgrades will automatically run
|
||||
// dpkg --force-confold --configure -a
|
||||
// The default is true, to ensure updates keep getting installed
|
||||
//Unattended-Upgrade::AutoFixInterruptedDpkg "false";
|
||||
|
||||
// Split the upgrade into the smallest possible chunks so that
|
||||
// they can be interrupted with SIGTERM. This makes the upgrade
|
||||
// a bit slower but it has the benefit that shutdown while a upgrade
|
||||
// is running is possible (with a small delay)
|
||||
//Unattended-Upgrade::MinimalSteps "false";
|
||||
|
||||
// Install all unattended-upgrades when the machine is shutting down
|
||||
// instead of doing it in the background while the machine is running
|
||||
// This will (obviously) make shutdown slower
|
||||
//Unattended-Upgrade::InstallOnShutdown "true";
|
||||
|
||||
// Send email to this address for problems or packages upgrades
|
||||
// If empty or unset then no email is sent, make sure that you
|
||||
// have a working mail setup on your system. A package that provides
|
||||
// 'mailx' must be installed. E.g. "user@example.com"
|
||||
Unattended-Upgrade::Mail "s+cron@sadiqs.com";
|
||||
|
||||
// Set this value to "true" to get emails only on errors. Default
|
||||
// is to always send a mail if Unattended-Upgrade::Mail is set
|
||||
//Unattended-Upgrade::MailOnlyOnError "true";
|
||||
|
||||
// Remove unused automatically installed kernel-related packages
|
||||
// (kernel images, kernel headers and kernel version locked tools).
|
||||
//Unattended-Upgrade::Remove-Unused-Kernel-Packages "false";
|
||||
|
||||
// Do automatic removal of new unused dependencies after the upgrade
|
||||
// (equivalent to apt-get autoremove)
|
||||
//Unattended-Upgrade::Remove-Unused-Dependencies "false";
|
||||
|
||||
// Automatically reboot *WITHOUT CONFIRMATION*
|
||||
// if the file /var/run/reboot-required is found after the upgrade
|
||||
//Unattended-Upgrade::Automatic-Reboot "false";
|
||||
|
||||
// If automatic reboot is enabled and needed, reboot at the specific
|
||||
// time instead of immediately
|
||||
// Default: "now"
|
||||
//Unattended-Upgrade::Automatic-Reboot-Time "02:00";
|
||||
|
||||
// Use apt bandwidth limit feature, this example limits the download
|
||||
// speed to 70kb/sec
|
||||
//Acquire::http::Dl-Limit "70";
|
||||
|
||||
// Enable logging to syslog. Default is False
|
||||
// Unattended-Upgrade::SyslogEnable "false";
|
||||
|
||||
// Specify syslog facility. Default is daemon
|
||||
// Unattended-Upgrade::SyslogFacility "daemon";
|
||||
|
||||
// Download and install upgrades only on AC power
|
||||
// (i.e. skip or gracefully stop updates on battery)
|
||||
// Unattended-Upgrade::OnlyOnACPower "true";
|
||||
|
||||
// Download and install upgrades only on non-metered connection
|
||||
// (i.e. skip or gracefully stop updates on a metered connection)
|
||||
// Unattended-Upgrade::Skip-Updates-On-Metered-Connections "true";
|
@ -1,31 +1,21 @@
|
||||
---
|
||||
# This task adds a daily cron job to do apt related maintenance
|
||||
# Update repos, update packages, autoremove packages
|
||||
# This task sets up unattended-upgrade's config
|
||||
|
||||
- name: Ensure /root/scripts exists
|
||||
file:
|
||||
path: /root/scripts
|
||||
state: directory
|
||||
- name: Install unattended-upgrade and apt-listchanges
|
||||
apt: name={{ packages }} state=latest update_cache=yes
|
||||
vars:
|
||||
packages:
|
||||
- unattended-upgrades
|
||||
- apt-listchanges
|
||||
|
||||
- name: Copy cron script
|
||||
- name: Copy our 50unattended-upgrades
|
||||
copy:
|
||||
src: apt-maintenance.sh
|
||||
dest: /root/scripts/apt-maintenance.sh
|
||||
owner: root
|
||||
group: root
|
||||
mode: 0755
|
||||
backup: no
|
||||
src: 50unattended-upgrades
|
||||
dest: /etc/apt/apt.conf.d/50unattended-upgrades
|
||||
|
||||
- name: Add MAILTO cron variable
|
||||
cron:
|
||||
name: MAILTO
|
||||
env: yes
|
||||
job: s+cron@sadiqs.com
|
||||
|
||||
- name: Disable apt-maintenance cronjob
|
||||
cron:
|
||||
name: apt-maintenance
|
||||
special_time: daily
|
||||
job: /root/scripts/apt-maintenance.sh
|
||||
backup: yes
|
||||
state: absent
|
||||
- name: Ensure 20auto-upgrades has the correct values using debconf
|
||||
debconf:
|
||||
name: unattended-upgrades
|
||||
question: unattended-upgrades/enable_auto_updates
|
||||
vtype: boolean
|
||||
value: true
|
||||
|
Loading…
Reference in New Issue
Block a user