summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.tito/packages/openshift-ansible2
-rw-r--r--inventory/byo/hosts.example5
-rw-r--r--openshift-ansible.spec244
-rw-r--r--playbooks/openstack/openshift-cluster/install.yml7
-rw-r--r--playbooks/openstack/openshift-cluster/provision.yml4
-rw-r--r--roles/cockpit-ui/tasks/main.yml1
-rw-r--r--roles/kuryr/README.md5
-rw-r--r--roles/kuryr/templates/configmap.yaml.j28
-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
-rw-r--r--roles/openshift_logging/README.md1
-rw-r--r--roles/openshift_logging/tasks/install_logging.yaml4
-rw-r--r--roles/openshift_logging_elasticsearch/defaults/main.yml1
19 files changed, 315 insertions, 35 deletions
diff --git a/.tito/packages/openshift-ansible b/.tito/packages/openshift-ansible
index 88c353122..c1024572f 100644
--- a/.tito/packages/openshift-ansible
+++ b/.tito/packages/openshift-ansible
@@ -1 +1 @@
-3.8.0-0.1.0 ./
+3.8.0-0.2.0 ./
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/openshift-ansible.spec b/openshift-ansible.spec
index 76a56e5cf..98de1ae32 100644
--- a/openshift-ansible.spec
+++ b/openshift-ansible.spec
@@ -10,7 +10,7 @@
Name: openshift-ansible
Version: 3.8.0
-Release: 0.1.0%{?dist}
+Release: 0.2.0%{?dist}
Summary: Openshift and Atomic Enterprise Ansible
License: ASL 2.0
URL: https://github.com/openshift/openshift-ansible
@@ -285,6 +285,248 @@ Atomic OpenShift Utilities includes
%changelog
+* Thu Nov 16 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.8.0-0.2.0
+- Fix openstack init (rteague@redhat.com)
+- Ensure node service is started. (kwoodson@redhat.com)
+- Added aos-3.8 releaser for tito (smunilla@redhat.com)
+- Playbook Consolidation - Initialization (rteague@redhat.com)
+- Minor tweaks to ansible.cfg and example inventory (rteague@redhat.com)
+- Removed old version code (mgugino@redhat.com)
+- Fixing islnk. (kwoodson@redhat.com)
+- Removing setting prefix and version facts in openshift_logging to let the
+ component roles set their defaults (ewolinet@redhat.com)
+- Create prometheus configmaps before statefulset (zgalor@redhat.com)
+- Bug 1510496 - logging: honor ES PVC size (jwozniak@redhat.com)
+- Combine master upgrade play with role (mgugino@redhat.com)
+- Fix stale data in openshift_facts for logging (mgugino@redhat.com)
+- Start requiring Ansible 2.4 (rteague@redhat.com)
+- Fixing origin default for es proxy (ewolinet@redhat.com)
+- Addressing tox errors (ewolinet@redhat.com)
+- Addressing comments (ewolinet@redhat.com)
+- Initial Kuryr Ports Pool Support (ltomasbo@redhat.com)
+- Remove an unused retry file (tomas@sedovic.cz)
+- Namespace the docker volumes (tomas@sedovic.cz)
+- Fix tox (tomas@sedovic.cz)
+- Namespace the OpenStack vars (tomas@sedovic.cz)
+- Use `null` instead of `False` where it makes sense (tomas@sedovic.cz)
+- Simplify the template paths for the storage setup (tomas@sedovic.cz)
+- Use the default `item` loop variable for checks (tomas@sedovic.cz)
+- Move the selinux check up (tomas@sedovic.cz)
+- Add the DNS updates and rename the openstack vars (tomas@sedovic.cz)
+- Remove the subnet_update_dns_servers task list (tomas@sedovic.cz)
+- Move the vars/main.yml to defaults (tomas@sedovic.cz)
+- FIXUP ANSIBLE CFG (tomas@sedovic.cz)
+- Remove the static_inventory and bastion samples (tomas@sedovic.cz)
+- Use the existing ansible.cfg file (tomas@sedovic.cz)
+- Remove the subscription-manager role (tomas@sedovic.cz)
+- Add a stub of the dns record update code in (tomas@sedovic.cz)
+- Use correct host group in provision.yml (tomas@sedovic.cz)
+- Remove the post-install and scale-up playbooks (tomas@sedovic.cz)
+- Remove the openstack custom-actions for now (tomas@sedovic.cz)
+- Remove the extra roles (tomas@sedovic.cz)
+- Add openshift_openstack role and move tasks there (tomas@sedovic.cz)
+- Use the docker-storage-setup role (tomas@sedovic.cz)
+- Update readme (tomas@sedovic.cz)
+- Update lookup plugins path (tomas@sedovic.cz)
+- .gitignore casl-infra (tomas@sedovic.cz)
+- Move the OpenStack playbooks (tomas@sedovic.cz)
+- Updating logging components image defaulting pattern to match
+ openshift_logging pattern (ewolinet@redhat.com)
+- logging with static pvc: allow specifying the storage class name
+ (bart.vanbos@kbc.be)
+- Add role to configure project request template (hansmi@vshn.ch)
+- Remove bash highlight (tomas@sedovic.cz)
+- Revert the console hostname change (tomas@sedovic.cz)
+- Add Extra CAs (custom post-provision action) (#801) (tlacencin@gmail.com)
+- Add Flannel support (#814) (bdobreli@redhat.com)
+- Docker storage fix (#812) (cwilkers@redhat.com)
+- [WIP] Merge server with nofloating server heat templates (#761)
+ (bdobreli@redhat.com)
+- Support separate data network for Flannel SDN (#757) (bdobreli@redhat.com)
+- Add Extra Docker Registry URLs (custom post-provision action) (#794)
+ (tlacencin@gmail.com)
+- Make the private key examples consistent (tomas@sedovic.cz)
+- Allow the specification of server group policies when provisioning openstack
+ (#747) (tzumainn@redhat.com)
+- Attach additional RHN Pools (post-provision custom action) (#753)
+ (tlacencin@gmail.com)
+- Streamline the OpenStack provider README (tomas@sedovic.cz)
+- Adding support for cluster-autoscaler role (kwoodson@redhat.com)
+- Fix for this issue https://bugzilla.redhat.com/show_bug.cgi?id=1495372 (#793)
+ (edu@redhat.com)
+- Add CentOS support to the docker-storage-setup role (tomas@sedovic.cz)
+- Replace the CASL references (#778) (tomas@sedovic.cz)
+- Set public_v4 to private_v4 if it doesn't exist (tomas@sedovic.cz)
+- Fix flake8 errors (tomas@sedovic.cz)
+- Add dynamic inventory (tomas@sedovic.cz)
+- Fixing various contrib changes causing CASL breakage (#771)
+ (oybed@users.noreply.github.com)
+- Required variables to create dedicated lv (#766) (edu@redhat.com)
+- Adding the option to use 'stack_state' to allow for easy de-provisioning
+ (#754) (oybed@users.noreply.github.com)
+- Fix public master cluster DNS record when using bastion (#752)
+ (bdobreli@redhat.com)
+- Upscaling OpenShift application nodes (#571) (tlacencin@gmail.com)
+- load balancer formatting fix (#745) (tzumainn@redhat.com)
+- Docker ansible host (#742) (tomas@sedovic.cz)
+- Empty ssh (#729) (tomas@sedovic.cz)
+- Remove the `rhsm_register` value from inventory (tomas@sedovic.cz)
+- Make the `rhsm_register` value optional (tomas@sedovic.cz)
+- Clear the previous inventory during provisioning (tomas@sedovic.cz)
+- Fix the cinder_registry_volume conditional (tomas@sedovic.cz)
+- Pre-create a Cinder registry volume (tomas@sedovic.cz)
+- Add ability to support custom api and console ports (#712)
+ (etsauer@gmail.com)
+- Support Cinder-backed Openshift registry (#707) (tomas@sedovic.cz)
+- openstack: make server ports be trunk ports (#713) (celebdor@gmail.com)
+- Point openshift_master_cluster_public_hostname at master or lb if defined
+ (#706) (tzumainn@redhat.com)
+- Allow using a provider network (#701) (tomas@sedovic.cz)
+- Document global DNS security options (#694) (bdobreli@redhat.com)
+- Add custom post-provision playbook for adding yum repos (#697)
+ (tzumainn@redhat.com)
+- Support external/pre-provisioned authoritative cluster DNS (#690)
+ (bdobreli@redhat.com)
+- Added checks for configured images and flavors (#688) (tlacencin@gmail.com)
+- Cast num_* as int for jinja templates (#685) (bdobreli@redhat.com)
+- Do not repeat pre_tasks for post-provision playbook (#689)
+ (bdobreli@redhat.com)
+- Fix node label customisation (#679) (tlacencin@gmail.com)
+- Add documentation regarding running custom post-provision tasks (#678)
+ (tzumainn@redhat.com)
+- Add docs and defaults for multi-master setup (bdobreli@redhat.com)
+- Ignore *.cfg and *.crt in the openstack inventory (#672) (tomas@sedovic.cz)
+- Update openshift_release in the sample inventory (#647) (tomas@sedovic.cz)
+- Configure different Docker volume sizes for different roles (#644)
+ (tlacencin@gmail.com)
+- Avoid server recreation in case of user_data modification. (#651)
+ (robipolli@gmail.com)
+- Set custom hostnames for servers (#643) (tlacencin@gmail.com)
+- Access UI via a bastion node (#596) (bdobreli@redhat.com)
+- group_vars/all.yml, stack_params.yaml, README: specifying flavors enabled and
+ documented (#638) (tlacencin@gmail.com)
+- Specify different image names for roles (#637) (tlacencin@gmail.com)
+- Support multiple private networks for static inventory (#604)
+ (bdobreli@redhat.com)
+- Allow using ephemeral volumes for docker storage (#615) (tomas@sedovic.cz)
+- Remove clouds.yaml from sample-inventory (tomas@sedovic.cz)
+- Moving common DNS roles out of the playbook area (#605)
+ (oybed@users.noreply.github.com)
+- Note about jmespath requirement for control node (#599) (bdobreli@redhat.com)
+- removed openstack (djurgens@redhat.com)
+- Add wildcard pointer to Private DNS (djurgens@redhat.com)
+- Options for bastion, SSH config, static inventory autogeneration
+ (bdobreli@redhat.com)
+- Add bastion and ssh config for the static inventory role
+ (bdobreli@redhat.com)
+- Set openshift_hostname explicitly for openstack (#579) (tomas@sedovic.cz)
+- README: Added note about infra-ansible installation (#574)
+ (tlacencin@gmail.com)
+- Static inventory autogeneration (#550) (bdobreli@redhat.com)
+- Generate static inventory with shade inventory (#538) (bdobreli@redhat.com)
+- Include masters into etcd group, when it is empty (#559)
+ (bdobreli@redhat.com)
+- During provisioning, make unnecessary packages optional under a switch (#561)
+ (tlacencin@gmail.com)
+- Set ansible_become for the OSEv3 group (tomas@sedovic.cz)
+- README: fix (kpilatov@redhat.com)
+- README: typo (kpilatov@redhat.com)
+- dependencies: python-heatclient and python-openstackclient added to optional
+ dependencies (kpilatov@redhat.com)
+- README: added prerequisity for a repository needed for python-openstackclient
+ installation (kpilatov@redhat.com)
+- Add a role to generate a static inventory (#540) (bdobreli@redhat.com)
+- Retry tasks in the subscription manager role (#552) (tlacencin@gmail.com)
+- Set up NetworkManager automatically (#542) (tomas@sedovic.cz)
+- Replace greaterthan and equalto in openstack-stack (tomas@sedovic.cz)
+- Switch the sample inventory to CentOS (#541) (tomas@sedovic.cz)
+- Add defaults values for some openstack vars (#539) (tomas@sedovic.cz)
+- Install DNS roles from casl-infra with galaxy (#529) (bdobreli@redhat.com)
+- Playbook prerequisites.yml checks that prerequisites are met before
+ provisioning (#518) (tlacencin@gmail.com)
+- Persist DNS configuration for nodes for openstack provider
+ (bdobreli@redhat.com)
+- Manage packages to install/update for openstack provider
+ (bdobreli@redhat.com)
+- Fix yaml indentation (tomas@sedovic.cz)
+- Use wait_for_connection for the Heat nodes (tomas@sedovic.cz)
+- Put back node/flat secgrp for infra nodes on openstack (bdobreli@redhat.com)
+- README.md: fixing typo (kpilatov@redhat.com)
+- README.md: list jinja2 as a dependency (kpilatov@redhat.com)
+- Modify sec groups for provisioned openstack servers (bdobreli@redhat.com)
+- rename node_removal_policies, add some comments and defaults
+ (tzumainn@redhat.com)
+- all.yml: removed whitespaces in front of variables (kpilatov@redhat.com)
+- removed whitespace in front of commented variable (kpilatov@redhat.com)
+- OSEv3.yml: trailing space... (kpilatov@redhat.com)
+- OSEv3.yml: added option to ignore set hardware limits for RAM and DISK
+ (kpilatov@redhat.com)
+- Fix flat sec group and infra/dns sec rules (bdobreli@redhat.com)
+- Add node_removal_policies variable to allow for scaling down
+ (tzumainn@redhat.com)
+- Use cached facts, do not become for localhost (#484) (bdobreli@redhat.com)
+- Add profiling and skippy stdout (#470) (bdobreli@redhat.com)
+- Fix flake8 errors with the openstack inventory (tomas@sedovic.cz)
+- Fix yamllint errors (tomas@sedovic.cz)
+- Update sample inventory with the latest changes (tomas@sedovic.cz)
+- Gather facts for provision playbook (bdobreli@redhat.com)
+- Drop atomic-openshift-utils, update docs for origin (bdobreli@redhat.com)
+- Add ansible.cfg for openstack provider (bdobreli@redhat.com)
+- Add a flat sec group for openstack provider (bdobreli@redhat.com)
+- Always let the openshift nodes access the DNS (tomas@sedovic.cz)
+- Fix privileges in the pre-install playbook (tomas@sedovic.cz)
+- Add default values to provision-openstack.yml (tomas@sedovic.cz)
+- Move pre_tasks from to the openstack provisioner (tomas@sedovic.cz)
+- Add readme (tomas@sedovic.cz)
+- Add license for openstack.py in inventory (tomas@sedovic.cz)
+- Add a sample inventory for openstack provisioning (tomas@sedovic.cz)
+- Symlink roles to provisioning/openstack/roles (tomas@sedovic.cz)
+- Add a single provisioning playbook (tomas@sedovic.cz)
+- Move the openstack provisioning playbooks (tomas@sedovic.cz)
+- Update CASL to use nsupdate for DNS records (#48)
+ (oybed@users.noreply.github.com)
+- Conditionally set the openshift_master_default_subdomain to avoid overriding
+ it unecessary (#47) (oybed@users.noreply.github.com)
+- More ansible migration and deploy OCP from local workstation (#376)
+ (pschiffe@redhat.com)
+- Removed hardcoded values from ansible roles (edu@redhat.com)
+- First attempt at a simple multi-master support (#39) (etsauer@gmail.com)
+- Stack refactor (#38) (etsauer@gmail.com)
+- Ensure DNS configuration has wildcards set for infra nodes (#24)
+ (oybed@users.noreply.github.com)
+- Fixing two significant bugs in the HEAT deployment (#13) (etsauer@gmail.com)
+- update for yamllint errors (jdetiber@redhat.com)
+- Making providers common (#126) (rcook@redhat.com)
+- Openstack heat (#2) (etsauer@gmail.com)
+- Fixing ansible impl to work with OSP9 and ansible 2.2 (bedin@redhat.com)
+- Updated env_id to be a sub-domain + make the logic a bit more flexible
+ (bedin@redhat.com)
+- Fixes Issue #163 if rhsm_password is not defined (vvaldez@redhat.com)
+- Cleande up hostname role to make it more generic (bedin@redhat.com)
+- Updated to run as root rather than cloud-user, for now... (bedin@redhat.com)
+- Channging hard coded host groups to match openshift-ansible expected host
+ groups. Importing byo playbook now instead of nested ansible run. Need to
+ refactor how we generate hostnames to make it fit this. (esauer@redhat.com)
+- Subscription manager role should accomodate orgs with spaces
+ (esauer@redhat.com)
+- Reverting previous commit and making template adjustments (esauer@redhat.com)
+- Changes to allow runs from inside a container. Also allows for running
+ upstream openshift-ansible installer (esauer@redhat.com)
+- Changes by JayKayy for a full provision of OpenShift on OpenStack
+ (esauer@redhat.com)
+- Fix typo in task name (vvaldez@redhat.com)
+- Add org parameter to Satellite with user/pass (vvaldez@redhat.com)
+- Remove vars_prompt, add info to README to re-enable and for ansible-vault
+ (vvaldez@redhat.com)
+- Cosmetic changes to task names and move yum clean all to prereqs
+ (vvaldez@redhat.com)
+- Refactor use of rhsm_password to prevent display to CLI (vvaldez@redhat.com)
+- Fix bad syntax with extra 'and' in when using rhsm_pool (vvaldez@redhat.com)
+- Refactor role to dynamically determine rhsm_method (vvaldez@redhat.com)
+- Add subscription-manager support for Hosted or Satellite (vvaldez@redhat.com)
+- New OSE3 docker host builder and OpenStack ansible provisioning support
+ (andy.block@gmail.com)
+
* Wed Nov 15 2017 Jenkins CD Merge Bot <smunilla@redhat.com> 3.8.0-0.1.0
- Allow disabling authorization migration check (sdodson@redhat.com)
- Alternative method to create docker registry auth creds (mgugino@redhat.com)
diff --git a/playbooks/openstack/openshift-cluster/install.yml b/playbooks/openstack/openshift-cluster/install.yml
index 40d4767ba..1c4f609e3 100644
--- a/playbooks/openstack/openshift-cluster/install.yml
+++ b/playbooks/openstack/openshift-cluster/install.yml
@@ -8,11 +8,8 @@
# values here. We do it in the OSEv3 group vars. Do we need to add
# some logic here?
-- name: normalize groups
- include: ../../byo/openshift-cluster/initialize_groups.yml
-
-- name: run the std_include
- include: ../../common/openshift-cluster/std_include.yml
+- name: run the initialization
+ include: ../../init/main.yml
- name: run the config
include: ../../common/openshift-cluster/config.yml
diff --git a/playbooks/openstack/openshift-cluster/provision.yml b/playbooks/openstack/openshift-cluster/provision.yml
index fe3057158..36d8c8215 100644
--- a/playbooks/openstack/openshift-cluster/provision.yml
+++ b/playbooks/openstack/openshift-cluster/provision.yml
@@ -9,10 +9,8 @@
# NOTE(shadower): Bring in the host groups:
-- name: normalize groups
- include: ../../byo/openshift-cluster/initialize_groups.yml
- name: evaluate groups
- include: ../../common/openshift-cluster/evaluate_groups.yml
+ include: ../../init/evaluate_groups.yml
- name: Wait for the nodes and gather their facts
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/kuryr/README.md b/roles/kuryr/README.md
index 7b618f902..269788a11 100644
--- a/roles/kuryr/README.md
+++ b/roles/kuryr/README.md
@@ -31,6 +31,11 @@ pods. This allows to have interconnectivity between pods and OpenStack VMs.
* ``kuryr_openstack_pod_service_id=service_subnet_uuid``
* ``kuryr_openstack_pod_project_id=pod_project_uuid``
* ``kuryr_openstack_worker_nodes_subnet_id=worker_nodes_subnet_uuid``
+* ``kuryr_openstack_enable_pools=True``
+* ``kuryr_openstack_pool_max=0``
+* ``kuryr_openstack_pool_min=1``
+* ``kuryr_openstack_pool_batch=5``
+* ``kuryr_openstack_pool_update_frequency=20``
## Kuryr resources
diff --git a/roles/kuryr/templates/configmap.yaml.j2 b/roles/kuryr/templates/configmap.yaml.j2
index e874d6c25..6bf6c1db2 100644
--- a/roles/kuryr/templates/configmap.yaml.j2
+++ b/roles/kuryr/templates/configmap.yaml.j2
@@ -161,6 +161,14 @@ data:
# The driver that provides VIFs for Kubernetes Pods. (string value)
pod_vif_driver = nested-vlan
+ # The driver that manages VIFs pools for Kubernetes Pods (string value)
+ vif_pool_driver = {{ kuryr_openstack_enable_pools | default(False) | ternary('nested', 'noop') }}
+
+ [vif_pool]
+ ports_pool_max = {{ kuryr_openstack_pool_max | default(0) }}
+ ports_pool_min = {{ kuryr_openstack_pool_min | default(1) }}
+ ports_pool_batch = {{ kuryr_openstack_pool_batch | default(5) }}
+ ports_pool_update_frequency = {{ kuryr_openstack_pool_update_frequency | default(20) }}
[neutron]
# Configuration options for OpenStack Neutron
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
diff --git a/roles/openshift_logging/README.md b/roles/openshift_logging/README.md
index 6c5bb8693..27cfc17d6 100644
--- a/roles/openshift_logging/README.md
+++ b/roles/openshift_logging/README.md
@@ -84,6 +84,7 @@ When `openshift_logging_install_logging` is set to `False` the `openshift_loggin
- `openshift_logging_es_memory_limit`: The amount of RAM that should be assigned to ES. Defaults to '8Gi'.
- `openshift_logging_es_log_appenders`: The list of rootLogger appenders for ES logs which can be: 'file', 'console'. Defaults to 'file'.
- `openshift_logging_es_pv_selector`: A key/value map added to a PVC in order to select specific PVs. Defaults to 'None'.
+- `openshift_logging_es_pvc_storage_class_name`: The name of the storage class to use for a static PVC. Defaults to ''.
- `openshift_logging_es_pvc_dynamic`: Whether or not to add the dynamic PVC annotation for any generated PVCs. Defaults to 'False'.
- `openshift_logging_es_pvc_size`: The requested size for the ES PVCs, when not provided the role will not generate any PVCs. Defaults to '""'.
- `openshift_logging_es_pvc_prefix`: The prefix for the generated PVCs. Defaults to 'logging-es'.
diff --git a/roles/openshift_logging/tasks/install_logging.yaml b/roles/openshift_logging/tasks/install_logging.yaml
index 89e583771..2fefdc894 100644
--- a/roles/openshift_logging/tasks/install_logging.yaml
+++ b/roles/openshift_logging/tasks/install_logging.yaml
@@ -84,6 +84,7 @@
openshift_logging_elasticsearch_storage_type: "{{ elasticsearch_storage_type }}"
openshift_logging_elasticsearch_pvc_pv_selector: "{{ openshift_logging_es_pv_selector }}"
+ openshift_logging_elasticsearch_pvc_storage_class_name: "{{ openshift_logging_es_pvc_storage_class_name }}"
openshift_logging_elasticsearch_nodeselector: "{{ openshift_logging_es_nodeselector if outer_item.0.nodeSelector | default(None) is none else outer_item.0.nodeSelector }}"
openshift_logging_elasticsearch_storage_group: "{{ [openshift_logging_es_storage_group] if outer_item.0.storageGroups | default([]) | length == 0 else outer_item.0.storageGroups }}"
_es_containers: "{{ outer_item.0.containers}}"
@@ -110,6 +111,7 @@
openshift_logging_elasticsearch_storage_type: "{{ elasticsearch_storage_type }}"
openshift_logging_elasticsearch_pvc_pv_selector: "{{ openshift_logging_es_pv_selector }}"
+ openshift_logging_elasticsearch_pvc_storage_class_name: "{{ openshift_logging_es_pvc_storage_class_name }}"
with_sequence: count={{ openshift_logging_es_cluster_size | int - openshift_logging_facts.elasticsearch.deploymentconfigs.keys() | count }}
loop_control:
@@ -146,6 +148,7 @@
openshift_logging_elasticsearch_pvc_size: "{{ openshift_logging_es_ops_pvc_size }}"
openshift_logging_elasticsearch_pvc_dynamic: "{{ openshift_logging_es_ops_pvc_dynamic }}"
openshift_logging_elasticsearch_pvc_pv_selector: "{{ openshift_logging_es_ops_pv_selector }}"
+ openshift_logging_elasticsearch_pvc_storage_class_name: "{{ openshift_logging_es_ops_pvc_storage_class_name }}"
openshift_logging_elasticsearch_memory_limit: "{{ openshift_logging_es_ops_memory_limit }}"
openshift_logging_elasticsearch_cpu_limit: "{{ openshift_logging_es_ops_cpu_limit }}"
openshift_logging_elasticsearch_cpu_request: "{{ openshift_logging_es_ops_cpu_request }}"
@@ -187,6 +190,7 @@
openshift_logging_elasticsearch_pvc_size: "{{ openshift_logging_es_ops_pvc_size }}"
openshift_logging_elasticsearch_pvc_dynamic: "{{ openshift_logging_es_ops_pvc_dynamic }}"
openshift_logging_elasticsearch_pvc_pv_selector: "{{ openshift_logging_es_ops_pv_selector }}"
+ openshift_logging_elasticsearch_pvc_storage_class_name: "{{ openshift_logging_es_ops_pvc_storage_class_name }}"
openshift_logging_elasticsearch_memory_limit: "{{ openshift_logging_es_ops_memory_limit }}"
openshift_logging_elasticsearch_cpu_limit: "{{ openshift_logging_es_ops_cpu_limit }}"
openshift_logging_elasticsearch_cpu_request: "{{ openshift_logging_es_ops_cpu_request }}"
diff --git a/roles/openshift_logging_elasticsearch/defaults/main.yml b/roles/openshift_logging_elasticsearch/defaults/main.yml
index bec4432c3..0ea913224 100644
--- a/roles/openshift_logging_elasticsearch/defaults/main.yml
+++ b/roles/openshift_logging_elasticsearch/defaults/main.yml
@@ -31,6 +31,7 @@ openshift_logging_elasticsearch_pvc_name: ""
openshift_logging_elasticsearch_pvc_size: ""
openshift_logging_elasticsearch_pvc_dynamic: false
openshift_logging_elasticsearch_pvc_pv_selector: {}
+openshift_logging_elasticsearch_pvc_storage_class_name: ""
openshift_logging_elasticsearch_pvc_access_modes: ['ReadWriteOnce']
openshift_logging_elasticsearch_storage_group: ['65534']