From 3233f6dcf11f059cf7b32f70c2c6e8b64820995d Mon Sep 17 00:00:00 2001 From: Juan Badia Payno Date: Thu, 19 Mar 2020 15:54:26 +0100 Subject: [PATCH] BaR: Pacemaker config backup Create a pacemaker configuration back up if pacemaker is configured on the node. Change-Id: I747abf9af9ad7dc4dd79f66a53cebd97a377fe3d --- .../roles/backup_and_restore/tasks/main.yml | 3 ++ .../tasks/pacemaker_backup.yml | 52 +++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 tripleo_ansible/roles/backup_and_restore/tasks/pacemaker_backup.yml diff --git a/tripleo_ansible/roles/backup_and_restore/tasks/main.yml b/tripleo_ansible/roles/backup_and_restore/tasks/main.yml index 0088edf36..bdd9dd4e9 100644 --- a/tripleo_ansible/roles/backup_and_restore/tasks/main.yml +++ b/tripleo_ansible/roles/backup_and_restore/tasks/main.yml @@ -48,6 +48,9 @@ when: - tripleo_backup_and_restore_service_manager +- name: Backup pacemaker configuration + import_tasks: pacemaker_backup.yml + - name: Create recovery images with ReaR import_tasks: run_backup.yml diff --git a/tripleo_ansible/roles/backup_and_restore/tasks/pacemaker_backup.yml b/tripleo_ansible/roles/backup_and_restore/tasks/pacemaker_backup.yml new file mode 100644 index 000000000..e9d3d967c --- /dev/null +++ b/tripleo_ansible/roles/backup_and_restore/tasks/pacemaker_backup.yml @@ -0,0 +1,52 @@ +--- +# Copyright 2019 Red Hat, Inc. +# All Rights Reserved. +# +# Licensed under the Apache License, Version 2.0 (the "License"); you may +# not use this file except in compliance with the License. You may obtain +# a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT +# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the +# License for the specific language governing permissions and limitations +# under the License. +# + +- name: Getting enabled_services + command: | + hiera -c "{{ tripleo_backup_and_restore_hiera_config_file }}" 'enabled_services' + register: tripleo_backup_and_restore_enabled_services + become: true + tags: + - bar_create_recover_image + +- name: Set pacemaker enable variable + set_fact: + pacemaker_enabled: "{{ (tripleo_backup_and_restore_enabled_services.stdout is search('pacemaker')) | ternary(true,false) }}" + tags: + - bar_create_recover_image + +- name: Delete previous backup files if exists + file: + path: "{{ item }}" + state: absent + with_items: + - pacemaker_backup.tar.bz2 + - cib.xml + when: pacemaker_enabled + become: true + tags: + - bar_create_recover_image + +- name: Backup the pacemaker configuration + shell: | + set -o pipefail + pcs cluster cib cib.xml + pcs config backup pacemaker_backup + when: pacemaker_enabled + become: true + tags: + - bar_create_recover_image