summaryrefslogtreecommitdiff
path: root/roles/upgrade/tasks/main.yml
diff options
context:
space:
mode:
authorChristian Pointner <equinox@spreadspace.org>2018-04-21 23:28:35 +0200
committerChristian Pointner <equinox@spreadspace.org>2018-04-21 23:28:35 +0200
commit2e5b51cc24b6f6c91e7f969fe14e3adc2d4e80f2 (patch)
tree6cbb61b2f17061fee06306a3ec2e58e2fc3e87de /roles/upgrade/tasks/main.yml
parentupdated google apt key (diff)
rename all .yaml to .yml
Diffstat (limited to 'roles/upgrade/tasks/main.yml')
-rw-r--r--roles/upgrade/tasks/main.yml36
1 files changed, 36 insertions, 0 deletions
diff --git a/roles/upgrade/tasks/main.yml b/roles/upgrade/tasks/main.yml
new file mode 100644
index 00000000..df7360de
--- /dev/null
+++ b/roles/upgrade/tasks/main.yml
@@ -0,0 +1,36 @@
+---
+- name: Update packages list
+ apt:
+ update_cache: yes
+
+- name: List packages to upgrade (1/2)
+ command: aptitude -q -F%p --disable-columns search '~U !~ahold'
+ check_mode: no
+ register: updates
+ changed_when: False
+ failed_when: updates.rc != 0 and updates.rc != 1
+
+- name: List packages to upgrade (2/2)
+ debug:
+ msg: "{{ updates.stdout_lines | count }} packages to upgrade ({{ updates.stdout_lines | join(', ') }})"
+ when: updates.stdout_lines
+
+- name: Upgrade packages
+ apt:
+ upgrade: safe
+
+- name: List services to restart (1/2)
+ shell: checkrestart | grep ^service | awk '{print $2}'
+ check_mode: no
+ register: services
+ changed_when: False
+
+- name: List services to restart (2/2)
+ debug:
+ msg: "{{ services.stdout_lines | count }} services to restart ({{ services.stdout_lines | join (', ') }})"
+ when: services.stdout_lines
+
+- name: clean apt-cache and remove stale packages
+ apt:
+ autoclean: yes
+ autoremove: yes