summaryrefslogtreecommitdiffstats
path: root/roles/openshift_health_checker/callback_plugins
Commit message (Collapse)AuthorAgeFilesLines
* failure_summary: make sure msg is always a stringVadim Rutkovsky2018-01-041-0/+2
| | | | | | Some tasks may return a dict in the msg. In that case `stringc` will fail to colorize it (with "AttributeError: <msg type> object has no attribute 'split'" error.
* Skip failure dedup instead of crashingRodolfo Carvalho2017-09-111-2/+14
| | | | | | This makes the callback plugin behave better when dedup is not possible: work with the original list of failures instead of raising an unhandled exception and producing confusing output for users.
* Handle exceptions in failure summary cb pluginRodolfo Carvalho2017-08-241-2/+11
| | | | | | | | | | | This serves two purposes: - Gracefully omit the summary if there was an error computing it, no confusion to the regular end user. - Provide a stacktrace of the error when running verbose, giving developers or users reporting bugs a better insight of what went wrong, as opposed to Ansible's opaque handling of errors in callback plugins.
* Rewrite failure summary callback pluginRodolfo Carvalho2017-08-241-119/+172
| | | | | The intent is to deduplicate similar errors that happened in many hosts, making the summary more concise.
* Add playbook for running arbitrary health checksRodolfo Carvalho2017-08-241-1/+1
| | | | | | | | This is useful on its own, and also aids in developing/testing new checks that are not part of any playbook. Since the intent when running this playbook is to execute checks, opt for a less verbose explanation on the error summary.
* openshift_checks: improve comments/namesLuke Meyer2017-07-251-17/+21
|
* Only store failures that were not ignored.Rodolfo Carvalho2017-07-111-1/+2
| | | | | | | | | | | | | | | In the past, health checks were implemented with ignore_errors: True in the playbook level, requiring us to store all failures, ignored or not, so that we could report on all failed checks. Now checks are run from a single action plugin entry point, without ignoring errors (all errors are aggregated via the action plugin). Since the integration of the openshift_health_checker role with the install playbook, failure summaries are part of the output of a lot more calls to ansible-playbook. We shall report only failures that caused the execution to stop, as ignored failures in the summary only serve to confuse users.
* health checks: configure failure output in playbooksLuke Meyer2017-05-231-43/+64
| | | | | Customized the error summary to depend on the intent of the playbook run. Ensured output makes sense when failures are unrelated to running checks.
* Show help on how to disable checks after failureRodolfo Carvalho2017-05-231-0/+22
|
* Remove vim configuration from Python filesRodolfo Carvalho2017-05-091-1/+0
| | | | | | | In a project where contributors are free to use whatever editor they want and we have linting tools that verify the proper formatting of Python files, it should not be required to have a vim-specific line in Python files.
* preflight checks: improve user output from checksLuke Meyer2017-03-201-10/+24
|
* Replace multi-role checks with action pluginRodolfo Carvalho2017-02-101-0/+100
This approach should make it easier to add new checks without having to write lots of YAML and doing things against Ansible (e.g. ignore_errors). A single action plugin determines what checks to run per each host, including arguments to the check. A check is implemented as a class with a run method, with the same signature as an action plugin and module, and is normally backed by a regular Ansible module. Each check is implemented as a separate Python file. This allows whoever adds a new check to focus solely in a single Python module, and potentially an Ansible module within library/ too. All checks are automatically loaded, and only active checks that are requested by the playbook get executed.