Diff for /doc/loncapafiles/updatequery.piml between versions 1.9 and 1.15

version 1.9, 2002/05/16 15:29:15 version 1.15, 2002/06/09 23:31:09
Line 52  sleep(3); Line 52  sleep(3);
 </perlscript>  </perlscript>
 </file>  </file>
 <file>  <file>
 <target dist='default'>/home/httpd/lonUsers2/</target>  <target dist='default'>/home/httpd/lonTabs/hosts.tab</target>
 <perlscript mode='fg'>  <perlscript mode='fg'>
 $|=1;  $|=1;
 unless (-e "<TARGET />") {  unless (-e "<TARGET />") {
Line 255  my %perlvar; Line 255  my %perlvar;
     if ($configline =~ /^[^\#]*PerlSetVar/) {      if ($configline =~ /^[^\#]*PerlSetVar/) {
  my ($unused,$varname,$varvalue)=split(/\s+/,$configline);   my ($unused,$varname,$varvalue)=split(/\s+/,$configline);
  chomp($varvalue);   chomp($varvalue);
  $perlvar{$varname}=$varvalue;   $perlvar{$varname}=$varvalue if $varvalue!~/^\{\[\[\[\[/;
     }      }
  }   }
  close(CONFIG);   close(CONFIG);
Line 275  my %perlvar; Line 275  my %perlvar;
     }      }
     unless ($perlvar{'lonReceipt'}) {      unless ($perlvar{'lonReceipt'}) {
        my $lonReceipt='';         my $lonReceipt='';
        srand($$.time);         srand(time ^ $$ ^ unpack "%L*", `ps axww | gzip`);
        my @alnum=(0..9,a..z);         my @alnum=(0..9,a..z);
        foreach my $i (1..20) {         foreach my $i (1..20) {
  $lonReceipt.=$alnum[int(rand(36))];   $lonReceipt.=$alnum[int(rand(36))];
Line 299  END Line 299  END
 <perlscript mode='fg'>  <perlscript mode='fg'>
 # read values from loncapa.conf  # read values from loncapa.conf
 my $confdir='/etc/httpd/conf/';  my $confdir='/etc/httpd/conf/';
 #my $confdir='';  
 my $filename='loncapa.conf';  my $filename='loncapa.conf';
 my %perlvar;  my %perlvar;
     if (-e "$confdir$filename") {      if (-e "$confdir$filename") {
Line 454  while (!$flag) { Line 453  while (!$flag) {
   print "ENTER 1, 2, 3, or 4:\n";    print "ENTER 1, 2, 3, or 4:\n";
   my $choice=&lt;&gt;;    my $choice=&lt;&gt;;
   chomp($choice);    chomp($choice);
     $line2insert=&lt;&lt;END;
   $perlvar{'lonHostID'}:$perlvar{'lonDefDomain'}:$perlvar{'lonRole'}:$hostname:$hostaddress
   END
     $date=`date -I`; chomp($date);
     $lonHostID=$perlvar{'lonHostID'};
     $lonHostID=~s/\W//g;
     $lineexistflag=0;
     $hostidexistflag=0;
   if ($choice==1) {    if ($choice==1) {
     $lonCluster='production';      $lonCluster='production'; $flag=1;
     `rm -f ../hosts.tab`;  
     `ln -s production_hosts.tab ../hosts.tab`;  
     $flag=1;  
   }    }
   elsif ($choice==2) {    elsif ($choice==2) {
     $lonCluster='standalone';      $lonCluster='standalone'; $flag=1;
     open(OUT,'&gt;../standalone_hosts.tab') or      open(OUT,'&gt;../'.$lonCluster.'_hosts.tab') or
       die("cannot open loncom/standalone_hosts.tab for output\n");        die('file generation error');
     print(OUT &lt;&lt;END);        print(OUT $line2insert);
 $perlvar{'lonHostID'}:$perlvar{'lonDefDomain'}:$perlvar{'lonRole'}:$hostname:$hostaddress  
 END  
     close(OUT);      close(OUT);
     `rm -f ../hosts.tab`;  
     `ln -s standalone_hosts.tab ../hosts.tab`;  
     $flag=1;  
   }    }
   elsif ($choice==3) {    elsif ($choice==3) {
     $lonCluster='development';      $lonCluster='development'; $flag=1;
     `rm -f loncom/hosts.tab`;  
     `ln -s development_hosts.tab ../hosts.tab`;  
     $flag=1;  
   }    }
   elsif ($choice==4) {    elsif ($choice==4) {
     $lonCluster='existing';      $lonCluster='existing'; $flag=1;
     `rm -f ../hosts.tab`;  
     `touch existing_hosts.tab`;  
     if (-e '/home/httpd/lonTabs/hosts.tab') {      if (-e '/home/httpd/lonTabs/hosts.tab') {
       `cp /home/httpd/lonTabs/hosts.tab ../existing_hosts.tab`;        `cp /home/httpd/lonTabs/hosts.tab ../existing_hosts.tab`;
     }      }
     `ln -s existing_hosts.tab ../hosts.tab`;      else {
     $flag=1;        print &lt;&lt;END;
   There is no existing /home/httpd/lonTabs/hosts.tab
   END
         die('');
       }
   }    }
   elsif ($choice==26) {    elsif ($choice==26) {
     $lonCluster='rawhide';      $lonCluster='rawhide'; $flag=1;
     `rm -f ../hosts.tab`;  
     `ln -s rawhide_hosts.tab ../hosts.tab`;  
     $flag=1;  
   }    }
   else {    if ($flag==1) {
       `rm -f ../hosts.tab`;
       open(IN,'&lt;../'.$lonCluster.'_hosts.tab');
       while(&lt;IN&gt;) {
         if (/^$line2insert$/) {
           $lineexistflag=1;
         }
         if (/^$lonHostID\:/) {
           $hostidexistflag=1;
         }
       }
       close(IN);
       if ($hostidexistflag and !$lineexistflag) {
         print &lt;&lt;END;
   WARNING: $lonHostID already exists inside
   loncapa/loncom/${lonCluster}_hosts.tab.  The entry inside
   ${lonCluster}_hosts.tab does not match your settings.
   The entry inside ${lonCluster}_hosts.tab is being replaced
   with your new values.
   END
         `grep -v "$lonHostID:" ../${lonCluster}_hosts.tab &gt; ../new_${lonCluster}_hosts.tab`;
          open(OUT,'&gt;&gt;../new_'.$lonCluster.'_hosts.tab') or
            die("cannot open loncom/${lonCluster}_hosts.tab for output\n");
            print(OUT $line2insert);
          close(OUT);
         `ln -s new_${lonCluster}_hosts.tab ../hosts.tab`;
         # email appropriate message
         `echo "REPLACE:$lonCluster:$lonHostID:$date:$line2insert" | mail -s "REPLACE:$lonCluster:$lonHostID:$date" installrecord\@mail.lon-capa.org`;
       }
       elsif ($hostidexistflag and $lineexistflag) {
         print &lt;&lt;END;
   Entry exists in ${lonCluster}_hosts.tab.
   END
         `ln -s ${lonCluster}_hosts.tab ../hosts.tab`;
         # email appropriate message
         `echo "STABLEUPDATE:$lonCluster:$lonHostID:$date:$line2insert" | mail -s "STABLEUPDATE:$lonCluster:$lonHostID:$date" installrecord\@mail.lon-capa.org`;
       }
       elsif (!$hostidexistflag and !$lineexistflag) {
         print &lt;&lt;END;
   New entry for $lonCluster.
   END
         `cat ../${lonCluster}_hosts.tab &gt; ../new_${lonCluster}_hosts.tab`;
          open(OUT,'&gt;../new_'.$lonCluster.'_hosts.tab') or
            die("cannot open loncom/${lonCluster}_hosts.tab for output\n");
            print(OUT $line2insert);
          close(OUT);
         `ln -s new_${lonCluster}_hosts.tab ../hosts.tab`;
         # email appropriate message
         `echo "INSERT:$lonCluster:$lonHostID:$date:$line2insert" | mail -s "INSERT:$lonCluster:$lonHostID:$date" installrecord\@mail.lon-capa.org`;
       }
   }    }
 }  }
   

Removed from v.1.9  
changed lines
  Added in v.1.15


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>