OSM IM consumed, changes in devops-related files: Makefile, Dockerfile, setup, new...
[osm/RO.git] / Makefile
index 41b265a..8330b74 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,20 +1,29 @@
+.PHONY: all test clean
+
 SHELL := /bin/bash
-all: package install
 
-clean_deb:
-       rm -rf .build
+BRANCH ?= master
+
+all: lib-openvim osm-im
+       $(MAKE) clean_build build
+       $(MAKE) clean_build package
+
+clean: clean_build
+       rm -rf .build openvim IM
 
-clean:
+clean_build:
        rm -rf build
        find osm_ro -name '*.pyc' -delete
        find osm_ro -name '*.pyo' -delete
+
 prepare:
-       pip install --user --upgrade setuptools
+#      ip install --user --upgrade setuptools
        mkdir -p build/
-       VER1=$(shell git describe | sed -e 's/^v//' |cut -d- -f1); \
-       VER2=$(shell git describe | cut -d- -f2); \
-       VER3=$(shell git describe | cut -d- -f3); \
-       echo "$$VER1.dev$$VER2+$$VER3" > build/RO_VERSION
+#      VER1=$(shell git describe | sed -e 's/^v//' |cut -d- -f1); \
+#      VER2=$(shell git describe | cut -d- -f2); \
+#      VER3=$(shell git describe | cut -d- -f3); \
+#      echo "$$VER1.dev$$VER2+$$VER3" > build/RO_VERSION
+       cp tox.ini build/
        cp MANIFEST.in build/
        cp requirements.txt build/
        cp README.rst build/
@@ -36,14 +45,25 @@ connectors: prepare
        python build/osm_ro/openmanolinkervimconn.py
        rm -f build/osm_ro/openmanolinkervimconn.py
 
-build: clean connectors prepare
+build: connectors prepare
        python -m py_compile build/osm_ro/*.py
+#      cd build && tox -e flake8
+
+lib-openvim:
+       $(shell git clone https://osm.etsi.org/gerrit/osm/openvim)
+       LIB_BRANCH=$(shell git -C openvim branch -a|grep -oP 'remotes/origin/\K$(BRANCH)'); \
+       [ -z "$$LIB_BRANCH" ] && LIB_BRANCH='master'; \
+       echo "BRANCH: $(BRANCH)"; \
+       echo "LIB_OPENVIM_BRANCH: $$LIB_BRANCH"; \
+       git -C openvim checkout $$LIB_BRANCH
+       make -C openvim clean lite
 
-pip: prepare
-       cd build && ./setup.py sdist
+osm-im:
+       $(shell git clone https://osm.etsi.org/gerrit/osm/IM)
+       make -C IM clean all
 
-package: clean clean_deb prepare
-       #apt-get install -y python-stdeb
+package: prepare
+#      apt-get install -y python-stdeb
        cd build && python setup.py --command-packages=stdeb.command sdist_dsc --with-python2=True
        cd build && cp osm_ro/scripts/python-osm-ro.postinst deb_dist/osm-ro*/debian/
        cd build/deb_dist/osm-ro* && dpkg-buildpackage -rfakeroot -uc -us
@@ -54,17 +74,25 @@ snap:
        echo "Nothing to be done yet"
 
 install:
-       DEBIAN_FRONTEND=noninteractive apt-get update && \
-       DEBIAN_FRONTEND=noninteractive apt-get install -y python-pip && \
-       pip install --upgrade pip && \
-       dpkg -i .build/*.deb
+       dpkg -i IM/deb_dist/python-osm-im*.deb
+       dpkg -i openvim/.build/python-lib-osm-openvim*.deb
+       dpkg -i .build/python-osm-ro*.deb
+       cd .. && \
+       OSMLIBOVIM_PATH=`python -c 'import lib_osm_openvim; print lib_osm_openvim.__path__[0]'` || FATAL "lib-osm-openvim was not properly installed" && \
+       OSMRO_PATH=`python -c 'import osm_ro; print osm_ro.__path__[0]'` || FATAL "osm-ro was not properly installed" && \
+       USER=root DEBIAN_FRONTEND=noninteractive $$OSMRO_PATH/database_utils/install-db-server.sh --updatedb || FATAL "osm-ro db installation failed" && \
+       USER=root DEBIAN_FRONTEND=noninteractive $$OSMLIBOVIM_PATH/database_utils/install-db-server.sh -u mano -p manopw -d mano_vim_db --updatedb || FATAL "lib-osm-openvim db installation failed"
+       service osm-ro restart
 
 develop: prepare
-       #pip install -r requirements.txt
+#      pip install -r requirements.txt
        cd build && ./setup.py develop
 
 test:
-       ./test/basictest.sh --force --insert-bashrc --install-openvim --init-openvim
+       . ./test/basictest.sh -f --insert-bashrc --install-openvim --init-openvim
+       . ./test/basictest.sh -f reset add-openvim
+       ./test/test_RO.py deploy -n mgmt -t osm -i cirros034 -d local-openvim --timeout=30 --failfast
+       ./test/test_RO.py vim  -t osm  -d local-openvim --timeout=30 --failfast
 
 build-docker-from-source:
        docker build -t osm/openmano -f docker/Dockerfile-local .