Apply reclass patches before salt master init 51/37251/2
authorMichael Polenchuk <mpolenchuk@mirantis.com>
Wed, 12 Jul 2017 08:29:30 +0000 (12:29 +0400)
committerMichael Polenchuk <mpolenchuk@mirantis.com>
Wed, 12 Jul 2017 09:39:17 +0000 (13:39 +0400)
Change-Id: I7bb984880e98b7bdec9aa0b3895a3be9fd75cac0
Signed-off-by: Michael Polenchuk <mpolenchuk@mirantis.com>
mcp/patches/0001-opendaylight-reclass-system.patch [moved from mcp/patches/1f59df54.diff with 97% similarity]
mcp/patches/0002-opendaylight-formula-neutron.patch [moved from mcp/patches/1a2c7f23.diff with 88% similarity]
mcp/patches/patch.sh
mcp/patches/patches.list
mcp/reclass/classes/service/.keep [new file with mode: 0644]
mcp/reclass/classes/system
mcp/scripts/salt.sh

similarity index 97%
rename from mcp/patches/1f59df54.diff
rename to mcp/patches/0001-opendaylight-reclass-system.patch
index 9d1c6fe..dc7c08f 100644 (file)
@@ -1,10 +1,8 @@
-From 1f59df548f3e1461cc0ebf70c29a89205385eb20 Mon Sep 17 00:00:00 2001
 From: Michael Polenchuk <mpolenchuk@mirantis.com>
 Date: Thu, 29 Jun 2017 12:22:42 +0400
 Subject: [PATCH] Bring in opendaylight support
 
 Change-Id: I3efec9a8b586a6c75b1c1635ad2a7024d73d9ad2
----
 
 diff --git a/neutron/control/opendaylight/cluster.yml b/neutron/control/opendaylight/cluster.yml
 new file mode 100644
similarity index 88%
rename from mcp/patches/1a2c7f23.diff
rename to mcp/patches/0002-opendaylight-formula-neutron.patch
index 27ef916..fa175e1 100644 (file)
@@ -1,16 +1,14 @@
-From 1a2c7f23229050b1694565c5e2ee13146001eb18 Mon Sep 17 00:00:00 2001
 From: Michael Polenchuk <mpolenchuk@mirantis.com>
 Date: Thu, 29 Jun 2017 12:05:25 +0400
 Subject: [PATCH] Bring in opendaylight support
 
 Change-Id: Ie9073fafccba336f94b1996bd85c98d7a7f5060b
----
 
 diff --git a/neutron/files/ocata/ml2_conf.ini b/neutron/files/ocata/ml2_conf.ini
 index 0d48951..347eb15 100644
 --- a/neutron/files/ocata/ml2_conf.ini
 +++ b/neutron/files/ocata/ml2_conf.ini
-@@ -269,3 +269,11 @@
+@@ -269,3 +269,11 @@ enable_security_group = True
  # Use ipset to speed-up the iptables based security groups. Enabling ipset
  # support requires that ipset is installed on L2 agent node. (boolean value)
  #enable_ipset = true
@@ -26,47 +24,42 @@ diff --git a/neutron/files/ocata/neutron-generic.conf.Debian b/neutron/files/oca
 index 5b7058d..bc438b9 100644
 --- a/neutron/files/ocata/neutron-generic.conf.Debian
 +++ b/neutron/files/ocata/neutron-generic.conf.Debian
-@@ -33,7 +33,7 @@
+@@ -33,7 +33,7 @@ state_path = /var/lib/neutron
  #auth_strategy = keystone
  auth_strategy = keystone
+
 -{% if neutron.backend.engine == "ml2" %}
 +{% if neutron.backend.engine in ["ml2", "opendaylight"] %}
+
  core_plugin = neutron.plugins.ml2.plugin.Ml2Plugin
+
 diff --git a/neutron/files/ocata/neutron-server b/neutron/files/ocata/neutron-server
 index 54f6ceb..1682ee0 100644
 --- a/neutron/files/ocata/neutron-server
 +++ b/neutron/files/ocata/neutron-server
-@@ -7,10 +7,10 @@
+@@ -7,7 +7,7 @@
  # neutron.conf
  #NEUTRON_PLUGIN_CONFIG="/etc/neutron/plugins/openvswitch/ovs_neutron_plugin.ini"
+
 -{%- if server.backend.engine == "ml2" %}
 +{%- if server.backend.engine in ["ml2", "opendaylight"] %}
  NEUTRON_PLUGIN_CONFIG="/etc/neutron/plugins/ml2/ml2_conf.ini"
  {%- endif %}
- {%- if server.backend.engine == "contrail" %}
- NEUTRON_PLUGIN_CONFIG="/etc/neutron/plugins/opencontrail/ContrailPlugin.ini"
--{%- endif %}
-\ No newline at end of file
-+{%- endif %}
+
 diff --git a/neutron/files/ocata/neutron-server.conf.Debian b/neutron/files/ocata/neutron-server.conf.Debian
 index e320ca4..d6de235 100644
 --- a/neutron/files/ocata/neutron-server.conf.Debian
 +++ b/neutron/files/ocata/neutron-server.conf.Debian
-@@ -39,7 +39,7 @@
+@@ -39,7 +39,7 @@ api_extensions_path = extensions:/usr/lib/python2.7/dist-packages/neutron_plugin
  core_plugin = neutron_plugin_contrail.plugins.opencontrail.contrail_plugin.NeutronPluginContrailCoreV2
