[Bio] / FigCommon / switch_to_release.pl Repository:
ViewVC logotype

Diff of /FigCommon/switch_to_release.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.6, Fri Dec 19 20:59:20 2003 UTC revision 1.7, Tue Dec 23 16:10:48 2003 UTC
# Line 1  Line 1 
1    
2  use FIG;  use FIG;
3    
   
4  #  #
5  # switch_to_release <release_number>  # switch_to_release <release_number>
6  #  #
7  # Change the currently-running release to <release_number>  # Change the currently-running release to <release_number>
8  #  #
9  # Check to be sure that $fig_disk/dist/releases/<release_number> exists  # Check to be sure that $fig_disk/dist/releases/<release_number> exists
10    #
11  # Update $fig_disk/CURRENT_RELEASE with the new release number.  # Update $fig_disk/CURRENT_RELEASE with the new release number.
12    #
13  # Swing the symlinks $fig_disk/FIG/bin and $fig_disk/FIG/CGI to the right place  # Swing the symlinks $fig_disk/FIG/bin and $fig_disk/FIG/CGI to the right place
14  #  #
15    # Create the symlink $fig_disk/disk/releases/current to point to <release_number>
16    #
17    # Expand the environment-specific tool headers from $fig_disk/config/base_tool_hdr
18    # to include the release-specific directories. Place the output in
19    # dist/releases/<release_number>/<arch>.
20    #
21    
22    require SwitchRelease;
23    
24  if (@ARGV != 1)  if (@ARGV != 1)
25  {  {
# Line 19  Line 28 
28    
29  my $release_number = $ARGV[0];  my $release_number = $ARGV[0];
30    
 my $release_dir = "$FIG_Config::fig_disk/dist/releases/$release_number";  
   
31  #  #
32  # FIXME  # We assume the architecture name is keept in $RTARCH in the environment.
33  #  #
34  my $arch = $ENV{RTARCH};  my $arch = $ENV{RTARCH};
35    
36  if (! -d $release_dir)  SwitchRelease::switch_to_release($FIG_Config::fig_disk, $arch, $release_number);
 {  
     die "Release directory $release_dir does not exist"  
 }  
   
 #  
 # Okay, go for it.  
 #  
   
 if (!open(FH, ">$FIG_Config::fig_disk/CURRENT_RELEASE"))  
 {  
     die "Cannot write to $FIG_Config::fig_disk/CURRENT_RELEASE";  
 }  
 print FH "$release_number\n";  
 close(FH);  
   
 #  
 # Symlinks.  
 #  
   
 unlink("$FIG_Config::fig_disk/FIG/bin");  
 symlink("../dist/releases/$release_number/bin/$arch", "$FIG_Config::fig_disk/FIG/bin");  
 unlink("$FIG_Config::fig_disk/FIG/CGI");  
 symlink("../dist/releases/$release_number/CGI", "$FIG_Config::fig_disk/FIG/CGI");  
   
 &FIG::run("cd $release_dir; make clean; make");  
   
 #  
 # Fix up permissions so we can do things as a different user later.  
 #  
   
 chmod(0777, $FIG_Config::fig_disk);  
 chmod(0777, "$FIG_Config::fig_disk/FIG");  
 chmod(0777, "$FIG_Config::fig_disk/FIG/bin");  
 chmod(0777, "$FIG_Config::fig_disk/FIG/CGI");  
37    
 &FIG::run("chmod ugo+w $FIG_Config::fig_disk");  
 &FIG::run("chmod ugo+w $FIG_Config::fig_disk/CURRENT_RELEASE");  
 &FIG::run("chmod ugo+w $FIG_Config::fig_disk/FIG");  
 &FIG::run("chmod ugo+w $FIG_Config::fig_disk/FIG/bin");  
 &FIG::run("chmod ugo+w $FIG_Config::fig_disk/FIG/CGI");  
 &FIG::run("chmod ugo+w $FIG_Config::fig_disk/dist/releases");  
 &FIG::run("chmod  -R ugo+w $release_dir");  

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.7

MCS Webmaster
ViewVC Help
Powered by ViewVC 1.0.3