You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by bu...@apache.org on 2017/11/14 19:08:54 UTC
svn commit: r1815248 [1/3] - in /uima/uima-ducc/trunk: src/main/admin/
src/main/resources/
uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/
uima-ducc-common/src/main/java/org/apache/uima/ducc/common/utils/
Author: burn
Date: Tue Nov 14 19:08:53 2017
New Revision: 1815248
URL: http://svn.apache.org/viewvc?rev=1815248&view=rev
Log:
UIMA-5648 Set ducc.uid from file owner instead of site props
Modified:
uima/uima-ducc/trunk/src/main/admin/ducc_util.py
uima/uima-ducc/trunk/src/main/resources/default.ducc.properties
uima/uima-ducc/trunk/uima-ducc-agent/src/main/java/org/apache/uima/ducc/agent/launcher/CGroupsManager.java
uima/uima-ducc/trunk/uima-ducc-common/src/main/java/org/apache/uima/ducc/common/utils/DuccPropertiesResolver.java
Modified: uima/uima-ducc/trunk/src/main/admin/ducc_util.py
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/src/main/admin/ducc_util.py?rev=1815248&r1=1815247&r2=1815248&view=diff
==============================================================================
--- uima/uima-ducc/trunk/src/main/admin/ducc_util.py (original)
+++ uima/uima-ducc/trunk/src/main/admin/ducc_util.py Tue Nov 14 19:08:53 2017
@@ -25,6 +25,7 @@ import string
import subprocess
import re
import grp
+import pwd
import resource
import time
import platform
@@ -64,6 +65,15 @@ import db_util as dbu
global use_threading
use_threading = True
+# The "ducc" userid is the user that installed DUCC and created this file.
+# If the admin dir's permissions were 700 then could assume the current user is the ducc user
+def find_ducc_uid():
+ my_file = os.path.abspath(__file__)
+ my_stat = os.stat(my_file)
+ my_uid = my_stat.st_uid
+ pwdinfo = pwd.getpwuid(my_uid)
+ return pwdinfo.pw_name
+
class ThreadWorker(Thread):
def __init__(self, queue, outlock):
Thread.__init__(self)
@@ -136,7 +146,7 @@ class DuccUtil(DuccBase):
self.ssh_enabled = self.ducc_properties.get('ducc.ssh')
self.duccling = self.ducc_properties.get('ducc.agent.launcher.ducc_spawn_path')
- self.ducc_uid = self.ducc_properties.get('ducc.uid')
+ self.ducc_uid = find_ducc_uid()
# self.broker_url = self.ducc_properties.get('ducc.broker.url')
self.broker_protocol = self.ducc_properties.get('ducc.broker.protocol')
self.broker_host = self.ducc_properties.get('ducc.broker.hostname')
@@ -639,7 +649,7 @@ class DuccUtil(DuccBase):
duccgid = grpinfo.gr_gid
if ( (dl_stat.st_uid != 0) or (dl_stat.st_gid != duccgid) ):
- print 'ducc_ling module', dl, ': Invalid ownership. Should be root.'+self.ducc_uid
+ print 'ducc_ling module', dl, ': Invalid ownership. Should be '+self.ducc_uid
else:
own_safe = True
except:
@@ -735,6 +745,7 @@ class DuccUtil(DuccBase):
return messages
return None
+
#
# Input is array lines from ps command looking for ducc processes owned this user.
Modified: uima/uima-ducc/trunk/src/main/resources/default.ducc.properties
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/src/main/resources/default.ducc.properties?rev=1815248&r1=1815247&r2=1815248&view=diff
==============================================================================
--- uima/uima-ducc/trunk/src/main/resources/default.ducc.properties (original)
+++ uima/uima-ducc/trunk/src/main/resources/default.ducc.properties Tue Nov 14 19:08:53 2017
@@ -42,9 +42,6 @@
# | General |
# +==================================================================================================+
-# The name of the user that runs the DUCC daemons.
-ducc.uid = ducc
-
# The name of the node where DUCC runs.
# This property declares the node where the DUCC administrative processes run (Orchestrator,
# Resource Manager, Process Manager, Service Manager). This property is required and MUST be