Merge "add scaling support to cirros"
[osm/devops.git] / Makefile
index 8fca853..039333c 100644 (file)
--- a/Makefile
+++ b/Makefile
 #
 BUILD_DIR = build
 
-NSDS := gw_corpa_ns ims_allin1_corpa mwc16_gen_ns mwc16_pe_ns
+NSDS := \
+    gw_corpa_ns \
+    ims_allin1_corpa \
+    mwc16_gen_ns \
+    mwc16_pe_ns \
+    VyOS_ns \
+    cirros_ns \
+    cirros_2vnf_ns \
+    ubuntu_xenial_ns \
+    ping_pong_ns \
+    knt_flownac_ns \
+    knt_flownac-us_ns \
+    sandvine_pts_ns \
+    sonussbc_ns \
+    ref1_ns \
+    ref2_ns \
+    ubuntu_cirros_multidisk_ns
+
 NSD_SRC_DIR := src/nsd
 NSD_BUILD_DIR := $(BUILD_DIR)/nsd
 
@@ -27,7 +44,30 @@ NSD_BUILD_DIRS := $(addprefix $(NSD_BUILD_DIR)/, $(NSDS))
 NSD_PKGS := $(addsuffix .tar.gz, $(NSDS))
 NSD_BUILD_PKGS := $(addprefix $(NSD_BUILD_DIR)_pkgs/, $(NSD_PKGS))
 
-VNFDS := 6wind_vnf gw_corpa_pe1_vnf gw_corpa_pe2_vnf ims_allin1_2p_vnf tidgen_mwc16_vnf
+VNFDS := \
+    6wind_vnf \
+    gw_corpa_pe1_vnf \
+    gw_corpa_pe2_vnf \
+    ims_allin1_2p_vnf \
+    tidgen_mwc16_vnf \
+    VyOS_vnf \
+    cirros_vnf \
+    ubuntu_xenial_vnf \
+    ping_vnf \
+    pong_vnf \
+    knt_fnc_vnf \
+    knt_fne_vnf \
+    knt_fnu_vnf \
+    knt_fnd_vnf \
+    sandvine_pts_vnf \
+    sonus_sbc_vnf \
+    sonus_test_vnf \
+    ref11_vnf \
+    ref21_vnf \
+    ref12_vnf \
+    ref22_vnf \
+    ubuntu_cirros_multidisk_vnf
+
 VNFD_SRC_DIR := src/vnfd
 VNFD_BUILD_DIR := $(BUILD_DIR)/vnfd
 
@@ -37,6 +77,7 @@ VNFD_PKGS := $(addsuffix .tar.gz, $(VNFDS))
 VNFD_BUILD_PKGS := $(addprefix $(VNFD_BUILD_DIR)_pkgs/, $(VNFD_PKGS))
 
 IMS_GITHUB="https://github.com/Metaswitch/clearwater-juju.git"
+CHARM_REPO="https://osm.etsi.org/gerrit/osm/juju-charms.git"
 
 all: $(VNFD_BUILD_PKGS) ${NSD_BUILD_PKGS}
        echo $@
@@ -50,9 +91,15 @@ $(VNFD_BUILD_DIR)/%: $(VNFD_SRC_DIR)/%
 
        src/gen_vnfd_pkg.sh $< $@
 
-$(BUILD_DIR)/clearwater-juju: $(VNFD_BUILD_DIR)/ims_allin1_2p_vnf
+$(BUILD_DIR)/clearwater-juju:
+       mkdir -p $(BUILD_DIR)
        -cd $(BUILD_DIR) && (test -e clearwater-juju || git clone $(IMS_GITHUB))
 
+$(BUILD_DIR)/juju-charms:
+       mkdir -p $(BUILD_DIR)
+       -cd $(BUILD_DIR) && (test -e juju-charms || git clone $(CHARM_REPO))
+       -cd $(BUILD_DIR)/juju-charms && make
+
 $(NSD_BUILD_DIR)/%: $(NSD_SRC_DIR)/%
        mkdir -p $(NSD_BUILD_DIR)
        cp -rf $< $(NSD_BUILD_DIR)
