Revision
87606
Author
hum@macports.org
Date
2011-11-28 06:42:42 -0800 (Mon, 28 Nov 2011)

Log Message

hadoop: add_hadoop_user_and_group in pre-active phase to fix binary installation.

Modified Paths

Diff

Modified: trunk/dports/java/hadoop/Portfile (87605 => 87606)


--- trunk/dports/java/hadoop/Portfile	2011-11-28 14:38:51 UTC (rev 87605)
+++ trunk/dports/java/hadoop/Portfile	2011-11-28 14:42:42 UTC (rev 87606)
@@ -74,14 +74,7 @@
     reinplace "s|@hadoop_log_dir@|${hadoop_log_dir}|g" ${env_sh}
     reinplace "s|@hadoop_pid_dir@|${hadoop_pid_dir}|g" ${env_sh}
 
-    # Add Hadoop user and group.
-    addgroup ${hadoopuser}
-    set gid [existsgroup ${hadoopuser}]
-    adduser ${hadoopuser} \
-        gid=${gid} \
-        realname=Hadoop\ Server \
-        home=${hadoop_var_dir} \
-        shell=/bin/bash
+    add_hadoop_user_and_group
 
     # Create working directories.
     xinstall -m 755 -o ${hadoopuser} -g ${hadoopuser} -d \
@@ -94,6 +87,22 @@
         ${destroot}${hadoop_pid_dir}
 }
 
+pre-activate {
+    add_hadoop_user_and_group
+}
+
+proc add_hadoop_user_and_group {} {
+    global hadoopuser hadoop_var_dir
+    if {![existsgroup ${hadoopuser}]} {
+        addgroup ${hadoopuser}
+        adduser ${hadoopuser} \
+            gid=[existsgroup ${hadoopuser}] \
+            realname=Hadoop\ Server \
+            home=${hadoop_var_dir} \
+            shell=/bin/bash
+    }
+}
+
 post-deactivate {
     ui_msg "********************************************************"
     ui_msg "* To revert the system after uninstalling the port:"