summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Southworth <john.southworth@vyatta.com>2012-03-01 00:02:15 +0000
committerJohn Southworth <john.southworth@vyatta.com>2012-03-01 00:02:15 +0000
commit4c335a872a3bc5f8d219d0843cf8dd666f1187e4 (patch)
treeaf79946e1a99a3ab6e561af17ac5d205d89b237d
parentb18bbaf1898fa25f87efca7e9ae68fc5057d1998 (diff)
parentc6cab51384d56d81bd3aad158951c7a9ccc01e3f (diff)
downloadvyatta-cfg-4c335a872a3bc5f8d219d0843cf8dd666f1187e4.tar.gz
vyatta-cfg-4c335a872a3bc5f8d219d0843cf8dd666f1187e4.zip
Merge branch 'oxnard' of git.vyatta.com:/git/vyatta-cfg into oxnard
-rw-r--r--Makefile.am1
-rw-r--r--debian/changelog19
-rw-r--r--debian/vyatta-cfg.postinst.in2
-rw-r--r--scripts/vyatta-log-commit.pl57
4 files changed, 79 insertions, 0 deletions
diff --git a/Makefile.am b/Makefile.am
index ec2dbaf..a26054a 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -102,6 +102,7 @@ sbin_SCRIPTS += scripts/vyatta-load-config.pl
sbin_SCRIPTS += scripts/vyatta-cfg-notify
sbin_SCRIPTS += scripts/vyatta-check-typeless-node.pl
sbin_SCRIPTS += scripts/vyatta-strip-migration-comments.pl
+sbin_SCRIPTS += scripts/vyatta-log-commit.pl
share_perl5_DATA = lib/Vyatta/Config.pm
share_perl5_DATA += lib/Vyatta/File.pm
diff --git a/debian/changelog b/debian/changelog
index a7e897b..c35bc97 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,22 @@
+vyatta-cfg (0.99.70) unstable; urgency=low
+
+ * bug fix for 4718 - enhancement that will log commits in syslog for
+ all
+
+ -- Deepti Kulkarni <deepti@vyatta.com> Tue, 28 Feb 2012 08:23:40 -0800
+
+vyatta-cfg (0.99.69) unstable; urgency=low
+
+ * Revert "Bug fix for 4718 - Log successful commits in messages file."
+
+ -- Deepti Kulkarni <deepti@vyatta.com> Tue, 28 Feb 2012 05:56:19 -0800
+
+vyatta-cfg (0.99.68) unstable; urgency=low
+
+ * Bug fix for 4718 - Log successful commits in messages file.
+
+ -- Deepti Kulkarni <deepti@vyatta.com> Wed, 22 Feb 2012 08:39:45 -0800
+
vyatta-cfg (0.99.67) unstable; urgency=low
* Add ability to differentiate between node types in help text
diff --git a/debian/vyatta-cfg.postinst.in b/debian/vyatta-cfg.postinst.in
index 7ba4332..7ad9339 100644
--- a/debian/vyatta-cfg.postinst.in
+++ b/debian/vyatta-cfg.postinst.in
@@ -44,3 +44,5 @@ done
# handle renamed file (not automatically deleted since it was "conffile")
rm -f /etc/bash_completion.d/20vyatta-cfg
+# create symlink for post commit hook
+ln -sf /opt/vyatta/sbin/vyatta-log-commit.pl /etc/commit/post-hooks.d/10vyatta-log-commit.pl
diff --git a/scripts/vyatta-log-commit.pl b/scripts/vyatta-log-commit.pl
new file mode 100644
index 0000000..b3fe6b2
--- /dev/null
+++ b/scripts/vyatta-log-commit.pl
@@ -0,0 +1,57 @@
+#!/usr/bin/perl
+#
+# **** License ****
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License version 2 as
+# published by the Free Software Foundation.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# A copy of the GNU General Public License is available as
+# `/usr/share/common-licenses/GPL' in the Debian GNU/Linux distribution
+# or on the World Wide Web at `http://www.gnu.org/copyleft/gpl.html'.
+# You can also obtain it by writing to the Free Software Foundation,
+# Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston,
+# MA 02110-1301, USA.
+#
+# This code was originally developed by Vyatta, Inc.
+# Portions created by Vyatta are Copyright (C) 2010 Vyatta, Inc.
+# All Rights Reserved.
+#
+# Author: Deepti Kulkarni
+# Date: Feb 2012
+# Description: Script to log active configuration commits to syslog.
+#
+# **** End License ****
+#
+
+
+use strict;
+use warnings;
+use lib '/opt/vyatta/share/perl5/';
+
+use Vyatta::Config;
+use Sys::Syslog qw(:standard :macros);
+
+#
+# main
+#
+my $commit_status;
+my $cur_tty=`ps -o tty= |head -n1`;
+my $cur_user=`id -un`;
+my $status = $ENV{'COMMIT_STATUS'};
+
+chomp($cur_tty);
+chomp($cur_user);
+
+$commit_status = 'Successful' if ($status eq 'SUCCESS');
+#open log for logging commit details
+if (defined $commit_status) {
+ openlog("commit", "", LOG_USER);
+ syslog ("alert", "$commit_status change to active configuration by user $cur_user on $cur_tty");
+ closelog();
+}
+#end of script