From 62ecbd9eb60fe8e3b676a267c2ae84b623fc8bd4 Mon Sep 17 00:00:00 2001 From: Jesse Pretorius Date: Wed, 9 Aug 2017 15:50:54 +0100 Subject: [PATCH] Use block/rescue for error handling Instead of allowing the first task to fail, then using the fallback - use block/rescue to achieve the same, but totally skip the second task if the first succeeds. Change-Id: Icb4ce1901a5a4c2b870b308f7cd6444b304a022a (cherry picked from commit e9c9e37bc79d09ef3c5628b4d998a7819e5cab9b) --- tasks/ceph_preinstall_apt.yml | 67 ++++++++++++++++++----------------- 1 file changed, 34 insertions(+), 33 deletions(-) diff --git a/tasks/ceph_preinstall_apt.yml b/tasks/ceph_preinstall_apt.yml index 266626f..2bf45b5 100644 --- a/tasks/ceph_preinstall_apt.yml +++ b/tasks/ceph_preinstall_apt.yml @@ -23,40 +23,41 @@ tags: - ceph-apt-keys -- name: Add ceph apt-keys - apt_key: - id: "{{ item.hash_id }}" - keyserver: "{{ item.keyserver | default(omit) }}" - data: "{{ item.data | default(omit) }}" - url: "{{ item.url | default(omit) }}" - state: "present" - register: add_keys - until: add_keys|success - failed_when: false - retries: 5 - delay: 2 - with_items: "{{ ceph_gpg_keys }}" - when: ceph_pkg_source == 'ceph' - tags: - - ceph-apt-keys +- block: + - name: Add ceph apt-keys (primary keyserver) + apt_key: + id: "{{ item.hash_id }}" + keyserver: "{{ item.keyserver | default(omit) }}" + data: "{{ item.data | default(omit) }}" + url: "{{ item.url | default(omit) }}" + state: "present" + register: add_keys + until: add_keys|success + retries: 5 + delay: 2 + with_items: "{{ ceph_gpg_keys }}" + when: ceph_pkg_source == 'ceph' + tags: + - ceph-apt-keys -- name: Add ceph apt-keys using fallback keyserver - apt_key: - id: "{{ item.hash_id }}" - keyserver: "{{ item.fallback_keyserver | default(omit) }}" - url: "{{ item.fallback_url | default(omit) }}" - state: "present" - register: add_keys_fallback - until: add_keys_fallback|success - retries: 5 - delay: 2 - with_items: "{{ ceph_gpg_keys }}" - when: ceph_pkg_source == 'ceph' and - add_keys|failed and - (item.fallback_keyserver is defined or - item.fallback_url is defined) - tags: - - ceph-apt-keys + rescue: + - name: Add ceph apt-keys (fallback keyserver) + apt_key: + id: "{{ item.hash_id }}" + keyserver: "{{ item.fallback_keyserver | default(omit) }}" + url: "{{ item.fallback_url | default(omit) }}" + state: "present" + register: add_keys_fallback + until: add_keys_fallback|success + retries: 5 + delay: 2 + with_items: "{{ ceph_gpg_keys }}" + when: + - ceph_pkg_source == 'ceph' + - (item.fallback_keyserver is defined or + item.fallback_url is defined) + tags: + - ceph-apt-keys - name: add ubuntu cloud archive key package apt: