Sfoglia il codice sorgente

AMBARI-13855. Ambari does not change permissions and owner/group for log and PID directories during install on cluster with UMASK 027 + non-root agent (aonishuk)

Andrew Onishuk 9 anni fa
parent
commit
14c13c1c64

+ 2 - 1
ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/scripts/ams.py

@@ -241,7 +241,8 @@ def ams(name=None):
               owner=params.ams_user,
               owner=params.ams_user,
               group=params.user_group,
               group=params.user_group,
               cd_access="a",
               cd_access="a",
-              recursive=True
+              recursive=True,
+              mode=0755,
     )
     )
 
 
     Directory(params.ams_collector_pid_dir,
     Directory(params.ams_collector_pid_dir,

+ 6 - 2
ambari-server/src/main/resources/common-services/AMBARI_METRICS/0.1.0/package/scripts/hbase.py

@@ -176,12 +176,16 @@ def hbase(name=None # 'master' or 'regionserver' or 'client'
   if name != "client":
   if name != "client":
     Directory( params.hbase_pid_dir,
     Directory( params.hbase_pid_dir,
                owner = params.hbase_user,
                owner = params.hbase_user,
-               recursive = True
+               recursive = True,
+               cd_access = "a",
+               mode = 0755,
     )
     )
 
 
     Directory (params.hbase_log_dir,
     Directory (params.hbase_log_dir,
                owner = params.hbase_user,
                owner = params.hbase_user,
-               recursive = True
+               recursive = True,
+               cd_access = "a",
+               mode = 0755,
     )
     )
 
 
   if name == "master":
   if name == "master":

+ 8 - 2
ambari-server/src/main/resources/common-services/FALCON/0.5.0.2.1/package/scripts/falcon.py

@@ -41,11 +41,17 @@ def falcon(type, action = None, upgrade_type=None):
   if action == 'config':
   if action == 'config':
     Directory(params.falcon_pid_dir,
     Directory(params.falcon_pid_dir,
       owner = params.falcon_user,
       owner = params.falcon_user,
-      recursive = True)
+      recursive = True,
+      mode = 0755,
+      cd_access = "a",
+    )
 
 
     Directory(params.falcon_log_dir,
     Directory(params.falcon_log_dir,
       owner = params.falcon_user,
       owner = params.falcon_user,
-      recursive = True)
+      recursive = True,
+      mode = 0755,
+      cd_access = "a",
+    )
 
 
     Directory(params.falcon_webapp_dir,
     Directory(params.falcon_webapp_dir,
       owner = params.falcon_user,
       owner = params.falcon_user,

+ 3 - 1
ambari-server/src/main/resources/common-services/KNOX/0.5.0.2.2/package/scripts/knox.py

@@ -93,7 +93,9 @@ def knox():
       Directory(directory,
       Directory(directory,
                 owner = params.knox_user,
                 owner = params.knox_user,
                 group = params.knox_group,
                 group = params.knox_group,
-                recursive = True
+                recursive = True,
+                cd_access = "a",
+                mode = 0755,
       )
       )
 
 
     XmlConfig("gateway-site.xml",
     XmlConfig("gateway-site.xml",

+ 9 - 4
ambari-server/src/test/python/stacks/2.0.6/AMBARI_METRICS/test_metrics_collector.py

@@ -22,7 +22,7 @@ from stacks.utils.RMFTestCase import *
 
 
 @patch("os.path.exists", new = MagicMock(return_value=True))
 @patch("os.path.exists", new = MagicMock(return_value=True))
 @patch("platform.linux_distribution", new = MagicMock(return_value="Linux"))
 @patch("platform.linux_distribution", new = MagicMock(return_value="Linux"))
-class TestOozieClient(RMFTestCase):
+class TestMetricsCollector(RMFTestCase):
   COMMON_SERVICES_PACKAGE_DIR = "AMBARI_METRICS/0.1.0/package"
   COMMON_SERVICES_PACKAGE_DIR = "AMBARI_METRICS/0.1.0/package"
   STACK_VERSION = "2.0.6"
   STACK_VERSION = "2.0.6"
 
 
@@ -124,7 +124,8 @@ class TestOozieClient(RMFTestCase):
                               owner = 'ams',
                               owner = 'ams',
                               group = 'hadoop',
                               group = 'hadoop',
                               cd_access = 'a',
                               cd_access = 'a',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
     )
     )
     self.assertResourceCalled('Directory', '/var/run/ambari-metrics-collector',
     self.assertResourceCalled('Directory', '/var/run/ambari-metrics-collector',
                               owner = 'ams',
                               owner = 'ams',
@@ -229,11 +230,15 @@ class TestOozieClient(RMFTestCase):
                               )
                               )
     self.assertResourceCalled('Directory', '/var/run/ambari-metrics-collector/',
     self.assertResourceCalled('Directory', '/var/run/ambari-metrics-collector/',
                               owner = 'ams',
                               owner = 'ams',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
     self.assertResourceCalled('Directory', '/var/log/ambari-metrics-collector',
     self.assertResourceCalled('Directory', '/var/log/ambari-metrics-collector',
                               owner = 'ams',
                               owner = 'ams',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
 
 
     if name == 'master':
     if name == 'master':

+ 6 - 2
ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_client.py

@@ -37,11 +37,15 @@ class TestFalconClient(RMFTestCase):
     )
     )
     self.assertResourceCalled('Directory', '/var/run/falcon',
     self.assertResourceCalled('Directory', '/var/run/falcon',
                               owner = 'falcon',
                               owner = 'falcon',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
                               )
                               )
     self.assertResourceCalled('Directory', '/var/log/falcon',
     self.assertResourceCalled('Directory', '/var/log/falcon',
                               owner = 'falcon',
                               owner = 'falcon',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
                               )
                               )
     self.assertResourceCalled('Directory', '/var/lib/falcon/webapp',
     self.assertResourceCalled('Directory', '/var/lib/falcon/webapp',
                               owner = 'falcon',
                               owner = 'falcon',

+ 10 - 2
ambari-server/src/test/python/stacks/2.1/FALCON/test_falcon_server.py

@@ -81,11 +81,15 @@ class TestFalconServer(RMFTestCase):
   def assert_configure_default(self):
   def assert_configure_default(self):
     self.assertResourceCalled('Directory', '/var/run/falcon',
     self.assertResourceCalled('Directory', '/var/run/falcon',
                               owner = 'falcon',
                               owner = 'falcon',
-                              recursive = True
+                              recursive = True,
+                              cd_access = "a",
+                              mode = 0755,
                               )
                               )
     self.assertResourceCalled('Directory', '/var/log/falcon',
     self.assertResourceCalled('Directory', '/var/log/falcon',
                               owner = 'falcon',
                               owner = 'falcon',
-                              recursive = True
+                              recursive = True,
+                              cd_access = "a",
+                              mode = 0755,
                               )
                               )
     self.assertResourceCalled('Directory', '/var/lib/falcon/webapp',
     self.assertResourceCalled('Directory', '/var/lib/falcon/webapp',
                               owner = 'falcon',
                               owner = 'falcon',
@@ -243,10 +247,14 @@ class TestFalconServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/var/run/falcon',
     self.assertResourceCalled('Directory', '/var/run/falcon',
         owner = 'falcon',
         owner = 'falcon',
         recursive = True,
         recursive = True,
+        cd_access = "a",
+        mode = 0755,
     )
     )
     self.assertResourceCalled('Directory', '/var/log/falcon',
     self.assertResourceCalled('Directory', '/var/log/falcon',
         owner = 'falcon',
         owner = 'falcon',
         recursive = True,
         recursive = True,
+        cd_access = "a",
+        mode = 0755,
     )
     )
     self.assertResourceCalled('Directory', '/usr/hdp/current/falcon-server/webapp',
     self.assertResourceCalled('Directory', '/usr/hdp/current/falcon-server/webapp',
         owner = 'falcon',
         owner = 'falcon',

+ 30 - 10
ambari-server/src/test/python/stacks/2.2/KNOX/test_knox_gateway.py

@@ -42,27 +42,37 @@ class TestKnoxGateway(RMFTestCase):
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/data/',
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/data/',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
     self.assertResourceCalled('Directory', '/var/log/knox',
     self.assertResourceCalled('Directory', '/var/log/knox',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
     self.assertResourceCalled('Directory', '/var/run/knox',
     self.assertResourceCalled('Directory', '/var/run/knox',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/conf',
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/conf',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/conf/topologies',
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/conf/topologies',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
 
 
     self.assertResourceCalled('XmlConfig', 'gateway-site.xml',
     self.assertResourceCalled('XmlConfig', 'gateway-site.xml',
@@ -488,27 +498,37 @@ class TestKnoxGateway(RMFTestCase):
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/data/',
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/data/',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
     self.assertResourceCalled('Directory', '/var/log/knox',
     self.assertResourceCalled('Directory', '/var/log/knox',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
     self.assertResourceCalled('Directory', '/var/run/knox',
     self.assertResourceCalled('Directory', '/var/run/knox',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/conf',
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/conf',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/conf/topologies',
     self.assertResourceCalled('Directory', '/usr/hdp/current/knox-server/conf/topologies',
                               owner = 'knox',
                               owner = 'knox',
                               group = 'knox',
                               group = 'knox',
-                              recursive = True
+                              recursive = True,
+                              mode = 0755,
+                              cd_access = "a",
     )
     )
 
 
     self.assertResourceCalled('XmlConfig', 'gateway-site.xml',
     self.assertResourceCalled('XmlConfig', 'gateway-site.xml',