diff options
author | dermoth <dermoth@nagiosplugins.org> | 2012-11-03 19:07:40 +0000 |
---|---|---|
committer | dermoth <dermoth@nagiosplugins.org> | 2012-11-03 19:07:40 +0000 |
commit | 42a7b3d6d6392a4f1a26090a8dc6de9ae93720f1 (patch) | |
tree | 7384c5a24b40a04e55d9b979e5bdbbbd5d5869af /tools | |
parent | c537d71a3af67d0df4e1e015f6b9dcbb505f08d2 (diff) | |
download | monitoring-plugins-42a7b3d6d6392a4f1a26090a8dc6de9ae93720f1.tar.gz |
Add scripts that update man pages in drupal
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/np_build_from_sf | 11 | ||||
-rwxr-xr-x | tools/update_man_pages | 34 |
2 files changed, 45 insertions, 0 deletions
diff --git a/tools/np_build_from_sf b/tools/np_build_from_sf new file mode 100755 index 00000000..7ba349a6 --- /dev/null +++ b/tools/np_build_from_sf @@ -0,0 +1,11 @@ +#!/bin/bash + +set -xeu + +temp=$(mktemp -d) +trap "cd $HOME; rm -rf $temp; exit 1" EXIT +curl -sS http://nagiosplug.sourceforge.net/snapshot/nagios-plugins-HEAD.tar.gz|tar -C "$temp" --strip-components=1 -xzf - +cd $temp +./configure && make +$HOME/bin/update_man_pages + diff --git a/tools/update_man_pages b/tools/update_man_pages new file mode 100755 index 00000000..5c4a901e --- /dev/null +++ b/tools/update_man_pages @@ -0,0 +1,34 @@ +#!/usr/bin/perl +use strict; +use DBI; +#$ENV{PERL5LIB}="plugins-scripts"; # Needed for utils.pm + +unless ($ENV{DRUPAL_PASSWORD}) { + die "Must set envvar for DRUPAL_PASSWORD"; +} + +my $dbh = DBI->connect("DBI:mysql:database=www;host=127.0.0.1", "www", $ENV{DRUPAL_PASSWORD}); + +my @plugin_paths; +push @plugin_paths, (grep { -x $_ && -f $_ } (<plugins-root/*>, <plugins/*>) ); + +foreach my $plugin_path (@plugin_paths) { + my $plugin = $plugin_path; + $plugin =~ s%.*/%%; + my $help_option = "--help"; + $help_option = "-h" if ($plugin eq "check_icmp"); + my $help = `$plugin_path $help_option` || die "Cannot run $plugin -h"; + $help =~ s/</</g; + $help =~ s/>/>/g; + + my $rows = $dbh->do("UPDATE node SET created=UNIX_TIMESTAMP(NOW()) WHERE title='$plugin'"); + unless ($rows == 1) { + die "Cannot find $plugin in drupal to update - create book page first"; + } + + $dbh->do("UPDATE node_revisions SET timestamp=UNIX_TIMESTAMP(NOW()), log='Updated by update_online_manpage', teaser='$plugin --help', body=? WHERE title='$plugin'", + {}, + "<pre>".$help."</pre>"); +} + +print "Finished\n"; |