#!/usr/bin/perl -w # # The LearningOnline Network with CAPA # # Copyright Michigan State University Board of Trustees # # This file is part of the LearningOnline Network with CAPA (LON-CAPA). # # LON-CAPA is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # LON-CAPA 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. # # You should have received a copy of the GNU General Public License # along with LON-CAPA; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # /home/httpd/html/adm/gpl.txt # # http://www.lon-capa.org/ # =pod =head1 NAME B - automated status report about RPMs on a system, rug version. =head1 DESCRIPTION This file automates the usage of yum to check for available updates to SLES10 systems. Must be run as root or www. =cut use strict; use lib '/home/httpd/lib/perl/'; use LONCAPA::Configuration; my $rug = '/usr/bin/rug'; my $tmpfile = '/tmp/CHECKRPMS.'.$$; # # Determine who we email my %perlvar=%{LONCAPA::Configuration::read_conf('loncapa.conf')}; my $emailto = "$perlvar{'lonAdmEMail'}"; my $subj=$perlvar{'lonHostID'}; undef(%perlvar); # # Put some nice text in $tmpfile my $hostname = `hostname`; chomp($hostname); open(TMPFILE,">$tmpfile"); print TMPFILE localtime(time).' '.$hostname."\n"; print TMPFILE <&1 |")) { my $output=; close(PIPE); chomp $output; unless ($output eq 'No updates are available.') { open(TMPFILE,">>$tmpfile"); print TMPFILE $output; close(TMPFILE); $subj.= ' RPMS to upgrade'; # Send email system(qq{mail -s '$subj' $emailto < $tmpfile}); } } else { # Send email $subj.= ' Error running RPM update check'; system(qq{mail -s '$subj' $emailto < $tmpfile}); }