stonith-exists

stonith-exists

Role Documentation

Welcome to the “stonith-exists” role documentation.

Role Variables: main.yml

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 Scenarios

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.

Scenario: default

Example default configuration
driver:
  name: docker
lint:
  enabled: false
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
- environment:
    http_proxy: '{{ lookup(''env'', ''http_proxy'') }}'
    https_proxy: '{{ lookup(''env'', ''https_proxy'') }}'
  hostname: fedora28
  image: fedora:28
  name: fedora28
  pkg_extras: python*-setuptools
provisioner:
  env:
    ANSIBLE_STDOUT_CALLBACK: yaml
  log: true
  name: ansible
scenario:
  test_sequence:
  - destroy
  - create
  - prepare
  - converge
  - verify
  - destroy
verifier:
  lint:
    name: flake8
  name: testinfra
Example default playbook
- 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
Creative Commons Attribution 3.0 License

Except where otherwise noted, this document is licensed under Creative Commons Attribution 3.0 License. See all OpenStack Legal Documents.