Changeset 5230 in genesis


Ignore:
Timestamp:
May 21, 2006, 7:37:43 PM (19 years ago)
Author:
rick
Message:

Made more generic
/filelist will be filelist
/nodelist will return nodelist

added option to remove certain dirs at the nodedir

Location:
tools
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • tools/FreeBSD5_x/g_list.pl

    r5157 r5230  
    2222};
    2323
     24sub filelist {
     25  foreach $file ( sort @filelist) {
     26    if( $HTML) {
     27      print "$file<BR>\n";
     28    }
     29    else {
     30      print "$file\n";
     31    };
     32  };
     33}
     34
     35sub listnodes {
     36  opendir(DIR, $ndir) || die "can't opendir $ndir: $!";
     37  @tmpdirs = grep { /^[^\.]/ && -d "$ndir/$_" } readdir(DIR);
     38  closedir DIR;
     39  foreach $dir (sort @tmpdirs) {
     40    if( not exists($removefromnodelist{$dir}) )
     41    {
     42      push(@nodelist, $dir);
     43    }
     44    else
     45    {
     46    if ( $debug ) { print "'$dir' removed from list\n"; }
     47    }
     48  };
     49  return @nodelist;
     50}
     51
     52sub nodelist {
     53  foreach $node (listnodes( )) {
     54    if( $HTML) {
     55      print "$node<BR>\n";
     56    }
     57    else {
     58      print "$node\n";
     59    };
     60  };
     61}
    2462
    2563#REQUEST parsen
    2664$request=$ENV{'REQUEST_URI'};
    27 if( $request=~/cgi-bin\/g_list.pl\/(.*)$/) {
     65if( $request=~/.*g_list.pl\/(.*)$/) {
    2866  ($node,$file)=split(/\//,$1);
    2967  $title="$node $file";
     68  if ( $debug ) { print "Node: $node\n"; }
     69  if ( $debug ) { print "File: $file\n"; }
    3070}
    3171else {
     
    64104  }
    65105  else {
    66     g_list( );
    67   };
     106   g_list( );
     107  }
     108}
     109elsif( $node eq 'filelist' ) {
     110  filelist( );
     111}
     112elsif( $node eq 'nodelist' ) {
     113  nodelist( );
    68114}
    69115else {
    70116  if( $file eq '') {
    71     foreach $file ( sort @filelist) {
    72       if( $HTML) {
    73         print "$file<BR>\n";
    74       }
    75       else {
    76         print "$file\n";
    77       };
    78     };
     117      filelist( );
    79118  }
    80119  elsif( $file eq 'config') {
     
    115154  };
    116155
    117   opendir(DIR, $ndir) || die "can't opendir $ndir: $!";
    118   @dirs = grep { /^[^\.]/ && -d "$ndir/$_" } readdir(DIR);
    119   closedir DIR;
     156  @dirs = listnodes( );
    120157  foreach $dir (sort @dirs) {
    121158    if( $dir=~/attic/ ) {
  • tools/FreeBSD5_x/genesis.conf

    r4981 r5230  
    2121$filelist[6]="txtconfig";
    2222$filelist[7]="authorized_keys";
     23
     24#Ignore this node diretories
     25%removefromnodelist = (
     26                      'retired' => 'YES',
     27                      'obsolete' => 'YES',
     28                       );
     29
    2330
    2431#(inter)net env
  • tools/FreeBSD6_x/g_list.pl

    r5157 r5230  
    2222};
    2323
     24sub filelist {
     25  foreach $file ( sort @filelist) {
     26    if( $HTML) {
     27      print "$file<BR>\n";
     28    }
     29    else {
     30      print "$file\n";
     31    };
     32  };
     33}
     34
     35sub listnodes {
     36  opendir(DIR, $ndir) || die "can't opendir $ndir: $!";
     37  @tmpdirs = grep { /^[^\.]/ && -d "$ndir/$_" } readdir(DIR);
     38  closedir DIR;
     39  foreach $dir (sort @tmpdirs) {
     40    if( not exists($removefromnodelist{$dir}) )
     41    {
     42      push(@nodelist, $dir);
     43    }
     44    else
     45    {
     46    if ( $debug ) { print "'$dir' removed from list\n"; }
     47    }
     48  };
     49  return @nodelist;
     50}
     51
     52sub nodelist {
     53  foreach $node (listnodes( )) {
     54    if( $HTML) {
     55      print "$node<BR>\n";
     56    }
     57    else {
     58      print "$node\n";
     59    };
     60  };
     61}
    2462
    2563#REQUEST parsen
    2664$request=$ENV{'REQUEST_URI'};
    27 if( $request=~/cgi-bin\/g_list.pl\/(.*)$/) {
     65if( $request=~/.*g_list.pl\/(.*)$/) {
    2866  ($node,$file)=split(/\//,$1);
    2967  $title="$node $file";
     68  if ( $debug ) { print "Node: $node\n"; }
     69  if ( $debug ) { print "File: $file\n"; }
    3070}
    3171else {
     
    64104  }
    65105  else {
    66     g_list( );
    67   };
     106   g_list( );
     107  }
     108}
     109elsif( $node eq 'filelist' ) {
     110  filelist( );
     111}
     112elsif( $node eq 'nodelist' ) {
     113  nodelist( );
    68114}
    69115else {
    70116  if( $file eq '') {
    71     foreach $file ( sort @filelist) {
    72       if( $HTML) {
    73         print "$file<BR>\n";
    74       }
    75       else {
    76         print "$file\n";
    77       };
    78     };
     117      filelist( );
    79118  }
    80119  elsif( $file eq 'config') {
     
    115154  };
    116155
    117   opendir(DIR, $ndir) || die "can't opendir $ndir: $!";
    118   @dirs = grep { /^[^\.]/ && -d "$ndir/$_" } readdir(DIR);
    119   closedir DIR;
     156  @dirs = listnodes( );
    120157  foreach $dir (sort @dirs) {
    121158    if( $dir=~/attic/ ) {
  • tools/FreeBSD6_x/genesis.conf

    r4746 r5230  
    1717$filelist[6]="txtconfig";
    1818$filelist[7]="authorized_keys";
     19
     20#Ignore this node diretories
     21%removefromnodelist = (
     22                      'retired' => 'YES',
     23                      'obsolete' => 'YES',
     24                       );
     25
    1926
    2027#(inter)net env
Note: See TracChangeset for help on using the changeset viewer.