@@ -60,11 +107,27 @@ $(NSD_BUILD_DIR)/%: $(NSD_SRC_DIR)/%
        src/gen_nsd_pkg.sh $< $@
 
 $(BUILD_DIR)/nsd_pkgs/%.tar.gz: $(NSD_BUILD_DIR)/%
-       src/generate_descriptor_pkg.sh $(BUILD_DIR)/nsd_pkgs $<
+       src/generate_descriptor_pkg.sh -d $(BUILD_DIR)/nsd_pkgs $<
 
-$(VNFD_BUILD_DIR)/ims_allin1_2p_vnf/charms/clearwater-aio-proxy: $(BUILD_DIR)/clearwater-juju
-       # Copy the IMS Charm into the IMS vnf package directory before
+$(VNFD_BUILD_DIR)/ims_allin1_2p_vnf/charms/clearwater-aio-proxy: $(VNFD_BUILD_DIR)/ims_allin1_2p_vnf $(BUILD_DIR)/clearwater-juju
+       # Copy the IMS Charm into the IMS vnf package directory before packaging
        cp -rf $(BUILD_DIR)/clearwater-juju/charms/trusty/clearwater-aio-proxy $(VNFD_BUILD_DIR)/ims_allin1_2p_vnf/charms
 
-$(BUILD_DIR)/vnfd_pkgs/%.tar.gz: $(VNFD_BUILD_DIR)/% $(VNFD_BUILD_DIR)/ims_allin1_2p_vnf/charms/clearwater-aio-proxy
-       src/generate_descriptor_pkg.sh $(BUILD_DIR)/vnfd_pkgs $<
+$(VNFD_BUILD_DIR)/6wind_vnf/charms/vpe-router: $(VNFD_BUILD_DIR)/6wind_vnf $(BUILD_DIR)/juju-charms
+       # Copy the PE Charm into the PE vnf package directory before packaging
+       cp -rf $(BUILD_DIR)/juju-charms/builds/vpe-router $(VNFD_BUILD_DIR)/6wind_vnf/charms
+
+$(VNFD_BUILD_DIR)/VyOS_vnf/charms/vyos-proxy: $(VNFD_BUILD_DIR)/VyOS_vnf $(BUILD_DIR)/juju-charms
+       # Copy the PE Charm into the PE vnf package directory before packaging
+       cp -rf $(BUILD_DIR)/juju-charms/builds/vyos-proxy $(VNFD_BUILD_DIR)/VyOS_vnf/charms
+
+$(VNFD_BUILD_DIR)/ping_vnf/charms/pingpong: $(VNFD_BUILD_DIR)/ping_vnf $(BUILD_DIR)/juju-charms
+       # Copy the pingpong Charm into the ping vnf package directory before packaging
+       cp -rf $(BUILD_DIR)/juju-charms/builds/pingpong $(VNFD_BUILD_DIR)/ping_vnf/charms
+
+$(VNFD_BUILD_DIR)/pong_vnf/charms/pingpong: $(VNFD_BUILD_DIR)/pong_vnf $(BUILD_DIR)/juju-charms
+       # Copy the pingpong Charm into the pong vnf package directory before packaging
+       cp -rf $(BUILD_DIR)/juju-charms/builds/pingpong $(VNFD_BUILD_DIR)/pong_vnf/charms
+
+$(BUILD_DIR)/vnfd_pkgs/%.tar.gz: $(VNFD_BUILD_DIR)/% $(VNFD_BUILD_DIR)/ims_allin1_2p_vnf/charms/clearwater-aio-proxy $(VNFD_BUILD_DIR)/6wind_vnf/charms/vpe-router $(VNFD_BUILD_DIR)/VyOS_vnf/charms/vyos-proxy $(VNFD_BUILD_DIR)/ping_vnf/charms/pingpong $(VNFD_BUILD_DIR)/pong_vnf/charms/pingpong
+       src/generate_descriptor_pkg.sh -d $(BUILD_DIR)/vnfd_pkgs $<