You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by sm...@apache.org on 2014/10/13 22:40:38 UTC

git commit: SLIDER-487. chown should not be allowed for Slider Apps

Repository: incubator-slider
Updated Branches:
  refs/heads/develop eba79a4de -> 0769354ee


SLIDER-487. chown should not be allowed for Slider Apps


Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/0769354e
Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/0769354e
Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/0769354e

Branch: refs/heads/develop
Commit: 0769354ee03004fbab1402ae504b343bb3523f67
Parents: eba79a4
Author: Sumit Mohanty <sm...@hortonworks.com>
Authored: Mon Oct 13 13:39:34 2014 -0700
Committer: Sumit Mohanty <sm...@hortonworks.com>
Committed: Mon Oct 13 13:39:34 2014 -0700

----------------------------------------------------------------------
 .../memcached-win/package/scripts/memcached.py  |  1 -
 .../memcached/package/scripts/memcached.py      |  1 -
 .../storm-win/package/scripts/service.py        |  1 -
 app-packages/storm/package/scripts/service.py   |  9 ++-----
 .../core/providers/system.py                    | 28 +++++++++++---------
 .../TestDirectoryResource.py                    |  8 +++---
 .../resource_management/TestFileResource.py     | 10 +++----
 7 files changed, 26 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/0769354e/app-packages/memcached-win/package/scripts/memcached.py
