Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Cluster Development (http://www.linux-archive.org/cluster-development/)
-   -   Fix apache resource script (http://www.linux-archive.org/cluster-development/33734-fix-apache-resource-script.html)

"Fabio M. Di Nitto" 01-10-2008 09:12 AM

Fix apache resource script
 
Hi guys,

first bit allows to run the resource on Debian/Ubuntu systems without
manual patching, by checking for the apache2 daemon if httpd is not
available.


second bit makes that piece of code to work. For some reasons the sintax
=~ '^/' doesn't work in recent bash. Replace with something more generic
and less bash dependent.


third bit: not all versions of grep are built with perl regexp support.
For this specific instance, there is no point to use -P. Use -E that
achieve the same result and avoid warnings.


Please apply or ACK.

Thanks
Fabio

PS I am investigating a more deep rewrite of this script as it is buggy in
several different ways... is the original author still working on it or
interested in working with me?


Index: apache.sh
================================================== =================
RCS file: /cvs/cluster/cluster/rgmanager/src/resources/apache.sh,v
retrieving revision 1.10
diff -u -r1.10 apache.sh
--- apache.sh 5 Apr 2007 15:08:19 -0000 1.10
+++ apache.sh 10 Jan 2008 10:06:20 -0000
@@ -32,7 +32,11 @@
. $(dirname $0)/utils/messages.sh
. $(dirname $0)/utils/ra-skelet.sh

-declare APACHE_HTTPD=/usr/sbin/httpd
+if [ -x /usr/sbin/httpd ]; then
+ declare APACHE_HTTPD=/usr/sbin/httpd
+elif [ -x /usr/sbin/apache2 ]; then
+ declare APACHE_HTTPD=/usr/sbin/apache2
+fi
declare APACHE_serverConfigFile
declare APACHE_pid_file="`generate_name_for_pid_file`"
declare APACHE_conf_dir="`generate_name_for_conf_dir`"
@@ -42,7 +46,7 @@

apache_serverConfigFile()
{
- if [[ "$OCF_RESKEY_config_file" =~ '^/' ]]; then
+ if $(echo $OCF_RESKEY_config_file | grep -q "^/"); then
APACHE_serverConfigFile="$OCF_RESKEY_config_file"
else
APACHE_serverConfigFile="$OCF_RESKEY_server_root/$OCF_RESKEY_config_file"
@@ -135,7 +139,7 @@

IFS_old="$IFS"
IFS=$'
'
- for i in `"$APACHE_parseConfig" -D"$OCF_RESKEY_name" < "$originalConfigFile" | grep -P '(^Listen)|(^Port)' | grep -v ':'`; do
+ for i in `"$APACHE_parseConfig" -D"$OCF_RESKEY_name" < "$originalConfigFile" | grep -E '(^Listen)|(^Port)' | grep -v ':'`; do

port=`echo $i | sed 's/^Listen (.*)/1/;s/^Port (.*)/1/'`;
IFS=$' ';
for z in $ip_addresses; do


--
I'm going to make him an offer he can't refuse.


All times are GMT. The time now is 02:59 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.