Add missing step for glusterfs.client

- Add step "Setup glusterfs client" to the MACRO_INSTALL_GLUSTERFS()
- Add macro SHARED_CORE.MACRO_INSTALL_NGINX() with
  certificate refresh before nginx state
- Move nginx state from MACRO_INSTALL_NOVA() to MACRO_INSTALL_NGINX()
- Use SHARED_CORE macros instead of custom steps in all
  deployment templates where MACRO_INSTALL_NOVA() is used
  (to not miss MACRO_INSTALL_NGINX() )

Change-Id: Ib5a0bddf4405384edbc470d7ecbc15df442b072d
Related-Prod: PROD-25028
diff --git a/tcp_tests/templates/shared-core.yaml b/tcp_tests/templates/shared-core.yaml
index 0a0c63a..ae47e03 100644
--- a/tcp_tests/templates/shared-core.yaml
+++ b/tcp_tests/templates/shared-core.yaml
@@ -81,6 +81,13 @@
   retry: {count: 5, delay: 5}
   skip_fail: false
 
+- description: Setup glusterfs on other nodes
+  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+    -C 'I@glusterfs:server' state.sls glusterfs
+  node_name: {{ HOSTNAME_CFG01 }}
+  retry: {count: 5, delay: 5}
+  skip_fail: false
+
 - description: Check the gluster status
   cmd: salt --hard-crash --state-output=mixed --state-verbose=False
     -C 'I@glusterfs:server' cmd.run 'gluster peer status && gluster volume status' -b 1
@@ -88,6 +95,20 @@
   retry: {count: 1, delay: 5}
   skip_fail: false
 
+- description: Refresh pillar before glusterfs client
+  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+    -C 'I@glusterfs:client' saltutil.refresh_pillar
+  node_name: {{ HOSTNAME_CFG01 }}
+  retry: {count: 1, delay: 5}
+  skip_fail: false
+
+- description: Setup glusterfs client
+  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+    -C 'I@glusterfs:client' state.sls glusterfs.client
+  node_name: {{ HOSTNAME_CFG01 }}
+  retry: {count: 1, delay: 15}
+  skip_fail: false
+
 {%- endmacro %}
 
 {%- macro MACRO_INSTALL_RABBITMQ() %}
@@ -165,6 +186,24 @@
 
 {%- endmacro %}
 
+{%- macro MACRO_INSTALL_NGINX() %}
+
+- description: Update certificate files on nginx nodes
+  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+    -C 'I@nginx:server' state.sls salt.minion.cert
+  node_name: {{ HOSTNAME_CFG01 }}
+  retry: {count: 1, delay: 15}
+  skip_fail: false
+
+- description: Install nginx server
+  cmd: salt --hard-crash --state-output=mixed --state-verbose=False
+    -C 'I@nginx:server' state.sls nginx
+  node_name: {{ HOSTNAME_CFG01 }}
+  retry: {count: 1, delay: 5}
+  skip_fail: false
+
+{%- endmacro %}
+
 {%- macro MACRO_INSTALL_MEMCACHED() %}
 
 - description: Install memcached on all controllers