X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FRO.git;a=blobdiff_plain;f=Makefile;h=71425c6cf3c35f3da449f216917aff5898feaf8a;hp=b5e6960f3b499073afcab9b7cc9fa95e7d94ebb5;hb=d40e5512e979654e90b190711c4d3ff14b6a878b;hpb=06e6c396413630640cafae3488442a0869f1642d diff --git a/Makefile b/Makefile index b5e6960f..71425c6c 100644 --- a/Makefile +++ b/Makefile @@ -1,48 +1,78 @@ SHELL := /bin/bash -all: pypackage debpackage +all: package install +clean_deb: + rm -rf .build + +clean: + rm -rf build + find osm_ro -name '*.pyc' -delete + find osm_ro -name '*.pyo' -delete prepare: - mkdir -p build - cp *.py build/ - #cd build; mv openmanod.py openmanod - cp openmano build/ - cp openmanod.cfg build/ + pip install 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 + cp MANIFEST.in build/ cp requirements.txt build/ cp README.rst build/ - cp openmano.service build/ - cp -r vnfs build/ - cp -r scenarios build/ - cp -r instance-scenarios build/ - cp -r scripts build/ - cd build/scripts; mv service-openmano.sh service-openmano; mv openmano-report.sh openmano-report - cp -r database_utils build/ + cp setup.py build/ + cp stdeb.cfg build/ + cp -r osm_ro build/ + cp openmano build/ + cp openmanod build/ + cp -r vnfs build/osm_ro + cp -r scenarios build/osm_ro + cp -r instance-scenarios build/osm_ro + cp -r scripts build/osm_ro + cp -r database_utils build/osm_ro connectors: prepare # python-novaclient is required for that - rm -f build/openmanolinkervimconn.py - cd build; for i in `ls vimconn_*.py |sed "s/\.py//"` ; do echo "import $$i" >> openmanolinkervimconn.py; done - python build/openmanolinkervimconn.py - rm -f build/openmanolinkervimconn.py + rm -f build/osm_ro/openmanolinkervimconn.py + cd build/osm_ro; for i in `ls vimconn_*.py |sed "s/\.py//"` ; do echo "import $$i" >> openmanolinkervimconn.py; done + python build/osm_ro/openmanolinkervimconn.py + rm -f build/osm_ro/openmanolinkervimconn.py -build: prepare - python -m py_compile build/*.py +build: clean connectors prepare + python -m py_compile build/osm_ro/*.py -pypackage: build - cd build; ./setup.py sdist - #cp build/dist/* /root/artifacts/... +pip: prepare + cd build && ./setup.py sdist -debpackage: build - echo "Nothing to be done yet" - #fpm -s python -t deb build/setup.py +package: clean clean_deb 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 + mkdir -p .build + cp build/deb_dist/python-*.deb ./build/ -snappackage: +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 + +develop: prepare + #pip install -r requirements.txt + cd build && ./setup.py develop + test: ./test/basictest.sh --force --insert-bashrc --install-openvim --init-openvim -clean: - rm -rf build - #find build -name '*.pyc' -delete - #find build -name '*.pyo' -delete +build-docker-from-source: + docker build -t osm/openmano -f docker/Dockerfile-local . + +run-docker: + docker-compose -f docker/openmano-compose.yml up + +stop-docker: + docker-compose -f docker/openmano-compose.yml down +