Revert "Removing OpenNebula code"
[osm/RO.git] / devops-stages / stage-build.sh
index b1640eb..ae58785 100755 (executable)
@@ -1,5 +1,4 @@
 #!/bin/bash
-
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
 # You may obtain a copy of the License at
 # See the License for the specific language governing permissions and
 # limitations under the License.
 
+set -ex
+
 rm -rf deb_dist/*
 mkdir -p deb_dist
 
-# main RO module
-make -C RO clean package BRANCH=master
-cp RO/deb_dist/python3-osm-ro_*.deb deb_dist/
-
-# RO client
-make -C RO-client clean package
-cp RO-client/deb_dist/python3-osm-roclient_*.deb deb_dist/
-
-# VIM vmware plugin
-make -C RO-VIM-vmware clean package
-cp RO-VIM-vmware/deb_dist/python3-osm-rovim-vmware_*.deb deb_dist/
-
-# VIM Openstack plugin
-make -C RO-VIM-openstack clean package
-cp RO-VIM-openstack/deb_dist/python3-osm-rovim-openstack_*.deb deb_dist/
-
-# VIM Openvim plugin
-make -C RO-VIM-openvim clean package
-cp RO-VIM-openvim/deb_dist/python3-osm-rovim-openvim_*.deb deb_dist/
+# Building packages
+tox -e dist_ro_plugin &
+tox -e dist_ng_ro &
+tox -e dist_ro_sdn_arista_cloudvision &
+tox -e dist_ro_sdn_dpb &
+tox -e dist_ro_sdn_dynpac &
+tox -e dist_ro_sdn_floodlight_of &
+tox -e dist_ro_sdn_ietfl2vpn &
+tox -e dist_ro_sdn_juniper_contrail &
+tox -e dist_ro_sdn_odl_of &
+tox -e dist_ro_sdn_onos_of &
+tox -e dist_ro_sdn_onos_vpls &
+tox -e dist_ro_vim_aws &
+tox -e dist_ro_vim_azure &
+tox -e dist_ro_vim_fos &
+#tox -e dist_ro_vim_opennebula &
+tox -e dist_ro_vim_openstack &
+tox -e dist_ro_vim_openvim &
+tox -e dist_ro_vim_vmware &
+tox -e dist_ro_vim_gcp &
 
-# VIM AWS plugin
-make -C RO-VIM-aws clean package
-cp RO-VIM-aws/deb_dist/python3-osm-rovim-aws_*.deb deb_dist/
+while true; do
+  wait -n || {
+    code="$?"
+    ([[ $code = "127" ]] && exit 0 || exit "$code")
+    break
+  }
+done;
+# Copying packages
+# RO plugin
+cp RO-plugin/deb_dist/python3-osm-ro-plugin_*.deb deb_dist/
 
-# VIM fos plugin
-make -C RO-VIM-fos clean package
-cp RO-VIM-fos/deb_dist/python3-osm-rovim-fos_*.deb deb_dist/
+# NG-RO
+cp NG-RO/deb_dist/python3-osm-ng-ro_*.deb deb_dist/
 
-# VIM azure plugin
-make -C RO-VIM-azure clean package
-cp RO-VIM-azure/deb_dist/python3-osm-rovim-azure_*.deb deb_dist/
+# VIM plugins:  vmware, openstack, AWS, fos, azure, Opennebula, GCP
+for vim_plugin in RO-VIM-*
+do
+    if [ "$vim_plugin" != "RO-VIM-opennebula" ]; then
+        cp ${vim_plugin}/deb_dist/python3-osm-rovim*.deb deb_dist/
+    fi
+done
 
-# VIM Opennebula plugin
-make -C RO-VIM-opennebula clean package
-cp RO-VIM-opennebula/deb_dist/python3-osm-rovim-opennebula_*.deb deb_dist/
+# SDN plugins: DynPac, Ietfl2vpn, Onosof Floodlightof
+for sdn_plugin in RO-SDN-*
+do
+    cp ${sdn_plugin}/deb_dist/python3-osm-rosdn*.deb deb_dist/
+done