Set lock_path on compute and gateway nodes
PROD-34246
Change-Id: I3de5fffdd24ea059488d66bd7084dd5da032df88
diff --git a/metadata/service/compute/ovn/single.yml b/metadata/service/compute/ovn/single.yml
index 644e76b..a1fb5bc 100644
--- a/metadata/service/compute/ovn/single.yml
+++ b/metadata/service/compute/ovn/single.yml
@@ -16,6 +16,8 @@
controller_vip: ${_param:cluster_vip_address}
external_access: true
external_bridge: ${_param:ovn_external_bridge}
+ concurrency:
+ lock_path: '/var/lib/neutron/lock'
backend:
engine: ovn
ovsdb_connection: tcp:127.0.0.1:6640
diff --git a/metadata/service/compute/single.yml b/metadata/service/compute/single.yml
index baeb03c..075c9a5 100644
--- a/metadata/service/compute/single.yml
+++ b/metadata/service/compute/single.yml
@@ -12,6 +12,8 @@
compute:
enabled: true
version: ${_param:neutron_version}
+ concurrency:
+ lock_path: '/var/lib/neutron/lock'
message_queue:
engine: rabbitmq
host: ${_param:cluster_vip_address}
diff --git a/metadata/service/gateway/single.yml b/metadata/service/gateway/single.yml
index 631e749..5dfa8c4 100644
--- a/metadata/service/gateway/single.yml
+++ b/metadata/service/gateway/single.yml
@@ -11,6 +11,8 @@
gateway:
enabled: true
version: ${_param:neutron_version}
+ concurrency:
+ lock_path: '/var/lib/neutron/lock'
message_queue:
engine: rabbitmq
host: ${_param:cluster_vip_address}
diff --git a/neutron/compute.sls b/neutron/compute.sls
index 708a51d..d968c54 100644
--- a/neutron/compute.sls
+++ b/neutron/compute.sls
@@ -46,6 +46,16 @@
- group: neutron
{%- endif %}
+{%- if compute.get('concurrency', {}).lock_path is defined %}
+neutron_compute_lock_path_{{ compute.concurrency.lock_path }}:
+ file.directory:
+ - name: {{ compute.concurrency.lock_path }}
+ - user: neutron
+ - group: neutron
+ - mode: 750
+ - makedirs: True
+{%- endif %}
+
{% if compute.backend.engine == "ml2" %}
{% if compute.get('dhcp_agent_enabled', False) %}
diff --git a/neutron/files/pike/neutron-generic.conf b/neutron/files/pike/neutron-generic.conf
index 13f9b3f..1a51bbb 100644
--- a/neutron/files/pike/neutron-generic.conf
+++ b/neutron/files/pike/neutron-generic.conf
@@ -1281,7 +1281,7 @@
# (string value)
# Deprecated group/name - [DEFAULT]/lock_path
#lock_path = /tmp
-lock_path = $state_path/lock
+lock_path = {{ neutron.get('concurrency', {}).get('lock_path', '/var/lib/neutron/lock') }}
[oslo_messaging_amqp]
diff --git a/neutron/gateway.sls b/neutron/gateway.sls
index e51990a..58cc81e 100644
--- a/neutron/gateway.sls
+++ b/neutron/gateway.sls
@@ -112,6 +112,20 @@
- require:
- pkg: neutron_gateway_packages
+{%- if gateway.get('concurrency', {}).lock_path is defined %}
+neutron_gateway_lock_path_{{ gateway.concurrency.lock_path }}:
+ file.directory:
+ - name: {{ gateway.concurrency.lock_path }}
+ - user: neutron
+ - group: neutron
+ - mode: 750
+ - makedirs: True
+ - require:
+ - pkg: neutron_gateway_packages
+ - require_in:
+ - service: neutron_gateway_services
+{%- endif %}
+
{%- for service_name in gateway.services %}
{{ service_name }}_default:
file.managed:
diff --git a/neutron/server.sls b/neutron/server.sls
index 5bbc033..ec3f767 100644
--- a/neutron/server.sls
+++ b/neutron/server.sls
@@ -269,7 +269,7 @@
{%- endif %}
{%- if server.get('concurrency', {}).lock_path is defined %}
-neutron_lock_path_{{ server.concurrency.lock_path }}:
+neutron_server_lock_path_{{ server.concurrency.lock_path }}:
file.directory:
- name: {{ server.concurrency.lock_path }}
- user: neutron
diff --git a/neutron/upgrade/render_config.sls b/neutron/upgrade/render_config.sls
index 1c6971e..c94d49e 100644
--- a/neutron/upgrade/render_config.sls
+++ b/neutron/upgrade/render_config.sls
@@ -63,10 +63,21 @@
- template: jinja
{%- endfor %}
-{%- if server.get('concurrency', {}).lock_path is defined %}
-neutron_upgrade_lock_path_{{ server.concurrency.lock_path }}:
+{%- if server.enabled %}
+ {%- set _data = server %}
+ {%- set type = 'server' %}
+{%- elif gateway.enabled %}
+ {%- set _data = gateway %}
+ {%- set type = 'gateway' %}
+{%- elif compute.enabled %}
+ {%- set _data = compute %}
+ {%- set type = 'compute' %}
+{%- endif %}
+
+{%- if _data is defined and _data.get('concurrency', {}).lock_path is defined %}
+neutron_upgrade_{{ type }}_lock_path_{{ _data.concurrency.lock_path }}:
file.directory:
- - name: {{ server.concurrency.lock_path }}
+ - name: {{ _data.concurrency.lock_path }}
- user: neutron
- group: neutron
- mode: 750