upgrades/validation: only run validation when services exist
[apex-tripleo-heat-templates.git] / puppet / services / logging / fluentd-client.yaml
index 3ae7110..57595b8 100644 (file)
@@ -1,4 +1,4 @@
-heat_template_version: 2016-10-14
+heat_template_version: ocata
 
 description: Fluentd client configured with Puppet
 
@@ -62,3 +62,23 @@ outputs:
               get_attr: [LoggingConfiguration, LoggingSharedKey]
       step_config: |
         include ::tripleo::profile::base::logging::fluentd
+      upgrade_tasks:
+        - name: Check if fluentd_client is deployed
+          command: systemctl is-enabled fluentd
+          tags: common
+          ignore_errors: True
+          register: fluentd_client_enabled
+        - name: Check status of fluentd service
+          shell: >
+            /usr/bin/systemctl show fluentd --property ActiveState |
+            grep '\bactive\b'
+          when: fluentd_client_enabled.rc == 0
+          tags: step0,validation
+        - name: Stop fluentd service
+          tags: step1
+          when: fluentd_client_enabled.rc == 0
+          service: name=fluentd state=stopped
+        - name: Install fluentd package if it was disabled
+          tags: step3
+          yum: name=fluentd state=latest
+          when: fluentd_client_enabled.rc != 0