+
  service_plugins = neutron_plugin_contrail.plugins.opencontrail.loadbalancer.v2.plugin.LoadBalancerPluginV2
 -{% elif server.backend.engine == "ml2" %}
 +{% elif server.backend.engine in ["ml2", "opendaylight"] %}
+
  core_plugin = neutron.plugins.ml2.plugin.Ml2Plugin
-@@ -831,7 +831,7 @@
+
+@@ -831,7 +831,7 @@ allow_headers = {{ server.cors.allow_headers }}
  # Deprecated group/name - [DEFAULT]/sql_connection
  # Deprecated group/name - [DATABASE]/sql_connection
  # Deprecated group/name - [sql]/connection
@@ -75,9 +68,9 @@ index e320ca4..d6de235 100644
  connection = {{ server.database.engine }}+pymysql://{{ server.database.user }}:{{ server.database.password }}@{{ server.database.host }}/{{ server.database.name }}?charset=utf8
  {% else %}
  connection = sqlite:////var/lib/neutron/neutron.sqlite
-@@ -2194,3 +2194,8 @@
+@@ -2194,3 +2194,8 @@ service_provider = LOADBALANCERV2:Opencontrail:neutron_plugin_contrail.plugins.o
  {% include "neutron/files/"+server.version+"/ContrailPlugin.ini" %}
+
  {% endif %}
 +
 +{%- if server.backend.engine == "opendaylight" %}
@@ -88,12 +81,12 @@ diff --git a/neutron/server.sls b/neutron/server.sls
 index 0b3a6be..7a6bd23 100644
 --- a/neutron/server.sls
 +++ b/neutron/server.sls
-@@ -64,7 +64,7 @@
+@@ -64,7 +64,7 @@ neutron_server_service:
+
  {%- endif %}
+
 -{% if server.backend.engine == "ml2" %}
 +{% if server.backend.engine in ["ml2", "opendaylight"] %}
+
  /etc/neutron/plugins/ml2/ml2_conf.ini:
    file.managed:
index 9f9cdea..d7db735 100755 (executable)
@@ -1,8 +1,7 @@
-#!/bin/sh
+#!/bin/bash
 
 if [ -r "$1" ]; then
   while IFS=': ' read -r p_dest p_file; do
-    patch -d $p_dest -p1 < /root/fuel/mcp/patches/$p_file
+    [[ "${p_dest}" =~ $2 ]] && patch -fd "${p_dest}" -p1 < "/root/fuel/mcp/patches/${p_file}"
   done < $1
 fi
-
index a36bc06..0a84657 100644 (file)
@@ -1,2 +1,2 @@
-/srv/salt/env/prd: 1a2c7f23.diff
-/srv/salt/reclass/classes/system: 1f59df54.diff
+/usr/share/salt-formulas/env: 0002-opendaylight-formula-neutron.patch
+/srv/salt/reclass/classes/system: 0001-opendaylight-reclass-system.patch
diff --git a/mcp/reclass/classes/service/.keep b/mcp/reclass/classes/service/.keep
new file mode 100644 (file)
index 0000000..e69de29
index d2e5ecd..18f5a99 160000 (submodule)
@@ -1 +1 @@
-Subproject commit d2e5ecd5ca54243b18b40f7e2805374e338b7dec
+Subproject commit 18f5a999f03e50de311ef8831ba51b001af3e92c
index c876450..605da89 100755 (executable)
@@ -17,21 +17,20 @@ ssh ${SSH_OPTS} ubuntu@${SALT_MASTER} bash -s << SALT_INSTALL_END
   git clone --depth=1 --recurse-submodules https://git.opnfv.org/fuel
   ln -s /root/fuel/mcp/reclass /srv/salt/reclass
 
+  mkdir -p /usr/share/salt-formulas/reclass
+  cp -r /root/fuel/mcp/metadata/service /usr/share/salt-formulas/reclass
+  cd /srv/salt/reclass/classes/service && ln -s /usr/share/salt-formulas/reclass/service/opendaylight
+  cd /root/fuel/mcp/patches && ./patch.sh patches.list reclass
+
   cd /srv/salt/scripts
   MASTER_HOSTNAME=cfg01.${CLUSTER_DOMAIN} DISTRIB_REVISION=nightly ./salt-master-init.sh
   salt-key -Ay
 
-  cp -r /root/fuel/mcp/metadata/service /usr/share/salt-formulas/reclass
   cp -r /root/fuel/mcp/salt-formulas/* /usr/share/salt-formulas/env
-  cd /srv/salt/reclass/classes/service && ln -s /usr/share/salt-formulas/reclass/service/opendaylight
-
-  cd /root/fuel/mcp/patches && ./patch.sh patches.list
-
-  salt '*' saltutil.refresh_pillar
-  salt '*' saltutil.sync_all
+  cd /root/fuel/mcp/patches && ./patch.sh patches.list formulas
 
   salt-call state.apply salt
-  salt '*' state.apply salt || salt '*' state.apply salt
+  salt '*' state.apply salt | fgrep -q 'No response' && salt '*' state.apply salt
 
   salt -C 'I@salt:master' state.sls linux
   salt -C '* and not cfg01*' state.sls linux