Add global-system-config update for LLGR
PROD-16774
Change-Id: I56922b603b65a03f798f1fb7b6f03676e177d510
diff --git a/README.rst b/README.rst
index bebe7d7..2f55b18 100644
--- a/README.rst
+++ b/README.rst
@@ -911,6 +911,26 @@
ip_address: 172.16.0.12
dpdk_enabled: True
+
+Enforcing global system config
+
+.. code-block:: yaml
+
+ opencontrail:
+ client:
+ ...
+ global_system_config:
+ name: default-global-system-config
+ asn: 64512
+ grp:
+ enable: true
+ restart_time: 60
+ end_of_rib_timeout: 30
+ bgp_helper_enable: false
+ xmpp_helper_enable: false
+ long_lived_restart_time: 300
+
+
Enforcing global vrouter config
.. code-block:: yaml
@@ -927,6 +947,8 @@
- 'default-global-system-config'
- 'default-global-vrouter-config'
+
+
Enforcing control nodes
.. code-block:: yaml
diff --git a/_modules/contrail.py b/_modules/contrail.py
index 10c7680..38281b2 100644
--- a/_modules/contrail.py
+++ b/_modules/contrail.py
@@ -1691,6 +1691,8 @@
if config_obj.graceful_restart_parameters and not HAS_OLD:
curr_grp = str(config_obj.graceful_restart_parameters).replace(" ", "").split(",")
curr_grpd = dict(item.split('=') for item in curr_grp)
+ else:
+ curr_grpd = None
if grp and 'enable' in grp and not HAS_OLD:
grp_obj = GracefulRestartParametersType()
diff --git a/opencontrail/client.sls b/opencontrail/client.sls
index 7069077..24370ac 100644
--- a/opencontrail/client.sls
+++ b/opencontrail/client.sls
@@ -16,10 +16,22 @@
{%- endif %}
{%- endif %}
+{%- if client.global_system_config is defined %}
+global_system_config_create:
+ contrail.global_system_config_present:
+ - name: {{ client.global_system_config.get('name', 'default-global-system-config') }}
+ - ans: {{ client.global_system_config.get('ans', '64512') }}
+ {%- if client.global_system_config.grp is defined %}
+ - grp:
+ {{ client.global_system_config.get('grp') | yaml(False) | indent(4) }}
+ {%- endif %}
+
+{%- endif %}
+
{%- if client.global_vrouter_config is defined %}
global_vrouter_config_create:
contrail.global_vrouter_config_present:
- - name: {{ client.global_vrouter_config.get('name', 'global-vrouter-config') }}
+ - name: {{ client.global_vrouter_config.get('name', 'default-global-vrouter-config') }}
- parent_type: {{ client.global_vrouter_config.get('parent_type', 'global-system-config') }}
- encap_priority: {{ client.global_vrouter_config.get('encap_priority', 'MPLSoUDP,MPLSoGRE') }}
- vxlan_vn_id_mode: {{ client.global_vrouter_config.get('vxlan_vn_id_mode', 'automatic') }}