A lightweight solution for configuration of baremetal nodes.
Go to file
Crank, Daniel f0eb0b7582 [ad-hoc] Fix test case exit conditions
While working on another change, I discovered conditions
in many test cases that echoed fail messages but did not
actually exit, so the gate could succeed even though some
tests failed. This patchset aims to fix those problems, and
then fix the problems masked by those problems:

1) fix bug in revert function of file permissions module
preventing permissions from being reverted.
2) fix various syntax and logic problems in test script
3) add wait_for_tiller_ready function to avoid race condition
with test script using helm too early
4) add install for ethtool in test script
5) ignore ethtool pod failures (see note #1 in [0])
6) make logging of test results more uniform
7) Fix error message logic in perm.sh
8) Fix case in _shcommon.tpl where error message was not
logged, causing test script to unnecessarily wait for
container timeout

[0]: https://review.opendev.org/676010

Change-Id: I22182d35250c37c96e73d9f5f49abfb2246f2a35
2020-03-12 15:25:30 +00:00
.github Add SECURITY.md 2020-02-20 17:07:16 -06:00
divingbell [ad-hoc] Fix test case exit conditions 2020-03-12 15:25:30 +00:00
doc [ad-hoc] Fix test case exit conditions 2020-03-12 15:25:30 +00:00
tools [ad-hoc] Fix test case exit conditions 2020-03-12 15:25:30 +00:00
.gitignore Enhance docs rendering; update documentation 2019-03-18 22:46:50 +01:00
.gitreview OpenDev Migration Patch 2019-04-19 19:52:20 +00:00
.zuul.yaml Add Docker default AppArmor profile to divingbell 2020-02-13 14:43:44 -08:00
LICENSE Initial commit 2017-10-17 13:25:54 -05:00
Makefile Create Makefile target to install Helm binary 2018-11-26 16:34:45 -06:00
README.rst Enhance docs rendering; update documentation 2019-03-18 22:46:50 +01:00
TODO Initial commit. 2017-11-16 05:59:36 +00:00
Vagrantfile Minor: Git URI schema and URL change 2019-03-21 00:57:07 +01:00
setup.cfg Exec: Use nsenter to enter all host namespaces when running exec 2019-03-11 19:32:48 -07:00
setup.py docs(tox): Add tox target to generate docs 2018-05-22 14:26:20 -05:00
test-requirements.txt docs(tox): Add tox target to generate docs 2018-05-22 14:26:20 -05:00
tox.ini Set up publishing of docs 2018-10-04 16:38:36 +00:00

README.rst

Divingbell

Documentation Status

Introduction

Divingbell is a lightweight solution for:

1. Bare metal configuration management for a few very targeted use cases via the following modules:

  • apparmor
  • ethtool
  • exec (run arbitrary scripts)
  • system limits
  • mounts
  • permissions (perm)
  • sysctl values
  • basic user account management (uamlite)
  1. Bare metal package manager orchestration using apt module

What problems does it solve?

The needs identified for Divingbell were:

  1. To plug gaps in day 1 tools (e.g., Drydock) for node configuration
  2. To provide a day 2 solution for managing these configurations going forward
  3. [Future] To provide a day 2 solution for system level host patching

Documentation

Find more documentation for Divingbell on Read the Docs.

Further Reading

Airship.