#!/usr/bin/make -f

PYTHONS:=$(shell pyversions -vr)
include /usr/share/openstack-pkg-tools/pkgos.make

export OSLO_PACKAGE_VERSION=$(VERSION)

%:
	dh $@ --buildsystem=python_distutils --with python2,sphinxdoc,systemd

override_dh_auto_clean:
	dh_auto_clean -O--buildsystem=python_distutils
	rm -f debian/ironic-common.config debian/ironic-common.postinst debian/ironic-api.postinst debian/ironic-api.config
	rm -rf doc/build
	rm -f debian/*.init debian/*.service debian/*.upstart

override_dh_auto_build:
	dh_auto_build
	/usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func ironic-common.config
	/usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func ironic-common.postinst
	/usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func ironic-api.config
	/usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func ironic-api.postinst

override_dh_auto_install:
	dh_auto_install -O--buildsystem=python_distutils
	# TODO: replace this by generated conf file (see tox.ini)
	install -D -m 0664 etc/ironic/ironic.conf.sample $(CURDIR)/debian/ironic-common/usr/share/ironic-common/ironic.conf
	sed -i 's|#connection=<None>|connection=sqlite:////var/lib/ironic/ironicdb|' $(CURDIR)/debian/ironic-common/usr/share/ironic-common/ironic.conf
	set -e && for pyvers in $(PYTHONS); do \
		cp -rf ironic/db/sqlalchemy/alembic $(CURDIR)/debian/tmp/usr/lib/python$$pyvers/dist-packages/ironic/db/sqlalchemy ; \
	done

override_dh_auto_test:
ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))
	@echo "===> Running tests"
	set -e ; set -x ; for i in 2.7 ; do \
		PYMAJOR=`echo $$i | cut -d'.' -f1` ; \
		echo "===> Testing with python$$i (python$$PYMAJOR)" ; \
		rm -rf .testrepository ; \
		testr-python$$PYMAJOR init ; \
		TEMP_REZ=`mktemp -t` ; \
		PYTHONPATH=$(CURDIR) PYTHON=python$$i testr-python$$PYMAJOR run --subunit | tee $$TEMP_REZ | subunit2pyunit ; \
		cat $$TEMP_REZ | subunit-filter -s --no-passthrough | subunit-stats ; \
		rm -f $$TEMP_REZ ; \
		testr-python$$PYMAJOR slowest ; \
	done
endif

override_dh_sphinxdoc:
ifeq (,$(findstring nodocs, $(DEB_BUILD_OPTIONS)))
	PYTHONPATH=$(CURDIR) sphinx-build -a -b html doc/source $(CURDIR)/debian/ironic-doc/usr/share/doc/ironic-doc/html
## This is a workaround to avoid FTBFS, though a real fix should be found.
	mkdir -p $(CURDIR)/debian/ironic-doc/usr/share/doc/ironic-doc/html/_static
	touch $(CURDIR)/debian/ironic-doc/usr/share/doc/ironic-doc/html/_static/toggle.js
	dh_sphinxdoc -O--buildsystem=python_distutils
endif
