diff --git a/defaults/main.yml b/defaults/main.yml index e9d68f1b..36253d1f 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -114,11 +114,13 @@ galera_package_arch: "{{ hostvars[inventory_hostname]['ansible_architecture'] }} # May be set to "no" when proxy server is intercepting the certificates. percona_package_download_validate_certs: yes percona_package_url: "{{ percona_arch_url.get( galera_package_arch | lower ) }}" +percona_package_fallback_url: "{{ percona_arch_fallback_url.get( galera_package_arch | lower ) }}" percona_package_sha256: "{{ percona_arch_sha256.get( galera_package_arch | lower ) }}" percona_package_path: "/opt/{{ percona_package_url | basename }}" qpress_package_download_validate_certs: yes qpress_package_url: "{{ qpress_arch_url.get( galera_package_arch | lower ) }}" +qpress_package_fallback_url: "{{ qpress_arch_fallback_url.get( galera_package_arch | lower ) }}" qpress_package_sha256: "{{ qpress_arch_sha256.get( galera_package_arch | lower ) }}" qpress_package_path: "/opt/{{ qpress_package_url | basename }}" diff --git a/tasks/galera_pre_install.yml b/tasks/galera_pre_install.yml index 1a02bdf3..56fde61b 100644 --- a/tasks/galera_pre_install.yml +++ b/tasks/galera_pre_install.yml @@ -13,31 +13,62 @@ # See the License for the specific language governing permissions and # limitations under the License. -- name: Download the percona-xtrabackup package - get_url: - url: "{{ percona_package_url }}" - dest: "{{ percona_package_path }}" - mode: "0644" - sha256sum: "{{ percona_package_sha256 }}" - validate_certs: "{{ percona_package_download_validate_certs }}" - register: package_download - retries: 3 - delay: 10 - until: package_download|success - when: not use_percona_upstream | bool - tags: - - percona-apt-packages +- block: + - name: Download the percona-xtrabackup package + get_url: + url: "{{ percona_package_url }}" + dest: "{{ percona_package_path }}" + mode: "0644" + sha256sum: "{{ percona_package_sha256 }}" + validate_certs: "{{ percona_package_download_validate_certs }}" + register: package_download + retries: 3 + delay: 10 + until: package_download|success + when: not use_percona_upstream | bool + tags: + - percona-apt-packages + rescue: + - name: Download the percona-xtrabackup package (fallback) + get_url: + url: "{{ percona_package_fallback_url }}" + dest: "{{ percona_package_path }}" + mode: "0644" + sha256sum: "{{ percona_package_sha256 }}" + validate_certs: "{{ percona_package_download_validate_certs }}" + register: package_download + retries: 3 + delay: 10 + until: package_download|success + when: not use_percona_upstream | bool + tags: + - percona-apt-packages -- name: Download the qpress package - get_url: - url: "{{ qpress_package_url }}" - dest: "{{ qpress_package_path }}" - sha256sum: "{{ qpress_package_sha256 }}" - validate_certs: "{{ qpress_package_download_validate_certs }}" - register: package_download - retries: 3 - delay: 10 - until: package_download|success - when: not use_percona_upstream | bool - tags: - - percona-apt-packages +- block: + - name: Download the qpress package + get_url: + url: "{{ qpress_package_url }}" + dest: "{{ qpress_package_path }}" + sha256sum: "{{ qpress_package_sha256 }}" + validate_certs: "{{ qpress_package_download_validate_certs }}" + register: package_download + retries: 3 + delay: 10 + until: package_download|success + when: not use_percona_upstream | bool + tags: + - percona-apt-packages + rescue: + - name: Download the qpress package (fallback) + get_url: + url: "{{ qpress_package_fallback_url }}" + dest: "{{ qpress_package_path }}" + sha256sum: "{{ qpress_package_sha256 }}" + validate_certs: "{{ qpress_package_download_validate_certs }}" + register: package_download + retries: 3 + delay: 10 + until: package_download|success + when: not use_percona_upstream | bool + tags: + - percona-apt-packages diff --git a/vars/redhat-7.yml b/vars/redhat-7.yml index 212aafbd..760c4707 100644 --- a/vars/redhat-7.yml +++ b/vars/redhat-7.yml @@ -61,11 +61,15 @@ galera_server_percona_distro_packages: percona_arch_url: x86_64: "https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.5/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.5-1.el7.x86_64.rpm" +percona_arch_fallback_url: + x86_64: "https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.5/binary/redhat/7/x86_64/percona-xtrabackup-24-2.4.5-1.el7.x86_64.rpm" percona_arch_sha256: x86_64: "8cadff677dcb05b451a7e3217a0c47dc79323426c70e81791e1091bd927c1874" qpress_arch_url: x86_64: "https://repo.percona.com/centos/7/RPMS/x86_64/qpress-11-1.el7.x86_64.rpm" +qpress_arch_fallback_url: + x86_64: "https://mirrors.mediatemple.net/percona/testing/centos/7/RPMS/x86_64/qpress-11-1.el7.x86_64.rpm" qpress_arch_sha256: x86_64: "d6b6b7ca3a5ad4baea34975743106ac54ac746b3e6497d59bce55765d604b697" diff --git a/vars/ubuntu-16.04.yml b/vars/ubuntu-16.04.yml index 019d5e99..120ee1ba 100644 --- a/vars/ubuntu-16.04.yml +++ b/vars/ubuntu-16.04.yml @@ -80,6 +80,8 @@ galera_server_percona_distro_packages: percona_arch_url: x86_64: "https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.5/binary/debian/xenial/x86_64/percona-xtrabackup-24_2.4.5-1.xenial_amd64.deb" ppc64le: "http://public.dhe.ibm.com/systems/virtualization/Novalink/misc/percona-xtrabackup/percona-xtrabackup-24_2.4.5-1_ppc64el.deb" +percona_arch_fallback_url: + x86_64: "http://mirrors.reflected.net/percona/apt/pool/main/p/percona-xtrabackup-24/percona-xtrabackup-24_2.4.5-1.xenial_amd64.deb" percona_arch_sha256: x86_64: "6a71704e625194689d2a6b325765608040ff5da82ac4bc8ce6ac3756f9a9130f" ppc64le: "3d4e4112f4c8020c9190a91d962dabed1dfaad307160a939e121208887eaee2a" @@ -87,6 +89,8 @@ percona_arch_sha256: qpress_arch_url: x86_64: "https://repo.percona.com/apt/pool/main/q/qpress/qpress_11-1.xenial_amd64.deb" ppc64le: "http://public.dhe.ibm.com/systems/virtualization/Novalink/misc/qpress/qpress_11-1_ppc64el.deb" +qpress_arch_fallback_url: + x86_64: "http://mirrors.reflected.net/percona/apt/pool/testing/q/qpress/qpress_11-1.xenial_amd64.deb" qpress_arch_sha256: x86_64: "c615ec08eb38a9cb59541ae1d7ed42db35e92513735834b48d30d4c485e01534" ppc64le: "a31d3e00dbcec9b3f98eae82b261d054d0b80a57f4a38967d0e953811cb082f3"