Welcome to the “stonith_exists” role documentation.
metadata:
description: 'Verify that stonith devices are configured for your OpenStack Platform
HA cluster. We don''t configure stonith device with TripleO Installer. Because
the hardware configuration may be differ in each environment and requires different
fence agents. How to configure fencing please read https://access.redhat.com/documentation/en/red-hat-openstack-platform/8/paged/director-installation-and-usage/86-fencing-the-controller-nodes
'
groups:
- post-deployment
name: Validate stonith devices
Molecule is being used to test the “stonith_exists” role. The following section highlights the drivers in service and provides an example playbook showing how the role is leveraged.
driver:
name: podman
log: true
platforms:
- easy_install:
- pip
environment:
http_proxy: '{{ lookup(''env'', ''http_proxy'') }}'
https_proxy: '{{ lookup(''env'', ''https_proxy'') }}'
hostname: centos7
image: centos:7
name: centos7
pkg_extras: python-setuptools
ulimits: &id001
- host
volumes:
- /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro
- environment:
http_proxy: '{{ lookup(''env'', ''http_proxy'') }}'
https_proxy: '{{ lookup(''env'', ''https_proxy'') }}'
hostname: centos8
image: centos:8
name: centos8
pkg_extras: python*-setuptools
ulimits: *id001
volumes:
- /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro
provisioner:
env:
ANSIBLE_STDOUT_CALLBACK: yaml
log: true
name: ansible
scenario:
test_sequence:
- destroy
- create
- prepare
- converge
- verify
- destroy
verifier:
name: testinfra
- hosts: all
name: Converge
tasks:
- include_role:
name: stonith_exists
name: Safe run
- block:
- copy:
content: '#!/bin/sh
echo "NO stonith devices configured"
exit 0
'
dest: /usr/bin/pcs
mode: 493
name: Faulty pcs script
- include_role:
name: stonith_exists
name: Run validation
name: Fail the validation
rescue:
- meta: clear_host_errors
name: Clear host errors
- debug:
msg: The validation works! End play
name: Test output
- meta: end_play
name: End play
- fail:
msg: 'The stonith_exists validation didn''t properly detect failed
stonith config
'
name: Fail playbook if reached
Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.