You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by de...@apache.org on 2017/10/13 13:13:18 UTC
svn commit: r1812126 -
/uima/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/ResourceClass.java
Author: degenaro
Date: Fri Oct 13 13:13:18 2017
New Revision: 1812126
URL: http://svn.apache.org/viewvc?rev=1812126&view=rev
Log:
UIMA-5618 DUCC Resource Manager (RM) should restrict JobDriver allocation to user "ducc"
Modified:
uima/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/ResourceClass.java
Modified: uima/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/ResourceClass.java
URL: http://svn.apache.org/viewvc/uima/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/ResourceClass.java?rev=1812126&r1=1812125&r2=1812126&view=diff
==============================================================================
--- uima/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/ResourceClass.java (original)
+++ uima/uima-ducc/trunk/uima-ducc-rm/src/main/java/org/apache/uima/ducc/rm/scheduler/ResourceClass.java Fri Oct 13 13:13:18 2017
@@ -26,7 +26,9 @@ import java.util.Map;
import org.apache.uima.ducc.common.utils.DuccLogger;
import org.apache.uima.ducc.common.utils.DuccProperties;
+import org.apache.uima.ducc.common.utils.DuccPropertiesResolver;
import org.apache.uima.ducc.common.utils.SystemPropertyResolver;
+import org.apache.uima.ducc.common.utils.id.DuccId;
/**
@@ -37,7 +39,8 @@ public class ResourceClass
IEntity
{
private static DuccLogger logger = DuccLogger.getLogger(ResourceClass.class, COMPONENT_NAME);
-
+ private static DuccId jobid = null;
+
private String id;
private Policy policy;
private int priority; // orders evaluation of the class
@@ -84,8 +87,13 @@ public class ResourceClass
private static Comparator<IEntity> apportionmentSorter = new ApportionmentSorterCl();
+ private static DuccPropertiesResolver dpr = DuccPropertiesResolver.getInstance();
+ private static final String ducc_jd_host_class = dpr.getProperty(DuccPropertiesResolver.ducc_jd_host_class);
+ private static final String ducc_jd_host_user = dpr.getProperty(DuccPropertiesResolver.ducc_jd_host_user);
+
public ResourceClass(DuccProperties props)
{
+ String location = "ResourceClass";
//
// We can assume everything useful is here because the parser insured it
//
@@ -94,6 +102,16 @@ public class ResourceClass
this.priority = props.getIntProperty("priority");
// (Note: the share quantum is set when the nodepool is set because it isn't known quite yet in the constructor.)
+ // We put the jd.host.user as authorized for the jd.host.class
+ if(ducc_jd_host_class != null) {
+ if(ducc_jd_host_class.equals(this.id)) {
+ if(ducc_jd_host_user != null) {
+ authorizedUsers.put(ducc_jd_host_user, ducc_jd_host_user);
+ logger.info(location, jobid, "jd.host.class="+ducc_jd_host_class+" "+"jd.host.user="+ducc_jd_host_user);
+ }
+ }
+ }
+
String userset = props.getProperty("users");
if ( userset != null ) {
String[] usrs = userset.split("\\s+");