Browse Source

Merge pull request #7683 from jsanda/hawkular-schema

[BZ 1560695] Add support for standalone hawkular-metrics schema installer
OpenShift Merge Robot 7 years ago
parent
commit
e2feb137f2

+ 21 - 0
roles/openshift_metrics/tasks/install_hawkular_schema_job.yaml

@@ -0,0 +1,21 @@
+---
+- name: list installed jobs
+  command: >
+    {{ openshift_client_binary }} -n {{ openshift_metrics_project }} --config={{ mktemp.stdout }}/admin.kubeconfig
+    get jobs
+  register: jobs
+
+# We cannot use oc apply here because the Job template has immutable fields
+# on which oc apply will fail.
+- name: remove hawkular-metrics-schema job
+  command: >
+    {{ openshift_client_binary }} -n {{ openshift_metrics_project }} --config={{ mktemp.stdout }}/admin.kubeconfig
+    delete job hawkular-metrics-schema
+  register: delete_schema_job
+  when: "'hawkular-metrics-schema' in jobs.stdout"
+
+- name: generate hawkular-metrics schema job
+  template:
+    src: hawkular_metrics_schema_job.j2
+    dest: "{{ mktemp.stdout }}/templates/hawkular_metrics_schema_job.yaml"
+  changed_when: false

+ 1 - 0
roles/openshift_metrics/tasks/install_metrics.yaml

@@ -6,6 +6,7 @@
   with_items:
     - support
     - heapster
+    - hawkular_schema_job
     - hawkular
     - cassandra
   loop_control:

+ 35 - 0
roles/openshift_metrics/templates/hawkular_metrics_schema_job.j2

@@ -0,0 +1,35 @@
+apiVersion: batch/v1
+kind: Job
+metadata:
+  name: hawkular-metrics-schema
+  labels:
+    metrics-infra: hawkular-metrics
+    name: hawkular-metrics-schema
+spec:
+  template:
+    spec:
+      version: v1
+      metadata:
+        labels:
+          metrics-infra: hawkular-metrics
+          #name: hawkular-metrics
+      containers:
+      - name: hawkular-metrics-schema
+        image: {{openshift_metrics_image_prefix}}metrics-hawkular-metrics-schema:{{openshift_metrics_image_version}}
+        imagePullPolicy: IfNotPresent
+        env:
+          - name: TRUSTSTORE_AUTHORITIES
+            value: "/hawkular-metrics-certs/tls.truststore.crt"
+        volumeMounts:
+        - mountPath: /hawkular-metrics-certs
+          name: hawkular-metrics-certs
+        - mountPath: /hawkular-account
+          name: hawkular-metrics-account
+      volumes:
+      - name: hawkular-metrics-certs
+        secret:
+          secretName: hawkular-metrics-certs
+      - name: hawkular-metrics-account
+        secret:
+          secretName: hawkular-metrics-account
+      restartPolicy: OnFailure