summaryrefslogtreecommitdiffstats
path: root/roles/openshift_health_checker/openshift_checks
Commit message (Collapse)AuthorAgeFilesLines
* Move more plugins to lib_utilsMichael Gugino2018-01-101-1/+1
| | | | | | | This commit continues moving plugins into lib_utils. This commit does not move any plugins for add-on roles such as logging and metrics.
* Fix docker_image_availability checksMichael Gugino2018-01-052-4/+13
| | | | | | | | | | This commit ensures that oreg_url is properly templated by ansible before being consumed in the logic. This commit also adds a method to the base health check class to detect if self._templar is none, and return the appropriate templated/untemplated version of the variable. This is mostly for unit tests.
* Remove openshift.common.{is_atomic|is_containerized}Michael Gugino2017-12-203-7/+7
| | | | | We set these variables using facts in init, no need to duplicate the logic all around the codebase.
* Remove openshift.common.service_typeMichael Gugino2017-12-072-2/+6
| | | | | | | | This commit removes openshift.common.service_type in favor of openshift_service_type. This commit also removes r_openshift_excluder_service_type from plays in favor of using the role's defaults.
* registry-console: align image and checkLuke Meyer2017-11-151-6/+10
| | | | | enable option to configure basename in image docker_image_availability check: follow registry-console image options
* Merge pull request #5829 from sosiouxme/20171020-registry-console-bz1497310Scott Dodson2017-11-081-6/+26
|\ | | | | reconcile registry-console and docker_image_availability
| * reconcile registry-console and docker_image_availabilityLuke Meyer2017-11-061-6/+26
| | | | | | | | | | | | | | | | | | | | | | | | Fixes bug 1497310 https://bugzilla.redhat.com/show_bug.cgi?id=1497310 The registry console is a special case in more than one way. This adds logic to incorporate the openshift_cockpit_deployer_* variables into determining what its image will be in docker_image_availability. Along the way I noticed the origin and enterprise templates for this were not consistent. Now they are, and the example hosts file is updated.
* | openshift_checks: Add OVS versions for OCP 3.7Miciah Masters2017-11-062-2/+4
|/ | | | | | | | | Update the ovs_version check with the allowed Open vSwitch versions for OCP 3.7. Add OVS 2.8 to the allowed versions for OCP 3.6 as well. Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1509163
* Merge pull request #5816 from sosiouxme/20171019-disk-check-sum-varOpenShift Merge Robot2017-10-271-1/+12
|\ | | | | | | | | | | | | | | | | Automatic merge from submit-queue. disk_availability check: include submount storage Fixes bug [1491566](https://bugzilla.redhat.com/show_bug.cgi?id=1491566) In order to determine how much storage is under a path, include any mounts that are below it in addition to the path itself.
| * disk_availability check: include submount storageLuke Meyer2017-10-201-1/+12
| | | | | | | | | | | | | | | | Fixes bug 1491566 https://bugzilla.redhat.com/show_bug.cgi?id=1491566 In order to determine how much storage is under a path, include any mounts that are below it in addition to the path itself.
* | Merge pull request #5742 from mtnbikenc/refactor-checksScott Dodson2017-10-271-1/+1
|\ \ | | | | | | 1504593 Refactor health check playbooks
| * | Refactor health check playbooksRussell Teague2017-10-121-1/+1
| |/ | | | | | | | | | | - Standardize play/tasks naming - Move install checks to separate playbook with checkpointing - Correct 'docker_storage' tags
* | Ensure proper variable templating for skopeo auth credentialsMichael Gugino2017-10-172-2/+10
|/ | | | | | | | | | | | | | | | | Currently, docker_image_availability.py plugin check is using the raw strings for variables from task_vars. This results in any variables that utilized within the plugin to be un-templated. For instance, if variable "x" is set to "{{ y }}" and y is set to "2", one would expect that x == 2 inside the plugin. Currently, the plugin will use the string "{{ y }}" for the value of x instead of templating the variable. This commit ensures skopeo registry auth credentials are templated properly. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1500698
* docker_image_availability: credentials to skopeoMichael Gugino2017-10-061-43/+66
| | | | | | | | | | | | | | | | | | Currently, docker_image_availability health_check does not support authenticated registries. This commit adds the '--creds=' option to skopeo if needed to support authentication credentials. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1316341 Some other fixes to handle docker config better: Should now account properly for blocked registries, insecure registries, multiple additional registries, and oreg_url registry with or without credentials. Output on failure should be clearer about what was tried. Fixed a bug in the action_plugin_test exposed by these changes.
* openshift_checks: lb and nfs do not need dockerLuke Meyer2017-10-041-3/+5
| | | | | fixes bug 1496760 https://bugzilla.redhat.com/show_bug.cgi?id=1496760
* openshift_checks: use oo group names everywhereLuke Meyer2017-10-0410-30/+34
|
* openshift_checks: Fix incorrect list castSteve Milner2017-10-021-1/+10
| | | | | | | | | | | | | docker_image_availability casted openshift_docker_additional_registries to a list using the list() function. If a string was returned (IE: only a single registry added) the result would be the string split up by component characters. This change forces a string result from get_var to be placed inside a list. If the result is anything BUT a string the original list() function is called on the result. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1497274 Signed-off-by: Steve Milner <smilner@redhat.com>
* Migrate enterprise registry logic to docker roleMichael Gugino2017-09-271-1/+1
| | | | | | | | | | | | | Currently, the enterprise registry to forcefully added in openshift_facts. Recently, the docker role has been modified to consume registry variables directly, bypassing openshift_facts. This commit cleans up unused code in openshift_facts, and migrates enterprise registry logic to the docker role. Fixes: https://github.com/openshift/openshift-ansible/issues/5557
* Merge pull request #5491 from sosiouxme/20170920-diagnostics-checkOpenShift Merge Robot2017-09-224-9/+80
|\ | | | | | | | | | | | | | | | | Automatic merge from submit-queue health checks: add diagnostics check Adds a health check that runs `oc adm diagnostics` with each individual diagnostic. Also, moved `is_first_master` method into superclass for reuse. And look at `oo_first_master` and `ansible_host` instead of `masters` and `ansible_ssh_host`.
| * health checks: add diagnostics checkLuke Meyer2017-09-214-9/+80
| | | | | | | | | | | | Also, moved is_first_master method into superclass for reuse. And look at oo_first_master and ansible_host instead of masters and ansible_ssh_host.
* | Cleanup old deployment typesMichael Gugino2017-09-201-3/+1
|/ | | | | | | | | | | Previously, openshift-ansible supported various types of deployments using the variable "openshift_deployment_type" Currently, openshift-ansible only supports two deployment types, "origin" and "openshift-enterprise". This commit removes all logic and references to deprecated deployment types.
* openshift_checks: enable providing file outputsLuke Meyer2017-09-186-24/+117
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Some refactoring of checks and the action plugin to enable writing files locally about the check operation and results, if the user wants them. This is aimed at enabling persistent and machine-readable results from recurring runs of health checks. Now, rather than trying to build a result hash to return from running each check, checks can just register what they need to as they're going along, and the action plugin processes state when the check is done. Checks can register failures, notes about what they saw, and arbitrary files to be saved into a directory structure where the user specifies. If no directory is specified, no files are written. At this time checks can still return a result hash, but that will likely be refactored away in the next iteration. Multiple failures can be registered without halting check execution. Throwing an exception or returning a hash with "failed" is registered as a failure. execute_module now does a little more with the results. Results are automatically included in notes and written individually as files. "changed" results are propagated. Some json results are decoded. A few of the checks were enhanced to use these features; all get some of the features for free.
* docker_image_availability: fix local image searchLuke Meyer2017-09-121-5/+9
| | | | | | An image in the docker index may be tagged by name or by registry plus name. In order to find the image correctly locally and prevent looking for it externally, make sure all possible variations are searched.
* docker_image_availability: probe registry connectivityLuke Meyer2017-09-121-23/+50
| | | | | | | | | | | | Probe whether the host has connectivity to the registry before trying to inspect it for images, and remember the result. Also if later inspection fails due to timeout, mark registry as unreachable. Note in failure output if any registries were unreachable. Registry order should match what is configured into docker now as well. Fixes bug 1480195 https://bugzilla.redhat.com/show_bug.cgi?id=1480195
* openshift_checks: add retries in pythonLuke Meyer2017-09-126-8/+23
|
* Merge pull request #5296 from nak3/skeopeo-command-outputOpenShift Bot2017-09-061-4/+6
|\ | | | | Merged by openshift-bot
| * output skopeo image check commandKenjiro Nakayama2017-09-051-4/+6
| |
* | openshift_checks aos_version: also check installed under yumLuke Meyer2017-09-061-0/+1
|/ | | | | | | | | Tweaks to the logic around using yum vs dnf; now uses ansible_pkg_mgr to determine which is in effect for a host. Also, extended the yum logic to check installed packages in addition to available packages in the aos_version module so that disconnected installs and others with weird repo configs need not disable the package_version check.
* Merge pull request #5035 from ↵Rodolfo Carvalho2017-08-311-1/+1
|\ | | | | | | | | Miciah/openshift_checks-ignore-hidden-files-in-checks-directory openshift_checks: ignore hidden files in checks dir
| * openshift_checks: ignore hidden files in checks dirMiciah Masters2017-08-081-1/+1
| | | | | | | | load_checks: Ignore hidden files when scanning the directory for checks.
* | Merge pull request #5271 from sosiouxme/20170830-disk-avail-bugRodolfo Carvalho2017-08-311-4/+1
|\ \ | | | | | | disk_availability: fix bug where msg is overwritten
| * | disk_availability: fix bug where msg is overwrittenLuke Meyer2017-08-301-4/+1
| | |
* | | docker_image_availability: timeout skopeo inspectLuke Meyer2017-08-281-1/+4
|/ / | | | | | | | | Set a 10 second timeout when using skopeo to inspect remote registries, so that it does not wait for a tcp timeout to fail if they are unreachable.
* | etc_traffic check: factor away short_versionLuke Meyer2017-08-151-2/+2
| |
* | Merge pull request #5036 from ↵Scott Dodson2017-08-151-2/+2
|\ \ | | | | | | | | | | | | Miciah/openshift_checks-support-ovs-2.7-on-ocp-3.5-and-3.6 openshift_checks: allow OVS 2.7 on OCP 3.5 and 3.6
| * | openshift_checks: allow OVS 2.7 on OCP 3.5 and 3.6Miciah Masters2017-08-111-2/+2
| |/ | | | | | | | | | | | | | | | | rpm_version: Allow package_list items to specify a list value for version. If a list value is provided for a package, pass the check if any version in that list is found. ovs_version: Specify both 2.6 and 2.7 as allowed versions of OVS for OpenShift versions 3.5 and 3.6.
* | Merge pull request #4944 from sosiouxme/20170728-refactor-ansible-mountsScott Dodson2017-08-115-73/+44
|\ \ | | | | | | openshift_checks: refactor find_ansible_mount
| * | openshift_checks: refactor find_ansible_mountLuke Meyer2017-08-085-73/+44
| |/ | | | | | | Reuse the code for finding the ansible_mounts mount for a path.
* | Merge pull request #4922 from sosiouxme/20170728-improve-get-varsScott Dodson2017-08-092-7/+51
|\ \ | |/ |/| openshift_checks: enable variable conversion
| * openshift_checks: enable variable conversionLuke Meyer2017-08-012-7/+51
| |
* | Merge pull request #4913 from sosiouxme/20170720-refactor-check-resultsRodolfo Carvalho2017-08-0813-389/+417
|\ \ | | | | | | openshift_checks: refactor check results
| * | openshift_checks: refactor logging checksLuke Meyer2017-08-028-371/+401
| | | | | | | | | | | | | | | | | | | | | Turn failure messages into exceptions that tests can look for without depending on text meant for humans. Turn logging_namespace property into a method. Get rid of _exec_oc and just use logging.exec_oc.
| * | openshift_checks: add property to track 'changed'Luke Meyer2017-08-0210-31/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Introduced the 'changed' property for checks that can make changes to track whether they did or not. Rather than the check's own logic having to track this and include it in the result hash, just set the property and have the action plugin insert it in the result hash after running (even if there is an exception). Cleared out a lot of crufty "changed: false" hash entries.
* | | Merge pull request #4960 from ↵OpenShift Bot2017-08-071-0/+34
|\ \ \ | | | | | | | | | | | | | | | | juanvallejo/jvallejo/verify-disk-memory-before-upgrade-no-flake Merged by openshift-bot
| * | | add pre-flight checks to ugrade pathjuanvallejo2017-08-021-0/+34
| | |/ | |/|
* | | Merge pull request #4969 from sosiouxme/20170801-tolerate-ovs-beyond-36OpenShift Bot2017-08-021-54/+54
|\ \ \ | |_|/ |/| | Merged by openshift-bot
| * | package_version check: tolerate release version 3.7Luke Meyer2017-08-021-54/+54
| |/ | | | | | | | | | | | | | | | | | | | | Addresses issue https://github.com/openshift/openshift-ansible/issues/4967 For now, any version >= 3.6 is handled as if it were 3.6. We may want to keep that or fine-tune it later. Also, the ovs_version check is not updated. This is a post-install health check (does not block install/upgrade) with an update already in progress so will be addressed there.
* | add fluentd logging driver config checkjuanvallejo2017-08-017-72/+187
|/
* Make LoggingCheck.run return the correct typeRodolfo Carvalho2017-07-271-1/+4
| | | | | | The run method is expected to return a dict. Even though we should not run LoggingCheck by itself, it is still possible to do it and without this change we get an unhandled exception.
* openshift_checks: refactor to internalize task_varsLuke Meyer2017-07-2519-293/+282
| | | | | | | | | Move task_vars into instance variable so we don't have to pass it around everywhere. Also store tmp. Make sure both are filled in on execute_module. In the process, is_active became an instance method, and task_vars is basically never used directly outside of test code.