From 2fba581c4574e8dfaa08b809b5e33d8949d35567 Mon Sep 17 00:00:00 2001 From: Andrew Schoen Date: Tue, 7 Apr 2015 09:54:34 -0500 Subject: [PATCH] Upload weekly kernel-clean crontab for ubuntu. Signed-off-by: Andrew Schoen --- roles/testnode/handlers/main.yml | 5 +++++ roles/testnode/tasks/setup-ubuntu.yml | 12 ++++++++++ roles/testnode/templates/cron/kernel-clean | 26 ++++++++++++++++++++++ 3 files changed, 43 insertions(+) create mode 100644 roles/testnode/templates/cron/kernel-clean diff --git a/roles/testnode/handlers/main.yml b/roles/testnode/handlers/main.yml index 1075b748..cafa845b 100644 --- a/roles/testnode/handlers/main.yml +++ b/roles/testnode/handlers/main.yml @@ -13,3 +13,8 @@ service: name: "{{ nfs_service }}" state: started + +- name: restart cron + service: + name: cron + state: restarted diff --git a/roles/testnode/tasks/setup-ubuntu.yml b/roles/testnode/tasks/setup-ubuntu.yml index f40ab614..64204e01 100644 --- a/roles/testnode/tasks/setup-ubuntu.yml +++ b/roles/testnode/tasks/setup-ubuntu.yml @@ -3,3 +3,15 @@ file: path: /etc/ceph state: absent + +- name: Upload weekly kernel-clean crontab. + template: + src: cron/kernel-clean + dest: /etc/cron.weekly/kernel-clean + owner: root + group: root + mode: 0755 + notify: + - restart cron + tags: + - new diff --git a/roles/testnode/templates/cron/kernel-clean b/roles/testnode/templates/cron/kernel-clean new file mode 100644 index 00000000..80b97b2a --- /dev/null +++ b/roles/testnode/templates/cron/kernel-clean @@ -0,0 +1,26 @@ +#!/bin/bash +# {{ ansible_managed }} + +#Environment variable for +PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin + +#Don't run any post remove scripts. Doing it for each kernel +#Takes too long. We dont normally remove kernels other than +#via this script which will manually do update-grub at the end. + +rm -f /etc/kernel/postrm.d/* 2> /dev/null + +current=`uname -r` +kernellist="" +for kernel in `dpkg -l | grep linux-image | grep -i -e '^ii ' | grep ceph | grep -v "$current" | awk '{print $2}'` +do + kernellist="$kernel $kernellist" +done + +apt-get -y remove $kernellist + +#Manually update grub since we disabled dpkg from doing it. +update-grub + +#Clean apt-cache +apt-get clean -- 2.47.3