Hi again,
dunno if my patches are of any interest but here is one again.
I got a testing platform and a production platform, my testing platform
servers are named the same as my production platform, the only
difference is the domain name. So I wanted to get logs saved in
different path when I install a testing server and a production server,
I patched fai-savelog-ftp and fai.conf to get such an option. You can
now choose between 3 alternatives :
$LOGREMOTEDIR/$hostname/
$LOGREMOTEDIR/$hostname.$domain/
$LOGREMOTEDIR/$domain/$hostname/

Stefan
-- 
 #=- Stefan Berder                  tel : 6 14 80        -=#
 #=- Ingénieur système et réseau          01 53 95 14 80 -=#
 #=- TRANSPAC / DO-DAE-ADMG        mail : [EMAIL PROTECTED] -=#
 #=- /(bb|[^b]{2})/      [EMAIL PROTECTED] -=#
diff -Nru fai-2.6.7.orig/conf/fai.conf fai-2.6.7/conf/fai.conf
--- fai-2.6.7.orig/conf/fai.conf        Thu Jul  8 14:33:40 2004
+++ fai-2.6.7/conf/fai.conf     Thu Mar 24 12:38:44 2005
@@ -41,6 +41,13 @@
 LOGREMOTEDIR="upload"
 # password for login to log server, when using FTP protocol
 LOGPASSWD=
+# Configure the path in which logs will be saved, when using FTP protocol
+# 0 : classic save way, will create a path $LOGREMOTEDIR/$hostname/ to save the
+#     logs
+# 1 : full name instead of hosname, $LOGREMOTEDIR/$fqdn/
+# 2 : create first a domain directory and create a hostname directory inside,
+#     $LOGREMOTEDIR/$domain/$hostname/
+LOGPATH=0
 
 # the configuration space on the install server
 FAI_CONFIGDIR=/usr/local/share/fai
diff -Nru fai-2.6.7.orig/lib/fai-savelog-ftp fai-2.6.7/lib/fai-savelog-ftp
--- fai-2.6.7.orig/lib/fai-savelog-ftp  Wed Jul  9 14:58:00 2003
+++ fai-2.6.7/lib/fai-savelog-ftp       Thu Mar 24 12:39:00 2005
@@ -28,7 +28,17 @@
 use strict;
 use Net::FTP;
 
-chomp (my $hostname = `hostname`);
+my ($hostname, $domain);
+if ($ENV{LOGPATH} == 1) {
+      chomp ($hostname = `hostname --fqdn`);
+}
+elsif ($ENV{LOGPATH} == 2) {
+      chomp ($hostname = `hostname`);
+      chomp ($domain = `hostname --domain`);
+}
+else {
+      chomp ($hostname = `hostname`);
+}
 
 print "Save log files via FTP to [EMAIL 
PROTECTED]:$hostname/$ENV{FAI_ACTION}-$ENV{FAI_RUNDATE}\n";
 
@@ -38,8 +48,15 @@
    or die "Cannot login to FTP server $ENV{LOGSERVER} with login 
$ENV{LOGUSER}.\n";
 $ftp->cwd("$ENV{LOGREMOTEDIR}")
    or die "Cannot change work directory to $ENV{LOGREMOTEDIR}\n";
-my $ftplogdir = 
$ftp->mkdir("$ENV{LOGREMOTEDIR}/$hostname/$ENV{FAI_ACTION}-$ENV{FAI_RUNDATE}", 
1) 
+my $ftplogdir;
+if ($ENV{LOGPATH} == 2) {
+    $ftplogdir = 
$ftp->mkdir("$domain/$hostname/$ENV{FAI_ACTION}-$ENV{FAI_RUNDATE}", 1) 
    or die "Cannot create dir $ENV{FAI_ACTION}-$ENV{FAI_RUNDATE}.\n";
+}
+else {
+    $ftplogdir = $ftp->mkdir("$hostname/$ENV{FAI_ACTION}-$ENV{FAI_RUNDATE}", 
1) 
+   or die "Cannot create dir $ENV{FAI_ACTION}-$ENV{FAI_RUNDATE}.\n";
+}
 $ftp->cwd("$ftplogdir")
    or die "Cannot change work directory to $ftplogdir.\n";
 

Reply via email to