summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamuel Padgett <spadgett@redhat.com>2018-02-06 13:52:51 -0500
committerSamuel Padgett <spadgett@redhat.com>2018-02-06 13:56:00 -0500
commit9c1cfdec3ca6ec7034ea55050b66215d6a827323 (patch)
treea572723ffc9c1bdc40579117d314eadb092dead1
parentfa6c7cc621ff05b35eadc846d3960ac2dc1009c0 (diff)
downloadopenshift-9c1cfdec3ca6ec7034ea55050b66215d6a827323.tar.gz
openshift-9c1cfdec3ca6ec7034ea55050b66215d6a827323.tar.bz2
openshift-9c1cfdec3ca6ec7034ea55050b66215d6a827323.tar.xz
openshift-9c1cfdec3ca6ec7034ea55050b66215d6a827323.zip
Detect config changes in console liveness probe
Use an md5sum to check if the console config has changed and automatically restart the container.
-rw-r--r--roles/openshift_web_console/files/console-template.yaml15
-rw-r--r--roles/openshift_web_console/tasks/update_console_config.yml7
2 files changed, 11 insertions, 11 deletions
diff --git a/roles/openshift_web_console/files/console-template.yaml b/roles/openshift_web_console/files/console-template.yaml
index 547e7a265..5bcfcf73f 100644
--- a/roles/openshift_web_console/files/console-template.yaml
+++ b/roles/openshift_web_console/files/console-template.yaml
@@ -67,10 +67,17 @@ objects:
port: 8443
scheme: HTTPS
livenessProbe:
- httpGet:
- path: /
- port: 8443
- scheme: HTTPS
+ exec:
+ command:
+ - /bin/sh
+ - -i
+ - -c
+ - |-
+ if [[ ! -f /tmp/webconsole-config.hash ]]; then \
+ md5sum /var/webconsole-config/webconsole-config.yaml > /tmp/webconsole-config.hash; \
+ elif [[ $(md5sum /var/webconsole-config/webconsole-config.yaml) != $(cat /tmp/webconsole-config.hash) ]]; then \
+ exit 1; \
+ fi && curl -k -f https://0.0.0.0:8443/console/
resources:
requests:
cpu: 100m
diff --git a/roles/openshift_web_console/tasks/update_console_config.yml b/roles/openshift_web_console/tasks/update_console_config.yml
index 967222ea4..8b967cda3 100644
--- a/roles/openshift_web_console/tasks/update_console_config.yml
+++ b/roles/openshift_web_console/tasks/update_console_config.yml
@@ -5,9 +5,6 @@
# `value` properties in the same format as `yedit` module `edits`. Only
# properties passed are updated. The separator for nested properties is `#`.
#
-# Note that this triggers a redeployment on the console and a brief downtime
-# since it uses a `Recreate` strategy.
-#
# Example usage:
#
# - include_role:
@@ -55,13 +52,9 @@
state: present
from_file:
webconsole-config.yaml: "{{ mktemp_console.stdout }}/webconsole-config.yaml"
- register: update_console_config_map
- name: Remove temp directory
file:
state: absent
name: "{{ mktemp_console.stdout }}"
changed_when: False
-
- - include_tasks: rollout_console.yml
- when: update_console_config_map.changed | bool