diff options
author | Joey Hess <joey@kodama.kitenet.net> | 2008-09-20 15:36:32 -0400 |
---|---|---|
committer | Joey Hess <joey@kodama.kitenet.net> | 2008-09-20 15:38:02 -0400 |
commit | c51b304d90104b4be7d3150821f44273d5be4376 (patch) | |
tree | 4812a0ff5f79b5b5025a934a72cddb7c885734ee | |
parent | 66c589fa81d0411c6c85c9464acce5c006593327 (diff) |
Fix reversion in use of ikiwiki -verbose -setup with a setup file that enables syslog.
Setup output is once again output to stdout in this case.
Implemented by stashing the verbose/syslog values set in the setup file,
and using those values in the generated wrappers, but not allowing them to take
effect during the setup operation itself, so that command-line options,
appearing before or after -setup, are honored.
Also, some cleanups to how %config is generated for wrappers, removing some
fields that do not need to be recorded inside the wrapper.
-rw-r--r-- | debian/changelog | 3 | ||||
-rwxr-xr-x | ikiwiki.in | 22 |
2 files changed, 16 insertions, 9 deletions
diff --git a/debian/changelog b/debian/changelog index ffa266137..a44b89058 100644 --- a/debian/changelog +++ b/debian/changelog @@ -7,6 +7,9 @@ ikiwiki (2.65) UNRELEASED; urgency=low elements. * progress: Display an error if the progress cannot be parsed, and allow the percent parameter to only optionally end with "%". + * Fix reversion in use of ikiwiki -verbose -setup with a setup file that + enables syslog. Setup output is once again output to stdout in this + case. -- Joey Hess <joeyh@debian.org> Wed, 17 Sep 2008 14:26:56 -0400 diff --git a/ikiwiki.in b/ikiwiki.in index 878d35065..5c2d710b9 100755 --- a/ikiwiki.in +++ b/ikiwiki.in @@ -21,7 +21,13 @@ sub getconfig () { #{{{ GetOptions( "setup|s=s" => sub { require IkiWiki::Setup; + my $verbose=$config{verbose}; + my $syslog=$config{syslog}; IkiWiki::Setup::load($_[1]); + $config{setupverbose}=$config{verbose}; + $config{setupsyslog}=$config{syslog}; + $config{verbose}=$verbose; + $config{syslog}=$syslog; $config{setup}=1; }, "dumpsetup|s=s" => \$config{dumpsetup}, @@ -129,15 +135,13 @@ sub main () { #{{{ debug(gettext("generating wrappers..")); require IkiWiki::Wrapper; my %origconfig=(%config); - my @wrappers=@{$config{wrappers}}; - delete $config{wrappers}; - delete $config{genwrappers}; - foreach my $wrapper (@wrappers) { - %config=(%origconfig, - rebuild => 0, - verbose => undef, - %{$wrapper}, - ); + foreach my $wrapper (@{$config{wrappers}}) { + %config=(%origconfig, %{$wrapper}); + $config{verbose}=$config{setupverbose} + if exists $config{setupverbose}; + $config{syslog}=$config{setupsyslog} + if exists $config{setupsyslog}; + delete @config{qw(setupsyslog setupverbose wrappers genwrappers rebuild)}; checkconfig(); if (! $config{cgi} && ! $config{post_commit}) { $config{post_commit}=1; |