download ng-xos-lib library

Change-Id: Ib6e0b69300a74fbed552b65e5753c3d1ccd0dc30
diff --git a/acord/Makefile b/acord/Makefile
index 51dfbb0..3d813a4 100644
--- a/acord/Makefile
+++ b/acord/Makefile
@@ -20,7 +20,7 @@
 
 devstack: download_xos upgrade_pkgs common_devstack local_containers xos devstack_net_fix
 
-xos: prereqs config_dirs xos_download cord_services bootstrap onboarding develconfig
+xos: prereqs config_dirs xos_download cord_services cord_libraries bootstrap onboarding develconfig
 
 onboarding:
 	echo "[ONBOARDING]"
diff --git a/common/Makedefs b/common/Makedefs
index a8ccfeb..5a4560e 100644
--- a/common/Makedefs
+++ b/common/Makedefs
@@ -9,6 +9,7 @@
 
 XOS_DIR              ?= $(HOME_DIR)/xos
 SERVICE_DIR          ?= $(HOME_DIR)/xos_services
+LIBRARY_DIR	     ?= $(HOME_DIR)/xos_libraries
 
 XOS_BOOTSTRAP_PORT   ?= 81
 XOS_UI_PORT          ?= 80
@@ -65,3 +66,5 @@
 OPENSTACK_BRANCH ?= $(DEFAULT_BRANCH)
 OPENSTACK_GIT_URL ?= $(CORD_BASE_GIT_URL)/openstack.git
 
+NG_XOS_LIB_BRANCH ?= $(DEFAULT_BRANCH)
+NG_XOS_LIB_URL ?= $(CORD_BASE_GIT_URL)/ng-xos-lib.git
diff --git a/common/Makefile b/common/Makefile
index 6a54b74..9677e7e 100644
--- a/common/Makefile
+++ b/common/Makefile
@@ -119,6 +119,15 @@
 	git -C $(SERVICE_DIR)/metro-net pull
 	git -C $(SERVICE_DIR)/openstack pull
 
+cord_libraries: $(LIBRARY_DIR) \
+        $(LIBRARY_DIR)/ng-xos-lib
+
+$(LIBRARY_DIR):
+	mkdir -p $(LIBRARY_DIR)
+
+$(LIBRARY_DIR)/ng-xos-lib:
+	git -C $(LIBRARY_DIR) $(GITOPTS) clone -b $(NG_XOS_LIB_BRANCH) $(NG_XOS_LIB_URL)
+
 # bootstrap the containers
 
 RUN_TOSCA_BOOTSTRAP ?= python $(COMMON_DIR)/run_tosca.py $(XOS_BOOTSTRAP_PORT) $(ADMIN_USERNAME) $(ADMIN_PASSWORD)
diff --git a/cord-pod/Makefile b/cord-pod/Makefile
index d0bf779..133ab76 100644
--- a/cord-pod/Makefile
+++ b/cord-pod/Makefile
@@ -11,7 +11,7 @@
 # Include common functions
 include $(COMMON_DIR)/Makefile
 
-xos: prereqs config_dirs xos_download cord_services bootstrap onboarding podconfig
+xos: prereqs config_dirs xos_download cord_services cord_libraries bootstrap onboarding podconfig
 
 onboarding: synchronizers.yaml id_rsa id_rsa.pub
 	@echo "[ONBOARDING]"
diff --git a/frontend/Makefile b/frontend/Makefile
index c3bbc69..f1eeff7 100644
--- a/frontend/Makefile
+++ b/frontend/Makefile
@@ -14,7 +14,7 @@
 # Include common functions
 include $(COMMON_DIR)/Makefile
 
-frontend: prereqs config_dirs xos_download cord_services bootstrap onboarding frontendconfig
+frontend: prereqs config_dirs xos_download cord_services cord_libraries bootstrap onboarding frontendconfig
 
 onboarding:
 	@echo "[ONBOARDING]"
diff --git a/mcord/Makefile b/mcord/Makefile
index 695c1bf..0996dc4 100644
--- a/mcord/Makefile
+++ b/mcord/Makefile
@@ -8,7 +8,7 @@
 DOCKER_PROJECT     ?= mcord
 BOOTSTRAP_PROJECT  ?= mcordbs
 
-xos: prereqs config_dirs xos_download cord_services bootstrap onboarding podconfig
+xos: prereqs config_dirs xos_download cord_services cord_libraries bootstrap onboarding podconfig
 
 onboarding:
 	@echo "[ONBOARDING]"
diff --git a/metronetwork/Makefile b/metronetwork/Makefile
index 5cdf66c..7b6e206 100644
--- a/metronetwork/Makefile
+++ b/metronetwork/Makefile
@@ -14,7 +14,7 @@
 # Include common functions
 include $(COMMON_DIR)/Makefile
 
-metronetwork: prereqs config_dirs xos_download cord_services bootstrap dashboard onboarding ecord_services
+metronetwork: prereqs config_dirs xos_download cord_services cord_libraries bootstrap dashboard onboarding ecord_services
 
 dashboard:
 	$(RUN_TOSCA_BOOTSTRAP) dashboard.yaml
diff --git a/test-standalone/Makefile b/test-standalone/Makefile
index 0bd2afe..147011e 100644
--- a/test-standalone/Makefile
+++ b/test-standalone/Makefile
@@ -35,7 +35,7 @@
 	sudo docker exec -i $(DOCKER_PROJECT)_xos_ui_1 bash -c "cd /opt/xos/tests/api; npm install --production"
 	sudo docker exec $(DOCKER_PROJECT)_xos_ui_1 pip install dredd_hooks
 
-xos: prereqs config_dirs xos_download cord_services test_bootstrap onboarding
+xos: prereqs config_dirs xos_download cord_services cord_libraries test_bootstrap onboarding
 
 test_bootstrap:
 	@echo "[TEST_BOOTSTRAP]"