From 112d25e6b2a20e8e39c1f22f6a30e0130616c64f Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 3 Mar 2016 12:53:41 -0500 Subject: make package build run tests --- packages/debian/rules.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/debian/rules.in b/packages/debian/rules.in index bb2e1d5c..d6cd23ae 100755 --- a/packages/debian/rules.in +++ b/packages/debian/rules.in @@ -16,4 +16,4 @@ override_dh_install: override_dh_auto_test: # Because setup tools didn't copy data... [ ! -d .pybuild/pythonX.Y_?.?/build/tests ] || cp -r tests/data .pybuild/pythonX.Y_?.?/build/tests - http_proxy= dh_auto_test -- --test-nose + http_proxy= make check -- cgit v1.2.3 From 2231c45ac3712c5cb7c1b810c838d3f91f424bf2 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 3 Mar 2016 19:10:18 -0500 Subject: packages/debian: make trunk packaging closer to ubuntu The big difference is using: ${python3:Depends} or ${python:Depends} rather than explicitly listing the dependencies (via template ${requires}). which means we get paths of /usr/lib/python3/dist-packages/.. rather than /usr/lib/python3.5/dist-packages/.. when built on xenial. Additionally it seems we no longer need this strange line. # Because setup tools didn't copy data... --- packages/debian/control.in | 2 +- packages/debian/rules.in | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) (limited to 'packages') diff --git a/packages/debian/control.in b/packages/debian/control.in index 5fe16e43..1c4f522c 100644 --- a/packages/debian/control.in +++ b/packages/debian/control.in @@ -18,8 +18,8 @@ Package: cloud-init Architecture: all Depends: procps, ${python}, - ${requires}, ${misc:Depends}, + ${${python}:Depends} Recommends: eatmydata, sudo, software-properties-common, gdisk XB-Python-Version: ${python:Versions} Description: Init scripts for cloud instances diff --git a/packages/debian/rules.in b/packages/debian/rules.in index d6cd23ae..66e80946 100755 --- a/packages/debian/rules.in +++ b/packages/debian/rules.in @@ -1,9 +1,8 @@ ## template:basic #!/usr/bin/make -f - INIT_SYSTEM ?= upstart,systemd -PYVER ?= python${pyver} export PYBUILD_INSTALL_ARGS=--init-system=$(INIT_SYSTEM) +PYVER ?= python${pyver} %: dh $@ --with $(PYVER),systemd --buildsystem pybuild @@ -14,6 +13,7 @@ override_dh_install: cp tools/21-cloudinit.conf debian/cloud-init/etc/rsyslog.d/21-cloudinit.conf override_dh_auto_test: - # Because setup tools didn't copy data... - [ ! -d .pybuild/pythonX.Y_?.?/build/tests ] || cp -r tests/data .pybuild/pythonX.Y_?.?/build/tests http_proxy= make check + +override_dh_systemd_start: + dh_systemd_start --no-restart-on-upgrade --no-start -- cgit v1.2.3 From cc92c32ea6e70de44ad0bd1e7c64f17e7fb23304 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 3 Mar 2016 22:00:14 -0500 Subject: support nocheck in building. --- packages/debian/rules.in | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/debian/rules.in b/packages/debian/rules.in index 66e80946..16f9b817 100755 --- a/packages/debian/rules.in +++ b/packages/debian/rules.in @@ -12,8 +12,13 @@ override_dh_install: install -d debian/cloud-init/etc/rsyslog.d cp tools/21-cloudinit.conf debian/cloud-init/etc/rsyslog.d/21-cloudinit.conf +ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) override_dh_auto_test: - http_proxy= make check + http_proxy= make check +endif + +override_dh_systemd_enable: + dh_systemd_enable --no-enable override_dh_systemd_start: dh_systemd_start --no-restart-on-upgrade --no-start -- cgit v1.2.3 From d1c7de36c5d5042919ea2dec6bb5bd00688f9534 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Thu, 3 Mar 2016 22:03:34 -0500 Subject: packages/bddeb: copy all files in packages/debian/ just copy all the files that are there. makes adding files easier. --- packages/bddeb | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'packages') diff --git a/packages/bddeb b/packages/bddeb index c4efe264..c141b1ab 100755 --- a/packages/bddeb +++ b/packages/bddeb @@ -1,5 +1,6 @@ #!/usr/bin/env python3 +import glob import os import shutil import sys @@ -105,11 +106,11 @@ def write_debian_folder(root, version, revno, pkgmap, util.abs_join(deb_dir, 'rules'), params={'python': python, 'pyver': pyver}) - # Just copy the following directly - for base_fn in ['dirs', 'copyright', 'compat']: - shutil.copy(util.abs_join(find_root(), - 'packages', 'debian', base_fn), - util.abs_join(deb_dir, base_fn)) + # Just copy any other files directly (including .in) + pdeb_d = util.abs_join(find_root(), 'packages', 'debian') + for f in [os.path.join(pdeb_d, f) for f in os.listdir(pdeb_d)]: + if os.path.isfile(f): + shutil.copy(f, util.abs_join(deb_dir, os.path.basename(f))) def main(): -- cgit v1.2.3 From 964aeaa9c1eac3fafa73ef9abf344613a093cb06 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Fri, 4 Mar 2016 00:01:08 -0500 Subject: postinst/preinst: cleanup old multi-user.target enabled files also, actually enable the services. now this will have them enabled in the cloud-init.target. --- packages/debian/cloud-init.postinst | 17 +++++++++++++++++ packages/debian/cloud-init.preinst | 22 ++++++++++++++++++++++ packages/debian/rules.in | 3 --- 3 files changed, 39 insertions(+), 3 deletions(-) create mode 100644 packages/debian/cloud-init.postinst create mode 100644 packages/debian/cloud-init.preinst (limited to 'packages') diff --git a/packages/debian/cloud-init.postinst b/packages/debian/cloud-init.postinst new file mode 100644 index 00000000..f1222b42 --- /dev/null +++ b/packages/debian/cloud-init.postinst @@ -0,0 +1,17 @@ +#!/bin/sh +set -x +cleanup_lp1552999() { + local oldver="$1" last_bad_ver="0.7.7~bzr1178" + dpkg --compare-versions "$oldver" le "$last_bad_ver" || return 0 + local edir="/etc/systemd/system/multi-user.target.wants" + rm -f "$edir/cloud-config.service" "$edir/cloud-final.service" \ + "$edir/cloud-init-local.service" "$edir/cloud-init.service" +} + + +#DEBHELPER# + +if [ "$1" = "configure" ]; then + oldver="$2" + cleanup_lp1552999 "$oldver" +fi diff --git a/packages/debian/cloud-init.preinst b/packages/debian/cloud-init.preinst new file mode 100644 index 00000000..babaab6c --- /dev/null +++ b/packages/debian/cloud-init.preinst @@ -0,0 +1,22 @@ +#!/bin/sh +# vi: ts=4 expandtab + +set -x +cleanup_lp1552999() { + local oldver="$1" last_bad_ver="0.7.7~bzr1178" + dpkg --compare-versions "$oldver" le "$last_bad_ver" || return 0 + local hdir="/var/lib/systemd/deb-systemd-helper-enabled" + hdir="$hdir/multi-user.target.wants" + local edir="/etc/systemd/system/multi-user.target.wants" + rm -f "$hdir/cloud-config.service" "$hdir/cloud-final.service" \ + "$hdir/cloud-init-local.service" "$hdir/cloud-init.service" +} + + +if [ "$1" = "upgrade" ]; then + oldver="$2" + cleanup_lp1552999 "$oldver" +fi +set +x + +#DEBHELPER# diff --git a/packages/debian/rules.in b/packages/debian/rules.in index 16f9b817..a24720f4 100755 --- a/packages/debian/rules.in +++ b/packages/debian/rules.in @@ -17,8 +17,5 @@ override_dh_auto_test: http_proxy= make check endif -override_dh_systemd_enable: - dh_systemd_enable --no-enable - override_dh_systemd_start: dh_systemd_start --no-restart-on-upgrade --no-start -- cgit v1.2.3 From a782829a083c7170df62dda94d6b7441963dcb94 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Fri, 4 Mar 2016 00:10:36 -0500 Subject: remove debug set -x --- packages/debian/cloud-init.postinst | 1 - packages/debian/cloud-init.preinst | 2 -- 2 files changed, 3 deletions(-) (limited to 'packages') diff --git a/packages/debian/cloud-init.postinst b/packages/debian/cloud-init.postinst index f1222b42..cdd0466d 100644 --- a/packages/debian/cloud-init.postinst +++ b/packages/debian/cloud-init.postinst @@ -1,5 +1,4 @@ #!/bin/sh -set -x cleanup_lp1552999() { local oldver="$1" last_bad_ver="0.7.7~bzr1178" dpkg --compare-versions "$oldver" le "$last_bad_ver" || return 0 diff --git a/packages/debian/cloud-init.preinst b/packages/debian/cloud-init.preinst index babaab6c..3c2af06d 100644 --- a/packages/debian/cloud-init.preinst +++ b/packages/debian/cloud-init.preinst @@ -1,7 +1,6 @@ #!/bin/sh # vi: ts=4 expandtab -set -x cleanup_lp1552999() { local oldver="$1" last_bad_ver="0.7.7~bzr1178" dpkg --compare-versions "$oldver" le "$last_bad_ver" || return 0 @@ -17,6 +16,5 @@ if [ "$1" = "upgrade" ]; then oldver="$2" cleanup_lp1552999 "$oldver" fi -set +x #DEBHELPER# -- cgit v1.2.3 From ea5ffb88f2d3b5f55699955520012596de1d8af5 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Fri, 4 Mar 2016 00:18:51 -0500 Subject: fix tab in rules --- packages/debian/rules.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/debian/rules.in b/packages/debian/rules.in index a24720f4..988b5bc7 100755 --- a/packages/debian/rules.in +++ b/packages/debian/rules.in @@ -14,7 +14,7 @@ override_dh_install: ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) override_dh_auto_test: - http_proxy= make check + http_proxy= make check endif override_dh_systemd_start: -- cgit v1.2.3 From 9b0cbf54a90d2434e2a93e34664646ee8638fc97 Mon Sep 17 00:00:00 2001 From: Scott Moser Date: Fri, 4 Mar 2016 00:34:37 -0500 Subject: fix packages/debian/rules.in --- packages/debian/rules.in | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'packages') diff --git a/packages/debian/rules.in b/packages/debian/rules.in index 988b5bc7..5420949c 100755 --- a/packages/debian/rules.in +++ b/packages/debian/rules.in @@ -12,9 +12,11 @@ override_dh_install: install -d debian/cloud-init/etc/rsyslog.d cp tools/21-cloudinit.conf debian/cloud-init/etc/rsyslog.d/21-cloudinit.conf -ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) override_dh_auto_test: +ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) http_proxy= make check +else + @echo check disabled by DEB_BUILD_OPTIONS=$(DEB_BUILD_OPTIONS) endif override_dh_systemd_start: -- cgit v1.2.3