#!/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/
-
-# VIM AWS plugin
-make -C RO-VIM-aws clean package
-cp RO-VIM-aws/deb_dist/python3-osm-rovim-aws_*.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/
-
-# VIM azure plugin
-make -C RO-VIM-azure clean package
-cp RO-VIM-azure/deb_dist/python3-osm-rovim-azure_*.deb deb_dist/
-
-# VIM Opennebula plugin
-make -C RO-VIM-opennebula clean package
-cp RO-VIM-opennebula/deb_dist/python3-osm-rovim-opennebula_*.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_openstack &
+tox -e dist_ro_vim_openvim &
+tox -e dist_ro_vim_vmware &
+tox -e dist_ro_vim_gcp &
-# SDN Dynpack plugin
-make -C RO-SDN-dynpac clean package
-cp RO-SDN-dynpac/deb_dist/python3-osm-rosdn-dynpac_*.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/
-# SDN Tapi plugin
-make -C RO-SDN-tapi clean package
-cp RO-SDN-tapi/deb_dist/python3-osm-rosdn-tapi_*.deb deb_dist/
+# NG-RO
+cp NG-RO/deb_dist/python3-osm-ng-ro_*.deb deb_dist/
-# SDN Onos openflow
-make -C RO-SDN-onos_openflow clean package
-cp RO-SDN-onos_openflow/deb_dist/python3-osm-rosdn-onosof_*.deb deb_dist/
+# VIM plugins: vmware, openstack, AWS, fos, azure, GCP
+for vim_plugin in RO-VIM-*
+do
+ cp ${vim_plugin}/deb_dist/python3-osm-rovim*.deb deb_dist/
+done
+# 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