summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2017-11-16 14:46:22 -0800
committerGitHub <noreply@github.com>2017-11-16 14:46:22 -0800
commitbd289432c9b6e8b0b0a63f1f8b742e023e4b2fb8 (patch)
tree53770f48bba470fb0417d52e84d1813d18c9c3d5
parent78a5a599bf23c8cdd46079793fd1597a6fa7223d (diff)
parenta80dab78b05b21393587fc99a73e61e6450dddf7 (diff)
downloadopenshift-bd289432c9b6e8b0b0a63f1f8b742e023e4b2fb8.tar.gz
openshift-bd289432c9b6e8b0b0a63f1f8b742e023e4b2fb8.tar.bz2
openshift-bd289432c9b6e8b0b0a63f1f8b742e023e4b2fb8.tar.xz
openshift-bd289432c9b6e8b0b0a63f1f8b742e023e4b2fb8.zip
Merge pull request #6114 from sosiouxme/20171114-registry-console-tech-debt
Automatic merge from submit-queue. registry-console tech debt Followup to https://github.com/openshift/openshift-ansible/pull/5829 Replaces https://github.com/openshift/openshift-ansible/pull/6093 Fixes the construction and checking of registry-console images to be as similar as it can get to those constructed from the traditional `oreg_url` without tacking on `ose-` or `origin-` to the base name. I did not see a reason for having `registry.access.redhat.com/` as a hardcoded enterprise default so I took it out. Someone say something if there was a good reason for this.
-rw-r--r--inventory/byo/hosts.example5
-rw-r--r--roles/cockpit-ui/tasks/main.yml1
-rw-r--r--roles/openshift_health_checker/openshift_checks/docker_image_availability.py16
-rw-r--r--roles/openshift_health_checker/test/docker_image_availability_test.py4
-rw-r--r--roles/openshift_hosted_templates/files/v3.6/enterprise/registry-console.yaml9
-rw-r--r--roles/openshift_hosted_templates/files/v3.6/origin/registry-console.yaml7
-rw-r--r--roles/openshift_hosted_templates/files/v3.7/enterprise/registry-console.yaml9
-rw-r--r--roles/openshift_hosted_templates/files/v3.7/origin/registry-console.yaml7
-rw-r--r--roles/openshift_hosted_templates/files/v3.8/enterprise/registry-console.yaml9
-rw-r--r--roles/openshift_hosted_templates/files/v3.8/origin/registry-console.yaml7
10 files changed, 49 insertions, 25 deletions
diff --git a/inventory/byo/hosts.example b/inventory/byo/hosts.example
index 1a9a5b6cf..ccdec2da1 100644
--- a/inventory/byo/hosts.example
+++ b/inventory/byo/hosts.example
@@ -401,9 +401,10 @@ openshift_master_identity_providers=[{'name': 'htpasswd_auth', 'login': 'true',
# OpenShift Registry Console Options
# Override the console image prefix:
-# origin default is "cockpit/" and the image appended is "kubernetes"
-# enterprise default is "registry.access.redhat.com/openshift3/" and the image appended is "registry-console"
+# origin default is "cockpit/", enterprise default is "openshift3/"
#openshift_cockpit_deployer_prefix=registry.example.com/myrepo/
+# origin default is "kubernetes", enterprise default is "registry-console"
+#openshift_cockpit_deployer_basename=my-console
# Override image version, defaults to latest for origin, vX.Y product version for enterprise
#openshift_cockpit_deployer_version=1.4.1
diff --git a/roles/cockpit-ui/tasks/main.yml b/roles/cockpit-ui/tasks/main.yml
index 09f4259a2..f60912033 100644
--- a/roles/cockpit-ui/tasks/main.yml
+++ b/roles/cockpit-ui/tasks/main.yml
@@ -41,6 +41,7 @@
command: >
{{ openshift.common.client_binary }} new-app --template=registry-console
{% if openshift_cockpit_deployer_prefix is defined %}-p IMAGE_PREFIX="{{ openshift_cockpit_deployer_prefix }}"{% endif %}
+ {% if openshift_cockpit_deployer_basename is defined %}-p IMAGE_BASENAME="{{ openshift_cockpit_deployer_basename }}"{% endif %}
{% if openshift_cockpit_deployer_version is defined %}-p IMAGE_VERSION="{{ openshift_cockpit_deployer_version }}"{% endif %}
-p OPENSHIFT_OAUTH_PROVIDER_URL="{{ openshift.master.public_api_url }}"
-p REGISTRY_HOST="{{ docker_registry_route.results[0].spec.host }}"
diff --git a/roles/openshift_health_checker/openshift_checks/docker_image_availability.py b/roles/openshift_health_checker/openshift_checks/docker_image_availability.py
index 587c6f85c..4f91f6bb3 100644
--- a/roles/openshift_health_checker/openshift_checks/docker_image_availability.py
+++ b/roles/openshift_health_checker/openshift_checks/docker_image_availability.py
@@ -12,15 +12,15 @@ DEPLOYMENT_IMAGE_INFO = {
"origin": {
"namespace": "openshift",
"name": "origin",
- "registry_console_template": "${prefix}kubernetes:${version}",
"registry_console_prefix": "cockpit/",
+ "registry_console_basename": "kubernetes",
"registry_console_default_version": "latest",
},
"openshift-enterprise": {
"namespace": "openshift3",
"name": "ose",
- "registry_console_template": "${prefix}registry-console:${version}",
- "registry_console_prefix": "registry.access.redhat.com/openshift3/",
+ "registry_console_prefix": "openshift3/",
+ "registry_console_basename": "registry-console",
"registry_console_default_version": "${short_version}",
},
}
@@ -156,7 +156,8 @@ class DockerImageAvailability(DockerHostMixin, OpenShiftCheck):
if 'oo_nodes_to_config' in host_groups:
for suffix in NODE_IMAGE_SUFFIXES:
required.add(image_url.replace("${component}", suffix).replace("${version}", image_tag))
- required.add(self._registry_console_image(image_tag, image_info))
+ if self.get_var("osm_use_cockpit", default=True, convert=bool):
+ required.add(self._registry_console_image(image_tag, image_info))
# images for containerized components
if self.get_var("openshift", "common", "is_containerized"):
@@ -180,6 +181,10 @@ class DockerImageAvailability(DockerHostMixin, OpenShiftCheck):
"openshift_cockpit_deployer_prefix",
default=image_info["registry_console_prefix"],
)
+ basename = self.get_var(
+ "openshift_cockpit_deployer_basename",
+ default=image_info["registry_console_basename"],
+ )
# enterprise template just uses v3.6, v3.7, etc
match = re.match(r'v\d+\.\d+', image_tag)
@@ -187,8 +192,7 @@ class DockerImageAvailability(DockerHostMixin, OpenShiftCheck):
version = image_info["registry_console_default_version"].replace("${short_version}", short_version)
version = self.get_var("openshift_cockpit_deployer_version", default=version)
- template = image_info["registry_console_template"]
- return template.replace('${prefix}', prefix).replace('${version}', version)
+ return prefix + basename + ':' + version
def local_images(self, images):
"""Filter a list of images and return those available locally."""
diff --git a/roles/openshift_health_checker/test/docker_image_availability_test.py b/roles/openshift_health_checker/test/docker_image_availability_test.py
index 484aa72e0..ec46c3b4b 100644
--- a/roles/openshift_health_checker/test/docker_image_availability_test.py
+++ b/roles/openshift_health_checker/test/docker_image_availability_test.py
@@ -217,7 +217,7 @@ def test_registry_availability(image, registries, connection_test_failed, skopeo
'foo.io/openshift3/ose-docker-registry:f13ac45',
'foo.io/openshift3/ose-haproxy-router:f13ac45',
# registry-console is not constructed/versioned the same as the others.
- 'registry.access.redhat.com/openshift3/registry-console:vtest',
+ 'openshift3/registry-console:vtest',
# containerized images aren't built from oreg_url
'openshift3/node:vtest',
'openshift3/openvswitch:vtest',
@@ -261,7 +261,7 @@ def test_required_images(deployment_type, is_containerized, groups, oreg_url, ex
openshift_deployment_type="openshift-enterprise",
openshift_image_tag="vtest",
),
- "registry.access.redhat.com/openshift3/registry-console:vtest",
+ "openshift3/registry-console:vtest",
), (
dict(
openshift_deployment_type="openshift-enterprise",
diff --git a/roles/openshift_hosted_templates/files/v3.6/enterprise/registry-console.yaml b/roles/openshift_hosted_templates/files/v3.6/enterprise/registry-console.yaml
index f821efd6b..cc3159a32 100644
--- a/roles/openshift_hosted_templates/files/v3.6/enterprise/registry-console.yaml
+++ b/roles/openshift_hosted_templates/files/v3.6/enterprise/registry-console.yaml
@@ -27,7 +27,7 @@ objects:
spec:
containers:
- name: registry-console
- image: ${IMAGE_PREFIX}registry-console:${IMAGE_VERSION}
+ image: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
ports:
- containerPort: 9090
protocol: TCP
@@ -89,7 +89,7 @@ objects:
- annotations: null
from:
kind: DockerImage
- name: ${IMAGE_PREFIX}registry-console:${IMAGE_VERSION}
+ name: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
name: ${IMAGE_VERSION}
- kind: OAuthClient
apiVersion: v1
@@ -102,7 +102,10 @@ objects:
parameters:
- description: 'Specify "registry/repository" prefix for container image; e.g. for "registry.access.redhat.com/openshift3/registry-console:latest", set prefix "registry.access.redhat.com/openshift3/"'
name: IMAGE_PREFIX
- value: "registry.access.redhat.com/openshift3/"
+ value: "openshift3/"
+ - description: 'Specify component name for container image; e.g. for "registry.access.redhat.com/openshift3/registry-console:latest", use base name "registry-console"'
+ name: IMAGE_BASENAME
+ value: "registry-console"
- description: 'Specify image version; e.g. for "registry.access.redhat.com/openshift3/registry-console:v3.6", set version "v3.6"'
name: IMAGE_VERSION
value: "v3.6"
diff --git a/roles/openshift_hosted_templates/files/v3.6/origin/registry-console.yaml b/roles/openshift_hosted_templates/files/v3.6/origin/registry-console.yaml
index a78146ca4..a75340eb7 100644
--- a/roles/openshift_hosted_templates/files/v3.6/origin/registry-console.yaml
+++ b/roles/openshift_hosted_templates/files/v3.6/origin/registry-console.yaml
@@ -27,7 +27,7 @@ objects:
spec:
containers:
- name: registry-console
- image: ${IMAGE_PREFIX}kubernetes:${IMAGE_VERSION}
+ image: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
ports:
- containerPort: 9090
protocol: TCP
@@ -89,7 +89,7 @@ objects:
- annotations: null
from:
kind: DockerImage
- name: ${IMAGE_PREFIX}kubernetes:${IMAGE_VERSION}
+ name: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
name: ${IMAGE_VERSION}
- kind: OAuthClient
apiVersion: v1
@@ -103,6 +103,9 @@ parameters:
- description: 'Specify "registry/namespace" prefix for container image; e.g. for "registry.example.com/cockpit/kubernetes:latest", set prefix "registry.example.com/cockpit/"'
name: IMAGE_PREFIX
value: "cockpit/"
+ - description: 'Specify component name for container image; e.g. for "registry.example.com/cockpit/kubernetes:latest", use base name "kubernetes"'
+ name: IMAGE_BASENAME
+ value: "kubernetes"
- description: 'Specify image version; e.g. for "cockpit/kubernetes:latest", set version "latest"'
name: IMAGE_VERSION
value: latest
diff --git a/roles/openshift_hosted_templates/files/v3.7/enterprise/registry-console.yaml b/roles/openshift_hosted_templates/files/v3.7/enterprise/registry-console.yaml
index 019d836fe..9f2e6125d 100644
--- a/roles/openshift_hosted_templates/files/v3.7/enterprise/registry-console.yaml
+++ b/roles/openshift_hosted_templates/files/v3.7/enterprise/registry-console.yaml
@@ -27,7 +27,7 @@ objects:
spec:
containers:
- name: registry-console
- image: ${IMAGE_PREFIX}registry-console:${IMAGE_VERSION}
+ image: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
ports:
- containerPort: 9090
protocol: TCP
@@ -89,7 +89,7 @@ objects:
- annotations: null
from:
kind: DockerImage
- name: ${IMAGE_PREFIX}registry-console:${IMAGE_VERSION}
+ name: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
name: ${IMAGE_VERSION}
- kind: OAuthClient
apiVersion: v1
@@ -102,7 +102,10 @@ objects:
parameters:
- description: 'Specify "registry/repository" prefix for container image; e.g. for "registry.access.redhat.com/openshift3/registry-console:latest", set prefix "registry.access.redhat.com/openshift3/"'
name: IMAGE_PREFIX
- value: "registry.access.redhat.com/openshift3/"
+ value: "openshift3/"
+ - description: 'Specify component name for container image; e.g. for "registry.access.redhat.com/openshift3/registry-console:latest", use base name "registry-console"'
+ name: IMAGE_BASENAME
+ value: "registry-console"
- description: 'Specify image version; e.g. for "registry.access.redhat.com/openshift3/registry-console:v3.7", set version "v3.7"'
name: IMAGE_VERSION
value: "v3.7"
diff --git a/roles/openshift_hosted_templates/files/v3.7/origin/registry-console.yaml b/roles/openshift_hosted_templates/files/v3.7/origin/registry-console.yaml
index a78146ca4..a75340eb7 100644
--- a/roles/openshift_hosted_templates/files/v3.7/origin/registry-console.yaml
+++ b/roles/openshift_hosted_templates/files/v3.7/origin/registry-console.yaml
@@ -27,7 +27,7 @@ objects:
spec:
containers:
- name: registry-console
- image: ${IMAGE_PREFIX}kubernetes:${IMAGE_VERSION}
+ image: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
ports:
- containerPort: 9090
protocol: TCP
@@ -89,7 +89,7 @@ objects:
- annotations: null
from:
kind: DockerImage
- name: ${IMAGE_PREFIX}kubernetes:${IMAGE_VERSION}
+ name: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
name: ${IMAGE_VERSION}
- kind: OAuthClient
apiVersion: v1
@@ -103,6 +103,9 @@ parameters:
- description: 'Specify "registry/namespace" prefix for container image; e.g. for "registry.example.com/cockpit/kubernetes:latest", set prefix "registry.example.com/cockpit/"'
name: IMAGE_PREFIX
value: "cockpit/"
+ - description: 'Specify component name for container image; e.g. for "registry.example.com/cockpit/kubernetes:latest", use base name "kubernetes"'
+ name: IMAGE_BASENAME
+ value: "kubernetes"
- description: 'Specify image version; e.g. for "cockpit/kubernetes:latest", set version "latest"'
name: IMAGE_VERSION
value: latest
diff --git a/roles/openshift_hosted_templates/files/v3.8/enterprise/registry-console.yaml b/roles/openshift_hosted_templates/files/v3.8/enterprise/registry-console.yaml
index 5acbb02b3..f04ce06d3 100644
--- a/roles/openshift_hosted_templates/files/v3.8/enterprise/registry-console.yaml
+++ b/roles/openshift_hosted_templates/files/v3.8/enterprise/registry-console.yaml
@@ -27,7 +27,7 @@ objects:
spec:
containers:
- name: registry-console
- image: ${IMAGE_PREFIX}registry-console:${IMAGE_VERSION}
+ image: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
ports:
- containerPort: 9090
protocol: TCP
@@ -89,7 +89,7 @@ objects:
- annotations: null
from:
kind: DockerImage
- name: ${IMAGE_PREFIX}registry-console:${IMAGE_VERSION}
+ name: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
name: ${IMAGE_VERSION}
- kind: OAuthClient
apiVersion: v1
@@ -102,7 +102,10 @@ objects:
parameters:
- description: 'Specify "registry/repository" prefix for container image; e.g. for "registry.access.redhat.com/openshift3/registry-console:latest", set prefix "registry.access.redhat.com/openshift3/"'
name: IMAGE_PREFIX
- value: "registry.access.redhat.com/openshift3/"
+ value: "openshift3/"
+ - description: 'Specify component name for container image; e.g. for "registry.access.redhat.com/openshift3/registry-console:latest", use base name "registry-console"'
+ name: IMAGE_BASENAME
+ value: "registry-console"
- description: 'Specify image version; e.g. for "registry.access.redhat.com/openshift3/registry-console:v3.8", set version "v3.8"'
name: IMAGE_VERSION
value: "v3.8"
diff --git a/roles/openshift_hosted_templates/files/v3.8/origin/registry-console.yaml b/roles/openshift_hosted_templates/files/v3.8/origin/registry-console.yaml
index a78146ca4..a75340eb7 100644
--- a/roles/openshift_hosted_templates/files/v3.8/origin/registry-console.yaml
+++ b/roles/openshift_hosted_templates/files/v3.8/origin/registry-console.yaml
@@ -27,7 +27,7 @@ objects:
spec:
containers:
- name: registry-console
- image: ${IMAGE_PREFIX}kubernetes:${IMAGE_VERSION}
+ image: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
ports:
- containerPort: 9090
protocol: TCP
@@ -89,7 +89,7 @@ objects:
- annotations: null
from:
kind: DockerImage
- name: ${IMAGE_PREFIX}kubernetes:${IMAGE_VERSION}
+ name: ${IMAGE_PREFIX}${IMAGE_BASENAME}:${IMAGE_VERSION}
name: ${IMAGE_VERSION}
- kind: OAuthClient
apiVersion: v1
@@ -103,6 +103,9 @@ parameters:
- description: 'Specify "registry/namespace" prefix for container image; e.g. for "registry.example.com/cockpit/kubernetes:latest", set prefix "registry.example.com/cockpit/"'
name: IMAGE_PREFIX
value: "cockpit/"
+ - description: 'Specify component name for container image; e.g. for "registry.example.com/cockpit/kubernetes:latest", use base name "kubernetes"'
+ name: IMAGE_BASENAME
+ value: "kubernetes"
- description: 'Specify image version; e.g. for "cockpit/kubernetes:latest", set version "latest"'
name: IMAGE_VERSION
value: latest