summaryrefslogtreecommitdiffstats
path: root/roles/openshift_health_checker/openshift_checks/docker_image_availability.py
Commit message (Collapse)AuthorAgeFilesLines
* docker_image_availability: containerized overridesLuke Meyer2018-01-251-8/+13
| | | | Respect container image name override variables.
* docker_image_availability: enable skopeo to use proxiesLuke Meyer2018-01-221-6/+26
| | | | | Run skopeo via shell and add in environment variables for proxies if specified in variables.
* openshift_checks: repair adhoc list-checks modeLuke Meyer2018-01-161-1/+1
| | | | | | | | | | | | fixes bug https://bugzilla.redhat.com/show_bug.cgi?id=1509157 docker_image_availability.__init__ was loading a variable that of course was not defined for localhost, which is how this play runs. Fixed that. Would be nice if there were a more generic way to solve that class of problem but I can't think of anything for now that isn't worse. Also noticed that this play gathers facts for localhost. That's not necessary for what it's doing, so disabled that.
* Fix docker_image_availability checksMichael Gugino2018-01-051-4/+6
| | | | | | | | | | 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-201-1/+1
| | | | | We set these variables using facts in init, no need to duplicate the logic all around the codebase.
* 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
* 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.
* Ensure proper variable templating for skopeo auth credentialsMichael Gugino2017-10-171-0/+5
| | | | | | | | | | | | | | | | | 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: use oo group names everywhereLuke Meyer2017-10-041-4/+4
|
* 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
* 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.
* 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-121-4/+2
|
* output skopeo image check commandKenjiro Nakayama2017-09-051-4/+6
|
* 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.
* openshift_checks: add property to track 'changed'Luke Meyer2017-08-021-6/+4
| | | | | | | | | | 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.
* openshift_checks: refactor to internalize task_varsLuke Meyer2017-07-251-30/+27
| | | | | | | | | 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.
* openshift_checks: improve comments/namesLuke Meyer2017-07-251-9/+12
|
* docker_image_availability: fix containerized etcdLuke Meyer2017-06-301-1/+2
| | | | fixes bug 1466622 - docker_image_availability check on etcd host failed for 'openshift_image_tag' is undefined
* Disable TLS verification in skopeo inspectRodolfo Carvalho2017-06-191-1/+1
| | | | | | | Some registries are not configured with valid certificates and thus the check fails with 'http: server gave HTTP response to HTTPS client'. Since this is not fetching images, but only checking for existence, trade security for convenience.
* pre-install checks: add more during byo installLuke Meyer2017-06-141-69/+83
| | | | | | | | | | | | Add the docker and RPM checks to the list that run at install time. They can be disabled the same as the existing ones. Removed cockpit-kubernetes RPM requirement as it no longer is. Fixed up docker_image_availability to handle oreg_url and other nuances. Switched to using the openshift_image_tag that's set by openshift_version for both component and infrastructure images. Fixed a bug where execute_module was being called with incorrect positional arg "tmp" as a dict which caused errors down the call stack.
* docker checks: finish and refactorLuke Meyer2017-06-071-19/+3
| | | | | | | | | Incorporated docker_storage_driver into docker_storage as both need driver info. Corrected storage calculation to include VG free space, not just the current amount in the LV pool. Now makes no assumptions about pool name. Improved user messaging. Factored out some methods that can be shared with docker_image_availability.
* remove skopeo dependency on docker-pyjuanvallejo2017-05-191-78/+70
|
* improve error handling for missing varsjuanvallejo2017-05-191-48/+56
|
* Add test scaffold for docker_image_availability.pyRodolfo Carvalho2017-03-281-0/+11
| | | | | The intention is to set a starting point and let another team member work on the code to gain experience with tests.
* add docker_image_availability checkjuanvallejo2017-03-231-0/+168
This patch adds a check to ensure that required docker images are available in at least one of the registries supplied in an installation host. Images are available if they are either already present locally, or able to be inspected using Skopeo on one of the configured registries.