From: [EMAIL PROTECTED] on behalf of Geoffroy VALLEE
Sent: Sun 09/07/2006 08:57
To: [email protected]
Subject: Re: [Oscar-devel] [Oscar-checkins] r5114 - trunk
Hi Bernard,
The reason i did that is explain in the code
(comments) and you can find a
high-level summary in the check-in log: to
setup OSCAR_HOME you call
oscar_home_env() which is based on /etc/profile.d,
but for Debian-like
distros you do not have this folder (and do not have to
have one!). In order
to put a case for Debian in the oscar_home_env()
function, and do what we
need to do, i need to know the current distro,
therefore use OS_Detect.
My mistake was to not unset OSCAR_HOME during my
tests. What is the solution
then since even the first lines of
install_cluster are so dependent to
policies from RPM based
distros?
Le samedi 8 juillet 2006 21:25, Bernard Li a
écrit :
> 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
--
Geoffroy
R. Vallee, Ph.D.
Oak Ridge National
Laboratory Voice: 865-574-3152
P.O.
Box 2008, Bldg.
5600
Fax: 865-576-5491
Oak Ridge, TN
37831
--
Geoff
-------------------------------------------------------------------------
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
------------------------------------------------------------------------- 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