----------------------------------------------------------------------
diff --git a/app-packages/memcached-win/package/scripts/memcached.py b/app-packages/memcached-win/package/scripts/memcached.py
index bc9905d..cd560dd 100644
--- a/app-packages/memcached-win/package/scripts/memcached.py
+++ b/app-packages/memcached-win/package/scripts/memcached.py
@@ -37,7 +37,6 @@ class Memcached(Script):
     process_cmd = format("{java64_home}\\bin\\java -Xmx{xmx_val} -Xms{xms_val} -classpath {app_root}\\*;{additional_cp} com.thimbleware.jmemcached.Main --memory={memory_val} --port={port}")
 
     Execute(process_cmd,
-        user=params.app_user,
         logoutput=False,
         wait_for_finish=False,
         pid_file=params.pid_file

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/0769354e/app-packages/memcached/package/scripts/memcached.py
----------------------------------------------------------------------
diff --git a/app-packages/memcached/package/scripts/memcached.py b/app-packages/memcached/package/scripts/memcached.py
index 6e14e86..897a993 100644
--- a/app-packages/memcached/package/scripts/memcached.py
+++ b/app-packages/memcached/package/scripts/memcached.py
@@ -37,7 +37,6 @@ class Memcached(Script):
     process_cmd = format("{java64_home}/bin/java -Xmx{xmx_val} -Xms{xms_val} -classpath {app_root}/*:{additional_cp} com.thimbleware.jmemcached.Main --memory={memory_val} --port={port}")
 
     Execute(process_cmd,
-        user=params.app_user,
         logoutput=False,
         wait_for_finish=False,
         pid_file=params.pid_file

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/0769354e/app-packages/storm-win/package/scripts/service.py
----------------------------------------------------------------------
diff --git a/app-packages/storm-win/package/scripts/service.py b/app-packages/storm-win/package/scripts/service.py
index 1e88e5b..0ddfb47 100644
--- a/app-packages/storm-win/package/scripts/service.py
+++ b/app-packages/storm-win/package/scripts/service.py
@@ -41,7 +41,6 @@ def service(
     cmd = format("{storm_bin} {name} > {log_dir}/{name}.out 2>&1")
 
     Execute(cmd,
-            user=params.storm_user,
             logoutput=False,
             wait_for_finish=False,
             pid_file = pid_file

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/0769354e/app-packages/storm/package/scripts/service.py
----------------------------------------------------------------------
diff --git a/app-packages/storm/package/scripts/service.py b/app-packages/storm/package/scripts/service.py
index db21eb3..fb3f83f 100644
--- a/app-packages/storm/package/scripts/service.py
+++ b/app-packages/storm/package/scripts/service.py
@@ -57,22 +57,18 @@ def service(
 
     if params.security_enabled:
       if name == "nimbus":
-        Execute(format("{kinit_path_local} -kt {storm_server_keytab_path} {storm_jaas_server_principal}"),
-                user=params.storm_user)
+        Execute(format("{kinit_path_local} -kt {storm_server_keytab_path} {storm_jaas_server_principal}"))
       else:
-        Execute(format("{kinit_path_local} -kt {storm_client_keytab_path} {storm_jaas_client_principal}"),
-                user=params.storm_user)
+        Execute(format("{kinit_path_local} -kt {storm_client_keytab_path} {storm_jaas_client_principal}"))
 
     Execute(cmd,
             not_if=no_op_test,
-            user=params.storm_user,
             logoutput=False,
             wait_for_finish=False
     )
 
     if name == "rest_api":
       Execute(crt_pid_cmd,
-              user=params.storm_user,
               logoutput=True,
               tries=6,
               try_sleep=10
@@ -81,7 +77,6 @@ def service(
       content = None
       for i in xrange(12):
         Execute(crt_pid_cmd,
-                user=params.storm_user,
                 logoutput=True
         )
         with open(pid_file) as f:

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/0769354e/slider-agent/src/main/python/resource_management/core/providers/system.py
----------------------------------------------------------------------
diff --git a/slider-agent/src/main/python/resource_management/core/providers/system.py b/slider-agent/src/main/python/resource_management/core/providers/system.py
index 7c56bfc..f32ee3b 100644
--- a/slider-agent/src/main/python/resource_management/core/providers/system.py
+++ b/slider-agent/src/main/python/resource_management/core/providers/system.py
@@ -76,19 +76,21 @@ def _ensure_metadata(path, user, group, mode=None):
       path, existing_mode, mode))
       os.chmod(path, mode)
 
-  if user:
-    uid = _coerce_uid(user)
-    if stat.st_uid != uid:
-      Logger.info(
-        "Changing owner for %s from %d to %s" % (path, stat.st_uid, user))
-      os.chown(path, uid, -1)
-
-  if group:
-    gid = _coerce_gid(group)
-    if stat.st_gid != gid:
-      Logger.info(
-        "Changing group for %s from %d to %s" % (path, stat.st_gid, group))
-      os.chown(path, -1, gid)
+  ## Slider apps should have no need to chown the uid or gid
+  ## Keeping the code around as a reference
+  ## if user:
+  ##   uid = _coerce_uid(user)
+  ##   if stat.st_uid != uid:
+  ##     Logger.info(
+  ##       "Changing owner for %s from %d to %s" % (path, stat.st_uid, user))
+  ##     os.chown(path, uid, -1)
+
+  ## if group:
+  ##   gid = _coerce_gid(group)
+  ##   if stat.st_gid != gid:
+  ##     Logger.info(
+  ##       "Changing group for %s from %d to %s" % (path, stat.st_gid, group))
+  ##     os.chown(path, -1, gid)
 
 
 class FileProvider(Provider):

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/0769354e/slider-agent/src/test/python/resource_management/TestDirectoryResource.py
----------------------------------------------------------------------
diff --git a/slider-agent/src/test/python/resource_management/TestDirectoryResource.py b/slider-agent/src/test/python/resource_management/TestDirectoryResource.py
index d9a262c..0b74708 100644
--- a/slider-agent/src/test/python/resource_management/TestDirectoryResource.py
+++ b/slider-agent/src/test/python/resource_management/TestDirectoryResource.py
@@ -57,8 +57,8 @@ class TestDirectoryResource(TestCase):
       
     os_makedirs_mock.assert_called_with('/a/b/c/d', 0777)
     os_chmod_mock.assert_called_with('/a/b/c/d', 0777)
-    os_chown_mock.assert_any_call('/a/b/c/d', 66, -1)
-    os_chown_mock.assert_any_call('/a/b/c/d', -1, 77)
+    ##os_chown_mock.assert_any_call('/a/b/c/d', 66, -1)
+    ##os_chown_mock.assert_any_call('/a/b/c/d', -1, 77)
   
   @patch.object(os.path, "exists")
   @patch.object(os.path, "dirname")
@@ -90,8 +90,8 @@ class TestDirectoryResource(TestCase):
       
     mkdir_mock.assert_called_with('/a/b/c/d', 0777)
     os_chmod_mock.assert_called_with('/a/b/c/d', 0777)
-    os_chown_mock.assert_any_call('/a/b/c/d', 66, -1)
-    os_chown_mock.assert_any_call('/a/b/c/d', -1, 77)
+    ##os_chown_mock.assert_any_call('/a/b/c/d', 66, -1)
+    ##os_chown_mock.assert_any_call('/a/b/c/d', -1, 77)
     
   @patch.object(os.path, "exists")
   @patch.object(os.path, "dirname")

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/0769354e/slider-agent/src/test/python/resource_management/TestFileResource.py
----------------------------------------------------------------------
diff --git a/slider-agent/src/test/python/resource_management/TestFileResource.py b/slider-agent/src/test/python/resource_management/TestFileResource.py
index 7da0dbd..00b1c08 100644
--- a/slider-agent/src/test/python/resource_management/TestFileResource.py
+++ b/slider-agent/src/test/python/resource_management/TestFileResource.py
@@ -308,10 +308,10 @@ class TestFileResource(TestCase):
     open_mock.assert_called_with('/directory/file', 'wb')
     self.assertEqual(open_mock.call_count, 1)
     stat_mock.assert_called_with('/directory/file')
-    self.assertEqual(chmod_mock.call_count, 1)
-    self.assertEqual(chown_mock.call_count, 2)
-    gid_mock.assert_called_once_with('hdfs')
-    uid_mock.assert_called_once_with('root')
+    ##self.assertEqual(chmod_mock.call_count, 1)
+    ##self.assertEqual(chown_mock.call_count, 2)
+    ##gid_mock.assert_called_once_with('hdfs')
+    ##uid_mock.assert_called_once_with('root')
 
     chmod_mock.reset_mock()
     chown_mock.reset_mock()
@@ -329,4 +329,4 @@ class TestFileResource(TestCase):
     
 
     self.assertEqual(chmod_mock.call_count, 1)
-    self.assertEqual(chown_mock.call_count, 0)
+    ##self.assertEqual(chown_mock.call_count, 0)