Create logfile with proper permissions before logging setup

PROD-34149

Change-Id: I6546ac30f10aa3fd1a5cf71d37090aaa65a3fe0a
diff --git a/neutron/compute.sls b/neutron/compute.sls
index d968c54..2c588d1 100644
--- a/neutron/compute.sls
+++ b/neutron/compute.sls
@@ -30,6 +30,13 @@
   {%- endif %}
 
 {%- if compute.logging.log_appender %}
+
+compute_var_log_{{ compute.logging.app_name }}_log_file:
+  file.managed:
+    - name: /var/log/{{ compute.logging.app_name }}/neutron.log
+    - user: neutron
+    - group: neutron
+
 neutron_compute_logging_conf:
   file.managed:
     - name: /etc/neutron/logging.conf
@@ -44,6 +51,8 @@
         _data: {{ compute.logging }}
     - user: neutron
     - group: neutron
+    - require:
+      - file: compute_var_log_{{ compute.logging.app_name }}_log_file
 {%- endif %}
 
 {%- if compute.get('concurrency', {}).lock_path is defined %}
diff --git a/neutron/gateway.sls b/neutron/gateway.sls
index 58cc81e..82923ba 100644
--- a/neutron/gateway.sls
+++ b/neutron/gateway.sls
@@ -150,6 +150,14 @@
     - name: python-fluent-logger
 {%- endif %}
 
+gateway_var_log_{{ gateway.logging.app_name }}_log_file:
+  file.managed:
+    - name: /var/log/{{ gateway.logging.app_name }}/neutron.log
+    - user: neutron
+    - group: neutron
+    - require:
+      - pkg: neutron_gateway_packages
+
 neutron_gateway_logging_conf:
   file.managed:
     - name: /etc/neutron/logging.conf
@@ -163,6 +171,7 @@
     - group: neutron
     - require:
       - pkg: neutron_gateway_packages
+      - file: gateway_var_log_{{ gateway.logging.app_name }}_log_file
 {%- if gateway.logging.log_handlers.get('fluentd', {}).get('enabled', False) %}
       - pkg: neutron_gateway_fluentd_logger_package
 {%- endif %}
@@ -170,6 +179,15 @@
       - service: neutron_gateway_services
 
 {% for service_name in gateway.services %}
+
+gateway_var_log_{{ gateway.logging.app_name }}_{{ service_name }}_log_file:
+  file.managed:
+    - name: /var/log/{{ gateway.logging.app_name }}/{{ service_name }}.log
+    - user: neutron
+    - group: neutron
+    - require:
+      - pkg: neutron_gateway_packages
+
 {{ service_name }}_logging_conf:
   file.managed:
     - name: /etc/neutron/logging/logging-{{ service_name }}.conf
@@ -183,6 +201,7 @@
         _data: {{ gateway.logging }}
     - require:
       - pkg: neutron_gateway_packages
+      - file: gateway_var_log_{{ gateway.logging.app_name }}_{{ service_name }}_log_file
 {%- if gateway.logging.log_handlers.get('fluentd', {}).get('enabled', False) %}
       - pkg: neutron_gateway_fluentd_logger_package
 {%- endif %}
diff --git a/neutron/ml2_ovs/init.sls b/neutron/ml2_ovs/init.sls
index 28fa379..9939135 100644
--- a/neutron/ml2_ovs/init.sls
+++ b/neutron/ml2_ovs/init.sls
@@ -192,6 +192,15 @@
       {%- endif %}
 
       {% for service_name in neutron_compute_services_list %}
+
+ml2_ovs_var_log_{{ compute.logging.app_name }}_{{ service_name }}_log_file:
+  file.managed:
+    - name: /var/log/{{ compute.logging.app_name }}/{{ service_name }}.log
+    - user: neutron
+    - group: neutron
+    - require:
+      - pkg: neutron_compute_packages
+
 {{ service_name }}_logging_conf:
   file.managed:
     - name: /etc/neutron/logging/logging-{{ service_name }}.conf
@@ -205,6 +214,7 @@
         _data: {{ compute.logging }}
     - require:
       - pkg: neutron_compute_packages
+      - file: ml2_ovs_var_log_{{ compute.logging.app_name }}_{{ service_name }}_log_file
         {% if compute.backend.sriov is defined %}
       - pkg: neutron_sriov_package
         {% endif %}
diff --git a/neutron/server.sls b/neutron/server.sls
index ec3f767..d77a3a5 100644
--- a/neutron/server.sls
+++ b/neutron/server.sls
@@ -169,6 +169,14 @@
     - name: python-fluent-logger
 {%- endif %}
 
+server_var_log_{{ server.logging.app_name }}_log_file:
+  file.managed:
+    - name: /var/log/{{ server.logging.app_name }}/neutron.log
+    - user: neutron
+    - group: neutron
+    - require:
+      - pkg: neutron_server_packages
+
 neutron_general_logging_conf:
   file.managed:
     - name: /etc/neutron/logging.conf
@@ -187,6 +195,7 @@
       - sls: neutron.db.offline_sync
     - require:
       - pkg: neutron_server_packages
+      - file: server_var_log_{{ server.logging.app_name }}_log_file
 {%- if server.logging.log_handlers.get('fluentd', {}).get('enabled', False) %}
       - pkg: neutron_server_fluentd_logger_package
 {%- endif %}
@@ -194,6 +203,15 @@
       - service: neutron_server_services
 
 {%- for service_name in server.services %}
+
+server_var_log_{{ server.logging.app_name }}_{{ service_name }}_log_file:
+  file.managed:
+    - name: /var/log/{{ server.logging.app_name }}/{{ service_name }}.log
+    - user: neutron
+    - group: neutron
+    - require:
+      - pkg: neutron_server_packages
+
 {{ service_name }}_logging_conf:
   file.managed:
     - name: /etc/neutron/logging/logging-{{ service_name }}.conf
@@ -210,6 +228,7 @@
     - group: neutron
     - require:
       - pkg: neutron_server_packages
+      - file: server_var_log_{{ server.logging.app_name }}_{{ service_name }}_log_file
 {%- if server.logging.log_handlers.get('fluentd', {}).get('enabled', False) %}
       - pkg: neutron_server_fluentd_logger_package
 {%- endif %}