Hi Geoffroy: The call to OSCAR::OCA:OS_Detect::open() needs to come after "&oscar_home_env()" since OCA requires $OSCAR_HOME to be defined. Is there any particular reason why you moved the call? To work around the issue, I just reverted that particular change (moved the call back to the original location). Thanks, Bernard
________________________________
From: [EMAIL PROTECTED] on behalf of [EMAIL PROTECTED]
Sent: Sat 08/07/2006 10:24
To: [EMAIL PROTECTED]
Subject: [Oscar-checkins] r5114 - trunk
Author: valleegr
Date: 2006-07-08 13:24:10 -0400 (Sat, 08 Jul 2006)
New Revision: 5114
Modified:
trunk/install_cluster
Log:
[Debian Port] Management of the OSCAR_HOME environment variable.
Modified: trunk/install_cluster
===================================================================
--- trunk/install_cluster 2006-07-08 05:32:07 UTC (rev 5113)
+++ trunk/install_cluster 2006-07-08 17:24:10 UTC (rev 5114)
@@ -72,6 +72,8 @@
# First of all, enforce that the user running this script is 'root'
croak "You must be 'root' to run this script. Aborting" if ($< != 0 ||
$ENV{'USER'} ne 'root');
+my $os = OSCAR::OCA::OS_Detect::open();
+
# Validate OSCAR_HOME environment variable and write /etc/profile.d files
&oscar_home_env();
@@ -162,7 +164,6 @@
# Check to see if this is a supported platform
oscar_log_subsection("Checking if this is a supported platform");
-my $os = OSCAR::OCA::OS_Detect::open();
if (!$os) {
print("ERROR: This is an unsupported system. Specifically, no module in
OSCAR/OCA/OS_Detect positively identified this as a supported system.\n");
die("Cannot continue");
@@ -310,41 +311,59 @@
if (dirname($0) ne ".") {
carp("You MUST execute the program from within the OSCAR top level
directory!\n");
}
- # do profile.d files already exist?
- my ($dir_csh, $dir_sh) = &profiled_files_read();
- if ($dir_csh ne $dir_sh) {
- print "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
- print "The /etc/profile.d/oscar_home.{csh,sh} files point to\n";
- print "different \$OSCAR_HOME environment variables!\n";
- print "Fix or delete them and rerun this program!\n";
- print "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
- exit 1;
+
+ # Two situations now: we are using an RPM based distro therefore we need
to update /etc/profile.d/, or we are using a Debian-like distro and therefore,
we do not have a /etc/profile.d/ folder (see Debian policies for more
information), and we update /root/.bashrc
+ # First case: Debian-like distro
+ print "geof: $os->{distro}\n";
+ if ($os->{distro} eq "debian") {
+ print "Setup environment variables\n";
+ my $ret = `grep OSCAR /root/.bashrc`;
+ # We update /etc/.bashrc only if we did not do it before
+ if ($ret eq "") {
+ my $cmd4deb = "echo \"OSCAR_HOME=/root/oscar\nexport
OSCAR_HOME\n\" >> /root/.bashrc";
+ system ($cmd4deb);
+ $cmd4deb = "source /root/.bashrc";
+ system ($cmd4deb);
+ }
}
- # is there another OSCAR installation around?
- if ($dir_sh && ($dir_sh ne $ohome)) {
- print "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
- print "The /etc/profile.d/oscar_home.{csh,sh} files already exist\n";
- print "and point to a different OSCAR installation!\n";
- print "If you want to DELETE the other OSCAR installation (!!!)\n";
- print "you should do:\n";
- print " cd $dir_sh\n";
- print " scripts/start_over\n";
- print "Then rerun this script.\n";
- print "ATTENTION: The steps described above will remove all OSCAR\n";
- print "packages and delete all defined cluster nodes!\n";
- print "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
- exit 1;
+ # Second case RPM based distros
+ else {
+ # do profile.d files already exist?
+ my ($dir_csh, $dir_sh) = &profiled_files_read();
+ if ($dir_csh ne $dir_sh) {
+ print "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
+ print "The /etc/profile.d/oscar_home.{csh,sh} files point to\n";
+ print "different \$OSCAR_HOME environment variables!\n";
+ print "Fix or delete them and rerun this program!\n";
+ print "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
+ exit 1;
+ }
+ # is there another OSCAR installation around?
+ if ($dir_sh && ($dir_sh ne $ohome)) {
+ print "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
+ print "The /etc/profile.d/oscar_home.{csh,sh} files already
exist\n";
+ print "and point to a different OSCAR installation!\n";
+ print "If you want to DELETE the other OSCAR installation (!!!)\n";
+ print "you should do:\n";
+ print " cd $dir_sh\n";
+ print " scripts/start_over\n";
+ print "Then rerun this script.\n";
+ print "ATTENTION: The steps described above will remove all
OSCAR\n";
+ print "packages and delete all defined cluster nodes!\n";
+ print "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n";
+ exit 1;
+ }
+ # set environment variable OSCAR_HOME
+ if ($ENV{OSCAR_HOME} ne $ohome) {
+ oscar_log_subsection("Setting env variable OSCAR_HOME to $ohome");
+ $ENV{OSCAR_HOME} = $ohome;
+ }
+ # write profile.d files
+ if (!$dir_sh || !$dir_csh) {
+ oscar_log_subsection("Generating /etc/profile.d/oscar_home.{sh,csh}
files.");
+ &profiled_files_write($ohome);
+ }
}
- # set environment variable OSCAR_HOME
- if ($ENV{OSCAR_HOME} ne $ohome) {
- oscar_log_subsection("Setting env variable OSCAR_HOME to $ohome");
- $ENV{OSCAR_HOME} = $ohome;
- }
- # write profile.d files
- if (!$dir_sh || !$dir_csh) {
- oscar_log_subsection("Generating /etc/profile.d/oscar_home.{sh,csh}
files.");
- &profiled_files_write($ohome);
- }
}
sub profiled_files_read {
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Oscar-checkins mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/oscar-checkins
<<winmail.dat>>
------------------------------------------------------------------------- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________ Oscar-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/oscar-devel
