Просмотр исходного кода

Automatically update website with --help output. Cosmetic
fixes for some help output


git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1810 f882894a-f735-0410-b71e-b25c423dba1c

Ton Voon 18 лет назад
Родитель
Сommit
cf0dee616a
4 измененных файлов с 49 добавлено и 5 удалено
  1. 3 3
      plugins-root/check_dhcp.c
  2. 1 1
      plugins/check_ping.c
  3. 1 1
      plugins/check_ups.c
  4. 44 0
      tools/sync_website

+ 3 - 3
plugins-root/check_dhcp.c

@@ -269,9 +269,6 @@ int main(int argc, char **argv){
 	int dhcp_socket;
 	int result = STATE_UNKNOWN;
 
-	/* this plugin almost certainly needs root permissions. */
-	np_warn_if_not_root();
-	
 	setlocale (LC_ALL, "");
 	bindtextdomain (PACKAGE, LOCALEDIR);
 	textdomain (PACKAGE);
@@ -280,6 +277,9 @@ int main(int argc, char **argv){
 		usage4 (_("Could not parse arguments"));
 		}
 
+	/* this plugin almost certainly needs root permissions. */
+	np_warn_if_not_root();
+	
 	/* create socket for DHCP communications */
 	dhcp_socket=create_dhcp_socket();
 

+ 1 - 1
plugins/check_ping.c

@@ -548,7 +548,7 @@ print_help (void)
 {
 	print_revision (progname, revision);
 
-	printf ("Copyright (c) 1999 Ethan Galstad <nagios@nagios.org>");
+	printf ("Copyright (c) 1999 Ethan Galstad <nagios@nagios.org>\n");
 	printf (COPYRIGHT, copyright, email);
 
 	printf (_("Use ping to check connection statistics for a remote host."));

+ 1 - 1
plugins/check_ups.c

@@ -598,7 +598,7 @@ print_help (void)
 
 	print_revision (progname, revision);
 
-	printf ("Copyright (c) 2000 Tom Shields");
+	printf ("Copyright (c) 2000 Tom Shields\n");
 	printf ("Copyright (c) 2004 Alain Richard <alain.richard@equation.fr>\n");
 	printf ("Copyright (c) 2004 Arnaud Quette <arnaud.quette@mgeups.com>\n");
 	printf (COPYRIGHT, copyright, email);

+ 44 - 0
tools/sync_website

@@ -0,0 +1,44 @@
+#!/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 $pid = open(F, "-|", qw(ssh -n -N -L 25555:127.0.0.1:3306 nagiosplugins.org));
+
+# Allow time for ssh tunnel to be created
+sleep 2;
+
+# To stop the death of ssh tunnel being defunct
+$SIG{CHLD} = 'IGNORE';	
+
+END { kill 'INT', $pid if $pid };
+
+my $dbh = DBI->connect("DBI:mysql:database=drupal;host=127.0.0.1;port=25555", "drupal", $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/</&lt;/g;
+	$help =~ s/>/&gt;/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";