305551355713c23cb201909a73b6458622ad0c0e
[openstack-build/neutron-build.git] / trusty / debian / rules
1 #!/usr/bin/make -f
2
3 include /usr/share/openstack-pkg-tools/pkgos.make
4 export OSLO_PACKAGE_VERSION=$(shell dpkg-parsechangelog -S Version | sed -e 's/^[[:digit:]]*://' -e 's/[-].*//' -e 's/~/.0/')
5
6 PYTHONS:=$(shell pyversions -vr)
7
8 %:
9         dh $@ --buildsystem=python_distutils --with python2,systemd,sphinxdoc
10
11 override_dh_auto_install:
12         echo "Nothing to do!"
13 #       dh_auto_install
14 #       find . -type d -name tests | xargs rm -fr
15 #       for i in neutron/db/migration/alembic_migrations/versions/*.py ; do \
16 #               install -D -m 0664 $$i debian/tmp/usr/lib/python2.6/dist-packages/$$i ; \
17 #               install -D -m 0664 $$i debian/tmp/usr/lib/python2.7/dist-packages/$$i ; \
18 #       done
19
20 override_dh_install:
21         set -e ; for pyvers in $(PYTHONS) ; do \
22                 python$$pyvers setup.py install --install-layout=deb --root=$(CURDIR)/debian/neutron-common ; \
23                 python$$pyvers setup.py install --install-layout=deb --root=$(CURDIR)/debian/tmp ; \
24                 mkdir -p $(CURDIR)/debian/python-neutron/usr/lib/python$$pyvers/dist-packages ; \
25                 cp -auxf neutron $(CURDIR)/debian/python-neutron/usr/lib/python$$pyvers/dist-packages ; \
26         done
27         tools/generate_config_file_samples.sh
28         bash -c 'for i in $$(find etc/ -name *.ini.sample); do mv $$i $$(dirname $$i)/$$(basename "$$i" .ini.sample).ini; done'
29         mv etc/neutron.conf.sample etc/neutron.conf
30         dh_install -O--buildsystem=python_distutils --fail-missing -X/usr/etc -X/usr/bin
31         rm -rf $(CURDIR)/debian/neutron-common/usr/lib
32         rm -rf $(CURDIR)/debian/neutron-common/usr/bin/quantum*
33         rm -rf $(CURDIR)/debian/neutron-common/usr/etc
34
35         install -D -m 0640 etc/neutron/plugins/ml2/openvswitch_agent.ini                $(CURDIR)/debian/neutron-common/usr/share/neutron-common/openvswitch_agent.ini
36
37         install -D -m 0640 etc/metadata_agent.ini                                       $(CURDIR)/debian/neutron-metadata-agent/usr/share/neutron-metadata-agent/metadata_agent.ini
38         sed -i -e 's|^# nova_metadata_ip = 127.0.0.1|nova_metadata_ip = 127.0.0.1|'     $(CURDIR)/debian/neutron-metadata-agent/usr/share/neutron-metadata-agent/metadata_agent.ini
39
40         # Move the OVS config file, since we use debconf for it
41         rm $(CURDIR)/debian/neutron-common/etc/neutron/plugins/ml2/openvswitch_agent.ini
42         install -D -m 0640 etc/neutron/plugins/ml2/openvswitch_agent.ini $(CURDIR)/debian/neutron-common/usr/share/neutron-common/openvswitch_agent.ini
43
44 override_dh_auto_clean:
45         dh_auto_clean
46         rm -f neutron/vcsversion.py
47         find . -type f -name "*.pyc" | xargs rm -fr
48         rm -rf build neutron.egg-info
49         rm -rf setuptools_git-*-py*.egg/
50         rm -f debian/neutron-common.config \
51                 debian/neutron-common.postinst \
52                 debian/neutron-server.config \
53                 debian/neutron-server.postinst \
54                 debian/neutron-dhcp-agent.postinst \
55                 debian/neutron-metadata-agent.config \
56                 debian/neutron-metadata-agent.postinst
57         rm -f debian/*.init debian/*.service debian/*.upstart
58
59 override_dh_clean:
60         dh_clean
61         find . -type f -name "*.pyc" -delete
62
63 override_dh_auto_test:
64 ifeq (,$(findstring nocheck, $(DEB_BUILD_OPTIONS)))
65         PYTHONPATH=build/* ./run_tests.sh -N -P || true
66 endif
67
68 override_dh_auto_build:
69         dh_auto_build -O--buildsystem=python_distutils
70
71         /usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func neutron-common.config
72         /usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func neutron-common.postinst
73         /usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func neutron-server.config
74         /usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func neutron-server.postinst
75         /usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func neutron-dhcp-agent.postinst
76         /usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func neutron-metadata-agent.postinst
77         /usr/share/openstack-pkg-tools/pkgos_insert_include pkgos_func neutron-metadata-agent.config
78
79 override_dh_sphinxdoc:
80 ifeq (,$(findstring nodocs, $(DEB_BUILD_OPTIONS)))
81         python setup.py build_sphinx
82         cp -rf doc/build/html $(CURDIR)/debian/neutron-doc/usr/share/doc/neutron-doc
83         dh_sphinxdoc -O--buildsystem=python_distutils
84 endif