From ad092508ea530253700749a3119bf8a24dcc162e Mon Sep 17 00:00:00 2001 From: joey Date: Tue, 29 Jun 2004 00:03:54 +0000 Subject: r1691: * dh_installinit: Added --error-handler option. Based on work by Thom May. Closes: #209090 --- dh_installinit | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) (limited to 'dh_installinit') diff --git a/dh_installinit b/dh_installinit index 360f3783..aba32b84 100755 --- a/dh_installinit +++ b/dh_installinit @@ -81,6 +81,12 @@ preference to the files it normally installs. This parameter is deprecated, use the --name parameter instead. +=item B<--error-handler=>I + +Call the named shell function if running the init script fails. The +function should be provided in the prerm and postinst scripts, before the +#DEBHELPER# token. + =back =head1 NOTES @@ -148,33 +154,33 @@ foreach my $package (@{$dh{DOPACKAGES}}) { if ($params eq '') { $params="defaults"; } - + if (! $dh{NOSCRIPTS}) { if (! $dh{NO_START}) { # update-rc.d, and start script autoscript($package,"postinst", "postinst-init", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); + "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/;s/#ERROR_HANDLER#/$dh{ERROR_HANDLER}/"); if ($dh{R_FLAG}) { # stops script only on remove autoscript($package,"prerm","prerm-init-norestart", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); + "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/;s/#ERROR_HANDLER#/$dh{ERROR_HANDLER}/"); } else { # always stops script autoscript($package,"prerm","prerm-init", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); + "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/;s/#ERROR_HANDLER#/$dh{ERROR_HANDLER}/"); } } else { # just update-rc.d autoscript($package,"postinst", "postinst-init-nostart", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); + "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/;s/#ERROR_HANDLER#/$dh{ERROR_HANDLER}/"); } # removes rc.d links autoscript($package,"postrm","postrm-init", - "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/"); + "s/#SCRIPT#/$script/;s/#INITPARMS#/$params/;s/#ERROR_HANDLER#/$dh{ERROR_HANDLER}/"); } } } -- cgit v1.2.3