On Fri, Jul 20, 2012 at 1:16 PM, Ben Pfaff <b...@nicira.com> wrote: > On Fri, Jul 20, 2012 at 12:16:30PM -0700, Ansis Atteka wrote: > > On Fri, Jul 20, 2012 at 9:24 AM, Ben Pfaff <b...@nicira.com> wrote: > > > > > A Debian package is expected to remove all its configuration files > (which > > > includes all files in /etc) when it is purged, but the > > > openvswitch-controller package wasn't doing that. This fixes the > problem. > > > > > > Debian bug #682187. > > > CC: 682...@bugs.debian.org > > > Reported-by: Andreas Beckmann <deb...@abeckmann.de> > > > Signed-off-by: Ben Pfaff <b...@nicira.com> > > ... > > > > +case "$1" in > > > + purge) > > > + cd /etc/openvswitch-controller > > > > > if openvswitch-controller failed to install, because openvswitch-pki was > > not installed, then the directory above would be empty. And it seems > > that dpkg automatically removes empty directories before calling purge > > from this script.. So the command above can fail. > > > > > + rm -f cacert.pem cert.pem privkey.pem req.pem > > > > > Also it seems that post install script might leave some temporary files > > in this directory (if installation failed). Should we attempt to remove > them > > too? > > git am says: > > /home/aatteka/git/openvswitch/.git/rebase-apply/patch:67: new blank line > at > > EOF. > > All good points. The following updated version addresses them. > > Thanks, > > Ben. > > --8<--------------------------cut here-------------------------->8-- > > From: Ben Pfaff <b...@nicira.com> > Date: Fri, 20 Jul 2012 13:15:36 -0700 > Subject: [PATCH] debian: Remove controller keys on openvswitch-controller > package purge. > > A Debian package is expected to remove all its configuration files (which > includes all files in /etc) when it is purged, but the > openvswitch-controller package wasn't doing that. This fixes the problem. > > Debian bug #682187. > CC: 682...@bugs.debian.org > Reported-by: Andreas Beckmann <deb...@abeckmann.de> > Signed-off-by: Ben Pfaff <b...@nicira.com> > --- > debian/automake.mk | 1 + > debian/openvswitch-controller.postrm | 44 > ++++++++++++++++++++++++++++++++++ > 2 files changed, 45 insertions(+), 0 deletions(-) > create mode 100755 debian/openvswitch-controller.postrm > > diff --git a/debian/automake.mk b/debian/automake.mk > index ae82168..b6cb12e 100644 > --- a/debian/automake.mk > +++ b/debian/automake.mk > @@ -22,6 +22,7 @@ EXTRA_DIST += \ > debian/openvswitch-controller.install \ > debian/openvswitch-controller.manpages \ > debian/openvswitch-controller.postinst \ > + debian/openvswitch-controller.postrm \ > debian/openvswitch-datapath-module-_KVERS_.postinst.modules.in \ > debian/openvswitch-datapath-dkms.postinst \ > debian/openvswitch-datapath-dkms.prerm \ > diff --git a/debian/openvswitch-controller.postrm > b/debian/openvswitch-controller.postrm > new file mode 100755 > index 0000000..42cb523 > --- /dev/null > +++ b/debian/openvswitch-controller.postrm > @@ -0,0 +1,44 @@ > +#!/bin/sh > +# postrm script for openvswitch-controller > +# > +# see: dh_installdeb(1) > + > +set -e > + > +# summary of how this script can be called: > +# * <postrm> `remove' > +# * <postrm> `purge' > +# * <old-postrm> `upgrade' <new-version> > +# * <new-postrm> `failed-upgrade' <old-version> > +# * <new-postrm> `abort-install' > +# * <new-postrm> `abort-install' <old-version> > +# * <new-postrm> `abort-upgrade' <old-version> > +# * <disappearer's-postrm> `disappear' <overwriter> > +# <overwriter-version> > +# for details, see http://www.debian.org/doc/debian-policy/ or > +# the debian-policy package > + > + > +case "$1" in > + purge) > + if cd /etc/openvswitch-controller; then > + rm -f cacert.pem cert.pem privkey.pem req.pem > + rm -f tmp-privkey.pem tmp-cert.pem tmp-req.pem > It seems that ovs-pki could also leave its internal temporary files (e.g. tmp-cert.pem.tmp27446) in this directory. Though, I think that this pathological case should be addressed in ovs-pki instead...
+ fi > + ;; > + > + remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) > + ;; > + > + *) > + echo "postrm called with unknown argument \`$1'" >&2 > + exit 1 > + ;; > +esac > + > +# dh_installdeb will replace this with shell code automatically > +# generated by other debhelper scripts. > + > +#DEBHELPER# > + > +exit 0 > -- > 1.7.2.5 > > Looks good. Thanks! Ansis
_______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev