http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/package/scripts/slider.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/package/scripts/slider.py
 
b/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/package/scripts/slider.py
index 2f03d5b..3799c5b 100644
--- 
a/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/package/scripts/slider.py
+++ 
b/ambari-server/src/main/resources/common-services/SLIDER/0.60.0.2.2/package/scripts/slider.py
@@ -47,7 +47,7 @@ def slider():
   import params
 
   Directory(params.slider_conf_dir,
-            recursive=True
+            create_parents = True
   )
 
   slider_client_config = params.config['configurations']['slider-client'] if 
'configurations' in params.config and 'slider-client' in 
params.config['configurations'] else {}
@@ -63,7 +63,7 @@ def slider():
   )
 
   Directory(params.storm_slider_conf_dir,
-            recursive=True
+            create_parents = True
   )
 
   File(format("{storm_slider_conf_dir}/storm-slider-env.sh"),

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/package/scripts/setup_spark.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/package/scripts/setup_spark.py
 
b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/package/scripts/setup_spark.py
index b0ca499..0a32055 100644
--- 
a/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/package/scripts/setup_spark.py
+++ 
b/ambari-server/src/main/resources/common-services/SPARK/1.2.0.2.2/package/scripts/setup_spark.py
@@ -35,7 +35,7 @@ def setup_spark(env, type, action = None):
             owner=params.spark_user,
             group=params.user_group,
             mode=0775,
-            recursive=True
+            create_parents = True
   )
   if type == 'server' and action == 'config':
     params.HdfsResource(params.spark_hdfs_user_dir,

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/sqoop.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/sqoop.py
 
b/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/sqoop.py
index 8a74bb0..66a5ee4 100644
--- 
a/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/sqoop.py
+++ 
b/ambari-server/src/main/resources/common-services/SQOOP/1.4.4.2.0/package/scripts/sqoop.py
@@ -44,7 +44,7 @@ def sqoop(type=None):
   Directory(params.sqoop_conf_dir,
             owner = params.sqoop_user,
             group = params.user_group,
-            recursive = True
+            create_parents = True
   )
   File(format("{sqoop_conf_dir}/sqoop-env.sh"),
     owner=params.sqoop_user,

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm.py
 
b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm.py
index 0fddcd2..43736fa 100644
--- 
a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm.py
+++ 
b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm.py
@@ -56,20 +56,20 @@ def storm(name=None):
             owner=params.storm_user,
             group=params.user_group,
             mode=0777,
-            recursive=True
+            create_parents = True
   )
 
   Directory([params.pid_dir, params.local_dir],
             owner=params.storm_user,
             group=params.user_group,
-            recursive=True,
+            create_parents = True,
             cd_access="a",
             mode=0755,
   )
 
   Directory(params.conf_dir,
             group=params.user_group,
-            recursive=True,
+            create_parents = True,
             cd_access="a",
   )
 
@@ -115,7 +115,7 @@ def storm(name=None):
               owner=params.storm_user,
               group=params.user_group,
               mode=0755,
-              recursive=True
+              create_parents = True
     )
     
     File(format("{log4j_dir}/cluster.xml"),

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py
 
b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py
index abc858e..a8b1eca 100644
--- 
a/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py
+++ 
b/ambari-server/src/main/resources/common-services/STORM/0.9.1.2.1/package/scripts/storm_upgrade.py
@@ -160,12 +160,12 @@ class StormUpgrade(Script):
     # Delete from local directory
     if os.path.isdir(storm_local_directory):
       Logger.info("Deleting storm local directory, 
{0}".format(storm_local_directory))
-      Directory(storm_local_directory, action="delete", recursive=True)
+      Directory(storm_local_directory, action="delete", create_parents = True)
 
     # Recreate storm local directory
     Logger.info("Recreating storm local directory, 
{0}".format(storm_local_directory))
     Directory(storm_local_directory, mode=0755, owner=params.storm_user,
-      group=params.user_group, recursive=True)
+      group=params.user_group, create_parents = True)
 
     # The file doesn't exist, so create it
     Logger.info("Saving marker file to {0} with contents: 
{1}".format(marker_file, str(json_map)))

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/tez.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/tez.py
 
b/ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/tez.py
index a9b246d..198674d 100644
--- 
a/ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/tez.py
+++ 
b/ambari-server/src/main/resources/common-services/TEZ/0.4.0.2.1/package/scripts/tez.py
@@ -32,7 +32,7 @@ def tez():
   Directory(params.config_dir,
             owner = params.tez_user,
             group = params.user_group,
-            recursive = True)
+            create_parents = True)
 
   XmlConfig( "tez-site.xml",
              conf_dir = params.config_dir,

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn.py
 
b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn.py
index 05e19cf..edfbe44 100644
--- 
a/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn.py
+++ 
b/ambari-server/src/main/resources/common-services/YARN/2.1.0.2.0/package/scripts/yarn.py
@@ -101,12 +101,10 @@ def yarn(name = None):
     Directory(params.jhs_leveldb_state_store_dir,
               owner=params.mapred_user,
               group=params.user_group,
-              recursive=True,
+              create_parents = True,
               cd_access="a",
+              recursive_ownership = True,
               )
-    Execute(("chown", "-R", format("{mapred_user}:{user_group}"), 
params.jhs_leveldb_state_store_dir),
-            sudo = True,
-    )
 
   if name == "nodemanager":
 
@@ -134,23 +132,28 @@ def yarn(name = None):
 
 
     if not params.security_enabled or params.toggle_nm_security:
-      Directory(params.nm_local_dirs_list + params.nm_log_dirs_list,
+      Directory(params.nm_log_dirs_list,
                 owner=params.yarn_user,
                 group=params.user_group,
-                recursive=True,
+                create_parents = True,
                 cd_access="a",
                 ignore_failures=True,
-                mode=0775
+                mode=0775)
+      Directory(params.nm_local_dirs_list,
+                owner=params.yarn_user,
+                group=params.user_group,
+                create_parents = True,
+                cd_access="a",
+                ignore_failures=True,
+                mode=0775,
+                recursive_mode_flags = {'f': 'a+rw', 'd': 'a+rwx'},
                 )
-      Execute(("chmod", "-R", "755") + tuple(params.nm_local_dirs_list),
-                sudo=True,
-      )
 
   if params.yarn_nodemanager_recovery_dir:
     
Directory(InlineTemplate(params.yarn_nodemanager_recovery_dir).get_content(),
               owner=params.yarn_user,
               group=params.user_group,
-              recursive=True,
+              create_parents = True,
               mode=0755,
               cd_access = 'a',
     )
@@ -158,19 +161,19 @@ def yarn(name = None):
   Directory([params.yarn_pid_dir_prefix, params.yarn_pid_dir, 
params.yarn_log_dir],
             owner=params.yarn_user,
             group=params.user_group,
-            recursive=True,
+            create_parents = True,
             cd_access = 'a',
   )
 
   Directory([params.mapred_pid_dir_prefix, params.mapred_pid_dir, 
params.mapred_log_dir_prefix, params.mapred_log_dir],
             owner=params.mapred_user,
             group=params.user_group,
-            recursive=True,
+            create_parents = True,
             cd_access = 'a',
   )
   Directory([params.yarn_log_dir_prefix],
             owner=params.yarn_user,
-            recursive=True,
+            create_parents = True,
             ignore_failures=True,
             cd_access = 'a',
   )
@@ -245,7 +248,7 @@ def yarn(name = None):
     Directory(params.ats_leveldb_dir,
        owner=params.yarn_user,
        group=params.user_group,
-       recursive=True,
+       create_parents = True,
        cd_access="a",
     )
 
@@ -254,7 +257,7 @@ def yarn(name = None):
       Directory(params.ats_leveldb_state_store_dir,
        owner=params.yarn_user,
        group=params.user_group,
-       recursive=True,
+       create_parents = True,
        cd_access="a",
       )
     # app timeline server 1.5 directories
@@ -330,7 +333,7 @@ def yarn(name = None):
 
   Directory(params.cgroups_dir,
             group=params.user_group,
-            recursive=True,
+            create_parents = True,
             mode=0755,
             cd_access="a")
 
@@ -393,7 +396,7 @@ def yarn(name = None):
     )
 
     Directory(params.hadoop_conf_secure_dir,
-              recursive=True,
+              create_parents = True,
               owner='root',
               group=params.user_group,
               cd_access='a',

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py
 
b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py
index e9f44cc..2727641 100644
--- 
a/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py
+++ 
b/ambari-server/src/main/resources/common-services/ZOOKEEPER/3.4.5.2.0/package/scripts/zookeeper.py
@@ -42,7 +42,7 @@ def zookeeper(type = None, upgrade_type=None):
 
   Directory(params.config_dir,
             owner=params.zk_user,
-            recursive=True,
+            create_parents = True,
             group=params.user_group
   )
 
@@ -58,21 +58,21 @@ def zookeeper(type = None, upgrade_type=None):
 
   Directory(params.zk_pid_dir,
             owner=params.zk_user,
-            recursive=True,
+            create_parents = True,
             group=params.user_group,
             mode=0755,
   )
 
   Directory(params.zk_log_dir,
             owner=params.zk_user,
-            recursive=True,
+            create_parents = True,
             group=params.user_group,
             mode=0755,
   )
 
   Directory(params.zk_data_dir,
             owner=params.zk_user,
-            recursive=True,
+            create_parents = True,
             cd_access="a",
             group=params.user_group,
             mode=0755,
@@ -127,7 +127,7 @@ def zookeeper(type = None, upgrade_type=None):
   Directory(params.zk_data_dir,
             owner=params.zk_user,
             mode="(OI)(CI)F",
-            recursive=True
+            create_parents = True
   )
   if (params.log4j_props != None):
     File(os.path.join(params.config_dir, "log4j.properties"),

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/custom_actions/scripts/check_host.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/custom_actions/scripts/check_host.py 
b/ambari-server/src/main/resources/custom_actions/scripts/check_host.py
index e4b059e..83a3287 100644
--- a/ambari-server/src/main/resources/custom_actions/scripts/check_host.py
+++ b/ambari-server/src/main/resources/custom_actions/scripts/check_host.py
@@ -356,7 +356,7 @@ class CheckHost(Script):
           Execute(chmod_cmd, not_if = format("test -e {java_exec}"), sudo = 
True)
           Execute(install_cmd, not_if = format("test -e {java_exec}"))
           File(format("{java_home}/bin/java"), mode=0755, cd_access="a")
-          Execute(("chown","-R", getpass.getuser(), java_home), sudo = True)
+          Directory(java_home, user=getpass.getuser(), 
recursive_ownership=True)
         except Exception, e:
           message = "Error installing java.\n" + str(e)
           print message

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-ANY/scripts/shared_initialization.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-ANY/scripts/shared_initialization.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-ANY/scripts/shared_initialization.py
index 126b8bb..606a000 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-ANY/scripts/shared_initialization.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-ANY/scripts/shared_initialization.py
@@ -100,7 +100,7 @@ def setup_hadoop_env():
     else:
       tc_owner = params.hdfs_user
     Directory(params.hadoop_conf_empty_dir,
-              recursive=True,
+              create_parents = True,
               owner='root',
               group='root'
     )

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-START/scripts/shared_initialization.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-START/scripts/shared_initialization.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-START/scripts/shared_initialization.py
index f70eee8..2d2331a 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-START/scripts/shared_initialization.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/hooks/before-START/scripts/shared_initialization.py
@@ -36,19 +36,19 @@ def setup_hadoop():
   #directories
   if params.has_namenode:
     Directory(params.hdfs_log_dir_prefix,
-              recursive=True,
+              create_parents = True,
               owner='root',
               group=params.user_group,
               mode=0775
     )
     Directory(params.hadoop_pid_dir_prefix,
-              recursive=True,
+              create_parents = True,
               owner='root',
               group='root'
     )
   #this doesn't needed with stack 1
     Directory(params.hadoop_tmp_dir,
-              recursive=True,
+              create_parents = True,
               owner=params.hdfs_user,
               )
   #files

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/FLUME/package/scripts/flume.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/FLUME/package/scripts/flume.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/FLUME/package/scripts/flume.py
index 2db4039..d63ab80 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/FLUME/package/scripts/flume.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/FLUME/package/scripts/flume.py
@@ -30,7 +30,7 @@ def flume(action = None):
     for n in find_expected_agent_names():
       os.unlink(os.path.join(params.flume_conf_dir, n, 'ambari-meta.json'))
 
-    Directory(params.flume_conf_dir, recursive=True)
+    Directory(params.flume_conf_dir, create_parents = True)
     Directory(params.flume_log_dir, owner=params.flume_user)
 
     File(format("{flume_conf_dir}/flume-env.sh"),

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia.py
index 69fde27..9a69b72 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia.py
@@ -35,7 +35,7 @@ def config():
   Directory(shell_cmds_dir,
             owner="root",
             group="root",
-            recursive=True
+            create_parents = True
   )
   init_file("gmetad")
   init_file("gmond")

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_monitor.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_monitor.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_monitor.py
index ede1a0b..66551be 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_monitor.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_monitor.py
@@ -71,7 +71,7 @@ class GangliaMonitor(Script):
     Directory(params.ganglia_conf_dir,
               owner="root",
               group=params.user_group,
-              recursive=True
+              create_parents = True
     )
 
     ganglia.config()

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_server.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_server.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_server.py
index c38366f..8965d95 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_server.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/GANGLIA/package/scripts/ganglia_server.py
@@ -82,7 +82,7 @@ def change_permission():
 
   Directory(params.dwoo_path,
             mode=0755,
-            recursive=True
+            create_parents = True
   )
   Execute(format("chown -R {web_user} {dwoo_path}"))
 
@@ -91,7 +91,7 @@ def server_files():
 
   rrd_py_path = params.rrd_py_path
   Directory(rrd_py_path,
-            recursive=True
+            create_parents = True
   )
   rrd_py_file_path = path.join(rrd_py_path, "rrd.py")
   TemplateConfig(rrd_py_file_path,
@@ -105,7 +105,7 @@ def server_files():
             owner=rrd_file_owner,
             group=rrd_file_owner,
             mode=0755,
-            recursive=True
+            create_parents = True
   )
   
   if System.get_instance().os_family in ["ubuntu","suse"]:

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HBASE/package/scripts/hbase.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HBASE/package/scripts/hbase.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HBASE/package/scripts/hbase.py
index 2829c7b..9a48a43 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HBASE/package/scripts/hbase.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HBASE/package/scripts/hbase.py
@@ -29,19 +29,19 @@ def hbase(name=None # 'master' or 'regionserver' or 'client'
   Directory( params.hbase_conf_dir,
       owner = params.hbase_user,
       group = params.user_group,
-      recursive = True
+      create_parents = True
   )
 
   Directory (params.tmp_dir,
              owner = params.hbase_user,
-             recursive = True
+             create_parents = True
   )
 
   Directory (os.path.join(params.local_dir, "jars"),
              owner = params.hbase_user,
              group = params.user_group,
              mode=0775,
-             recursive = True
+             create_parents = True
   )
 
   XmlConfig( "hbase-site.xml",
@@ -100,12 +100,12 @@ def hbase(name=None # 'master' or 'regionserver' or 
'client'
   if name != "client":
     Directory( params.pid_dir,
       owner = params.hbase_user,
-      recursive = True
+      create_parents = True
     )
   
     Directory (params.log_dir,
       owner = params.hbase_user,
-      recursive = True
+      create_parents = True
     )
 
   if (params.log4j_props != None):

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs.py
index 873aa15..33543c4 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs.py
@@ -29,7 +29,7 @@ def hdfs(name=None):
 
   # On some OS this folder could be not exists, so we will create it before 
pushing there files
   Directory(params.limits_conf_dir,
-            recursive=True,
+            create_parents = True,
             owner='root',
             group='root'
   )

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_datanode.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_datanode.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_datanode.py
index c93c6e4..c1c190e 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_datanode.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_datanode.py
@@ -28,7 +28,7 @@ def create_dirs(data_dir, params):
   :param params: parameters
   """
   Directory(data_dir,
-            recursive=True,
+            create_parents = True,
             mode=0755,
             owner=params.hdfs_user,
             group=params.user_group,
@@ -40,7 +40,7 @@ def datanode(action=None):
   import params
   if action == "configure":
     Directory(params.dfs_domain_socket_dir,
-              recursive=True,
+              create_parents = True,
               mode=0751,
               owner=params.hdfs_user,
               group=params.user_group)

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_namenode.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_namenode.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_namenode.py
index 197bdf6..6b4d0f6 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_namenode.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_namenode.py
@@ -77,7 +77,7 @@ def create_name_dirs(directories):
             mode=0755,
             owner=params.hdfs_user,
             group=params.user_group,
-            recursive=True
+            create_parents = True
   )
 
 
@@ -125,7 +125,7 @@ def format_namenode(force=None):
       )
     
       Directory(mark_dir,
-        recursive = True
+        create_parents = True
       )
 
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_snamenode.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_snamenode.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_snamenode.py
index 49241b4..e734973 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_snamenode.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/hdfs_snamenode.py
@@ -27,7 +27,7 @@ def snamenode(action=None, format=False):
 
   if action == "configure":
     Directory(params.fs_checkpoint_dir,
-              recursive=True,
+              create_parents = True,
               mode=0755,
               owner=params.hdfs_user,
               group=params.user_group)

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/journalnode.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/journalnode.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/journalnode.py
index de18c88..c47866c 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/journalnode.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/journalnode.py
@@ -54,7 +54,7 @@ class JournalNode(Script):
     import params
 
     Directory(params.jn_edits_dir,
-              recursive=True,
+              create_parents = True,
               owner=params.hdfs_user,
               group=params.user_group
     )

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/utils.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/utils.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/utils.py
index 3f4bdb5..7dcbca8 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/utils.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HDFS/package/scripts/utils.py
@@ -36,11 +36,11 @@ def service(action=None, name=None, user=None, 
create_pid_dir=False,
   if create_pid_dir:
     Directory(pid_dir,
               owner=user,
-              recursive=True)
+              create_parents = True)
   if create_log_dir:
     Directory(log_dir,
               owner=user,
-              recursive=True)
+              create_parents = True)
 
   hadoop_env_exports = {
     'HADOOP_LIBEXEC_DIR': params.hadoop_libexec_dir

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hcat.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hcat.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hcat.py
index 31c1673..af75d36 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hcat.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hcat.py
@@ -26,21 +26,21 @@ def hcat():
   import params
 
   Directory(params.hive_conf_dir,
-            recursive=True,
+            create_parents = True,
             owner=params.hcat_user,
             group=params.user_group,
   )
 
 
   Directory(params.hcat_conf_dir,
-            recursive=True,
+            create_parents = True,
             owner=params.hcat_user,
             group=params.user_group,
   )
 
   Directory(params.hcat_pid_dir,
             owner=params.webhcat_user,
-            recursive=True
+            create_parents = True
   )
 
   XmlConfig("hive-site.xml",

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hive.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hive.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hive.py
index e388ee5..2e382ff 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hive.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/hive.py
@@ -113,7 +113,7 @@ def fill_conf_dir(component_conf_dir):
   Directory(component_conf_dir,
             owner=params.hive_user,
             group=params.user_group,
-            recursive=True
+            create_parents = True
   )
 
   XmlConfig("mapred-site.xml",
@@ -165,7 +165,7 @@ def crt_directory(name):
   import params
 
   Directory(name,
-            recursive=True,
+            create_parents = True,
             owner=params.hive_user,
             group=params.user_group,
             mode=0755)

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/webhcat.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/webhcat.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/webhcat.py
index c6f41dd..9a7fc0c 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/webhcat.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/HIVE/package/scripts/webhcat.py
@@ -49,16 +49,16 @@ def webhcat():
             owner=params.webhcat_user,
             mode=0755,
             group=params.user_group,
-            recursive=True)
+            create_parents = True)
 
   Directory(params.templeton_log_dir,
             owner=params.webhcat_user,
             mode=0755,
             group=params.user_group,
-            recursive=True)
+            create_parents = True)
 
   Directory(params.config_dir,
-            recursive=True,
+            create_parents = True,
             owner=params.webhcat_user,
             group=params.user_group)
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/OOZIE/package/scripts/oozie.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/OOZIE/package/scripts/oozie.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/OOZIE/package/scripts/oozie.py
index cbb5e69..db86bc1 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/OOZIE/package/scripts/oozie.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/OOZIE/package/scripts/oozie.py
@@ -32,7 +32,7 @@ def oozie(is_server=False # TODO: see if see can remove this
                          mode=params.oozie_hdfs_user_mode
     )
   Directory( params.conf_dir,
-             recursive = True,
+             create_parents = True,
              owner = params.oozie_user,
              group = params.user_group
   )
@@ -137,7 +137,7 @@ def oozie_server_specific(
   Directory( oozie_server_directorties,
     owner = params.oozie_user,
     mode = 0755,
-    recursive = True
+    create_parents = True
   )
 
   cmd1 = "sh"

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/PIG/package/scripts/pig.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/PIG/package/scripts/pig.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/PIG/package/scripts/pig.py
index afdba8d..cda257a 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/PIG/package/scripts/pig.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/PIG/package/scripts/pig.py
@@ -26,7 +26,7 @@ def pig():
   import params
 
   Directory( params.pig_conf_dir,
-    recursive = True,
+    create_parents = True,
     owner = params.hdfs_user,
     group = params.user_group
   )

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/mapred_service_check.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/mapred_service_check.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/mapred_service_check.py
index f12ea61..0e5148f 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/mapred_service_check.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/mapred_service_check.py
@@ -36,7 +36,7 @@ class MapReduce2ServiceCheck(Script):
     run_wordcount_job = format("jar {jar_path} wordcount {input_file} 
{output_file}")
 
     log_dir = format("{mapred_log_dir_prefix}/{smokeuser}")
-    Directory(log_dir, owner=params.smokeuser, recursive=True)
+    Directory(log_dir, owner=params.smokeuser, create_parents = True)
 
     if params.security_enabled:
       kinit_cmd = format("{kinit_path_local} -kt {smoke_user_keytab} 
{smokeuser};")

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/yarn.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/yarn.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/yarn.py
index df3a9d2..402030d 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/yarn.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/YARN/package/scripts/yarn.py
@@ -63,24 +63,24 @@ def yarn(name = None):
   if name == "nodemanager":
     Directory(params.nm_local_dirs.split(',') + params.nm_log_dirs.split(','),
               owner=params.yarn_user,
-              recursive=True,
+              create_parents = True,
               ignore_failures=True,
               )
 
   Directory([params.yarn_pid_dir, params.yarn_log_dir],
             owner=params.yarn_user,
             group=params.user_group,
-            recursive=True
+            create_parents = True
   )
 
   Directory([params.mapred_pid_dir, params.mapred_log_dir],
             owner=params.mapred_user,
             group=params.user_group,
-            recursive=True
+            create_parents = True
   )
   Directory([params.yarn_log_dir_prefix],
             owner=params.yarn_user,
-            recursive=True,
+            create_parents = True,
             ignore_failures=True,
   )
 
@@ -129,7 +129,7 @@ def yarn(name = None):
     Directory(params.ats_leveldb_dir,
        owner=params.yarn_user,
        group=params.user_group,
-       recursive=True
+       create_parents = True
     )
 
   File(params.rm_nodes_exclude_path,

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/ZOOKEEPER/package/scripts/zookeeper.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/ZOOKEEPER/package/scripts/zookeeper.py
 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/ZOOKEEPER/package/scripts/zookeeper.py
index 4f2bb1f..d4d86e2 100644
--- 
a/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/ZOOKEEPER/package/scripts/zookeeper.py
+++ 
b/ambari-server/src/main/resources/stacks/BIGTOP/0.8/services/ZOOKEEPER/package/scripts/zookeeper.py
@@ -29,7 +29,7 @@ def zookeeper(type = None):
 
   Directory(params.config_dir,
             owner=params.zk_user,
-            recursive=True,
+            create_parents = True,
             group=params.user_group
   )
 
@@ -45,19 +45,19 @@ def zookeeper(type = None):
 
   Directory(params.zk_pid_dir,
             owner=params.zk_user,
-            recursive=True,
+            create_parents = True,
             group=params.user_group
   )
 
   Directory(params.zk_log_dir,
             owner=params.zk_user,
-            recursive=True,
+            create_parents = True,
             group=params.user_group
   )
 
   Directory(params.zk_data_dir,
             owner=params.zk_user,
-            recursive=True,
+            create_parents = True,
             group=params.user_group
   )
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-ANY/scripts/shared_initialization.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-ANY/scripts/shared_initialization.py
 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-ANY/scripts/shared_initialization.py
index 3bd0f53..6db30d2 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-ANY/scripts/shared_initialization.py
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-ANY/scripts/shared_initialization.py
@@ -54,7 +54,7 @@ def setup_users():
     Directory (params.hbase_tmp_dir,
                owner = params.hbase_user,
                mode=0775,
-               recursive = True,
+               create_parents = True,
                cd_access="a",
     )
     if not params.host_sys_prepped and params.override_uid == "true":
@@ -144,7 +144,7 @@ def setup_hadoop_env():
 
     # HDP < 2.2 used a conf -> conf.empty symlink for /etc/hadoop/
     if Script.is_hdp_stack_less_than("2.2"):
-      Directory(params.hadoop_conf_empty_dir, recursive=True, owner="root",
+      Directory(params.hadoop_conf_empty_dir, create_parents = True, 
owner="root",
         group=params.user_group )
 
       Link(params.hadoop_conf_dir, to=params.hadoop_conf_empty_dir,
@@ -182,7 +182,7 @@ def setup_java():
       return
 
     Directory(params.artifact_dir,
-              recursive = True,
+              create_parents = True,
               )
 
     File(jdk_curl_target,
@@ -211,10 +211,8 @@ def setup_java():
          mode=0755,
          cd_access="a",
          )
-
-    Execute(("chgrp","-R", params.user_group, params.java_home),
-            sudo = True,
-            )
-    Execute(("chown","-R", getpass.getuser(), params.java_home),
-            sudo = True,
-            )
+    Directory(params.java_home,
+              owner = getpass.getuser(),
+              group = params.user_group,
+              recursive_ownership = True,
+    )

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/rack_awareness.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/rack_awareness.py
 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/rack_awareness.py
index 453de63..9579d18 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/rack_awareness.py
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/rack_awareness.py
@@ -31,7 +31,7 @@ def create_topology_mapping():
   # only create the parent directory and set its permission if it does not 
exist
   if not os.path.exists(parent_dir): 
     Directory(parent_dir, 
-              recursive=True, 
+              create_parents = True, 
               owner=params.hdfs_user, 
               group=params.user_group) 
 
@@ -52,7 +52,7 @@ def create_topology_script():
   # only create the parent directory and set its permission if it does not 
exist 
   if not os.path.exists(parent_dir): 
     Directory(parent_dir, 
-              recursive=True, 
+              create_parents = True, 
               owner=params.hdfs_user, 
               group=params.user_group) 
 

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/shared_initialization.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/shared_initialization.py
 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/shared_initialization.py
index 61c1ca1..85d8fec 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/shared_initialization.py
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/before-START/scripts/shared_initialization.py
@@ -37,7 +37,7 @@ def setup_hadoop():
   #directories
   if params.has_namenode or params.dfs_type == 'HCFS':
     Directory(params.hdfs_log_dir_prefix,
-              recursive=True,
+              create_parents = True,
               owner='root',
               group=params.user_group,
               mode=0775,
@@ -45,13 +45,13 @@ def setup_hadoop():
     )
     if params.has_namenode:
       Directory(params.hadoop_pid_dir_prefix,
-              recursive=True,
+              create_parents = True,
               owner='root',
               group='root',
               cd_access='a',
       )
     Directory(params.hadoop_tmp_dir,
-              recursive=True,
+              create_parents = True,
               owner=params.hdfs_user,
               cd_access='a',
               )
@@ -146,7 +146,7 @@ def generate_include_file():
 def create_javahome_symlink():
   if os.path.exists("/usr/jdk/jdk1.6.0_31") and not 
os.path.exists("/usr/jdk64/jdk1.6.0_31"):
     Directory("/usr/jdk64/",
-         recursive=True,
+         create_parents = True,
     )
     Link("/usr/jdk/jdk1.6.0_31",
          to="/usr/jdk64/jdk1.6.0_31",

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FALCON/package/scripts/falcon.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FALCON/package/scripts/falcon.py
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FALCON/package/scripts/falcon.py
index 88c1f6c..9a72af1 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FALCON/package/scripts/falcon.py
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/FALCON/package/scripts/falcon.py
@@ -65,12 +65,12 @@ def falcon(type, action = None):
       params.HdfsDirectory(None, action="create")
       Directory(params.falcon_local_dir,
                 owner=params.falcon_user,
-                recursive=True
+                create_parents = True
       )
       if params.falcon_embeddedmq_enabled == True:
         Directory(params.falcon_embeddedmq_data,
                   owner=params.falcon_user,
-                  recursive=True
+                  create_parents = True
         )
 
     if action == 'start':

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/STORM/package/scripts/storm.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/STORM/package/scripts/storm.py
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/STORM/package/scripts/storm.py
index 2e7f818..f5cbcd8 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/STORM/package/scripts/storm.py
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/STORM/package/scripts/storm.py
@@ -29,7 +29,7 @@ def storm():
   Directory([params.log_dir, params.pid_dir, params.local_dir, 
params.conf_dir],
             owner=params.storm_user,
             group=params.user_group,
-            recursive=True
+            create_parents = True
   )
 
   File(format("{conf_dir}/config.yaml"),

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/TEZ/package/scripts/tez.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/TEZ/package/scripts/tez.py
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/TEZ/package/scripts/tez.py
index 7ec78a3..0dbae0c 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/TEZ/package/scripts/tez.py
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/TEZ/package/scripts/tez.py
@@ -27,7 +27,7 @@ def tez():
   Directory(params.config_dir,
     owner = params.tez_user,
     group = params.user_group,
-    recursive = True
+    create_parents = True
   )
 
   XmlConfig( "tez-site.xml",

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/YARN/package/scripts/yarn.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/YARN/package/scripts/yarn.py
 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/YARN/package/scripts/yarn.py
index 8754605..fcfdcba 100644
--- 
a/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/YARN/package/scripts/yarn.py
+++ 
b/ambari-server/src/main/resources/stacks/HDP/2.1.GlusterFS/services/YARN/package/scripts/yarn.py
@@ -62,28 +62,28 @@ def yarn(name = None):
   if name == "nodemanager":
     Directory(params.nm_local_dirs.split(','),
               owner=params.yarn_user,
-              recursive=True
+              create_parents = True
     )
     Directory(params.nm_log_dirs.split(','),
               owner=params.yarn_user,
-              recursive=True
+              create_parents = True
     )
 
   Directory([params.yarn_pid_dir, params.yarn_log_dir],
             owner=params.yarn_user,
             group=params.user_group,
-            recursive=True
+            create_parents = True
   )
 
   Directory([params.mapred_pid_dir, params.mapred_log_dir],
             owner=params.mapred_user,
             group=params.user_group,
-            recursive=True
+            create_parents = True
   )
 
   Directory(params.yarn_log_dir_prefix,
             owner=params.yarn_user,
-            recursive=True
+            create_parents = True
   )
 
   XmlConfig("core-site.xml",

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/AMBARI_METRICS/test_metrics_collector.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/test/python/stacks/2.0.6/AMBARI_METRICS/test_metrics_collector.py
 
b/ambari-server/src/test/python/stacks/2.0.6/AMBARI_METRICS/test_metrics_collector.py
index bccf865..ab4d006 100644
--- 
a/ambari-server/src/test/python/stacks/2.0.6/AMBARI_METRICS/test_metrics_collector.py
+++ 
b/ambari-server/src/test/python/stacks/2.0.6/AMBARI_METRICS/test_metrics_collector.py
@@ -114,22 +114,17 @@ class TestMetricsCollector(RMFTestCase):
     self.assertResourceCalled('Directory', 
'/etc/ambari-metrics-collector/conf',
                               owner = 'ams',
                               group = 'hadoop',
-                              recursive = True
+                              create_parents = True,
+                              recursive_ownership = True,
     )
-
-    self.assertResourceCalled('Execute', ('chown','-R', u'ams', 
'/etc/ambari-metrics-collector/conf'),
-                              sudo=True)
-
     self.assertResourceCalled('Directory', 
'/var/lib/ambari-metrics-collector/checkpoint',
                               owner = 'ams',
                               group = 'hadoop',
                               cd_access = 'a',
-                              recursive = True
+                              create_parents = True,
+                              recursive_ownership = True,
     )
 
-    self.assertResourceCalled('Execute', ('chown','-R', u'ams', 
'/var/lib/ambari-metrics-collector/checkpoint'),
-                              sudo=True)
-
     self.assertResourceCalled('XmlConfig', 'ams-site.xml',
                               owner = 'ams',
                               group = 'hadoop',
@@ -163,14 +158,14 @@ class TestMetricsCollector(RMFTestCase):
                               owner = 'ams',
                               group = 'hadoop',
                               cd_access = 'a',
-                              recursive = True,
+                              create_parents = True,
                               mode = 0755,
     )
     self.assertResourceCalled('Directory', '/var/run/ambari-metrics-collector',
                               owner = 'ams',
                               cd_access = 'a',
                               group = 'hadoop',
-                              recursive = True,
+                              create_parents = True,
                               mode=0755,
     )
     self.assertResourceCalled('File', '/usr/lib/ams-hbase/bin/hadoop',
@@ -180,7 +175,7 @@ class TestMetricsCollector(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
                               owner = 'root',
                               group = 'root',
-                              recursive = True
+                              create_parents = True
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/ams.conf',
                               owner='root',
@@ -226,27 +221,23 @@ class TestMetricsCollector(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/ams-hbase/conf',
                               owner = 'ams',
                               group = 'hadoop',
-                              recursive = True
+                              create_parents = True,
+                              recursive_ownership = True,
     )
 
-    self.assertResourceCalled('Execute', ('chown','-R', u'ams', 
'/etc/ams-hbase/conf'),
-                                sudo=True)
-
     self.assertResourceCalled('Directory', 
'/var/lib/ambari-metrics-collector/hbase-tmp',
                               owner = 'ams',
                               cd_access = 'a',
-                              recursive = True
+                              create_parents = True,
+                              recursive_ownership = True,
     )
 
-    self.assertResourceCalled('Execute', ('chown','-R', u'ams', 
'/var/lib/ambari-metrics-collector/hbase-tmp'),
-                            sudo=True)
-
     self.assertResourceCalled('Directory', 
'/var/lib/ambari-metrics-collector/hbase-tmp/local/jars',
                               owner = 'ams',
                               cd_access = 'a',
                               group = 'hadoop',
                               mode = 0775,
-                              recursive = True
+                              create_parents = True
     )
     self.assertResourceCalled('XmlConfig', 'hbase-site.xml',
                               owner = 'ams',
@@ -277,13 +268,13 @@ class TestMetricsCollector(RMFTestCase):
                               )
     self.assertResourceCalled('Directory', 
'/var/run/ambari-metrics-collector/',
                               owner = 'ams',
-                              recursive = True,
+                              create_parents = True,
                               mode = 0755,
                               cd_access = "a",
     )
     self.assertResourceCalled('Directory', '/var/log/ambari-metrics-collector',
                               owner = 'ams',
-                              recursive = True,
+                              create_parents = True,
                               mode = 0755,
                               cd_access = "a",
     )
@@ -340,13 +331,11 @@ class TestMetricsCollector(RMFTestCase):
         self.assertResourceCalled('Directory', 
'/var/lib/ambari-metrics-collector/hbase',
                                   owner = 'ams',
                                   cd_access="a",
-                                  recursive = True
+                                  create_parents = True,
+                                  recursive_ownership = True,
         )
 
       if (not distributed):
-        self.assertResourceCalled('Execute', ('chown','-R','ams', 
'/var/lib/ambari-metrics-collector/hbase'),
-                                  sudo=True)
-
 
         self.assertResourceCalled('File', 
'/var/run/ambari-metrics-collector//distributed_mode',
                                   owner = 'ams',

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py 
b/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py
index 318d2bb..3e7c595 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/FLUME/test_flume.py
@@ -231,7 +231,7 @@ class TestFlumeHandler(RMFTestCase):
     self.assertResourceCalled('Directory',
                               '/etc/flume/conf',
                               owner='flume',
-                              recursive=True)
+                              create_parents = True)
 
     self.assertResourceCalled('Directory',
                               '/var/log/flume',
@@ -279,7 +279,7 @@ class TestFlumeHandler(RMFTestCase):
     self.assertResourceCalled('Directory',
                               '/etc/flume/conf',
                               owner='flume',
-                              recursive=True)
+                              create_parents = True)
 
     self.assertResourceCalled('Directory', '/var/log/flume', owner = 'flume', 
cd_access = 'a', mode=0755)
 
@@ -442,7 +442,7 @@ class TestFlumeHandler(RMFTestCase):
     self.assertResourceCalled('Directory',
                               '/etc/flume/conf',
                               owner='flume',
-                              recursive=True)
+                              create_parents = True)
 
     self.assertResourceCalled('Directory',
                               '/var/log/flume',
@@ -493,7 +493,7 @@ class TestFlumeHandler(RMFTestCase):
     self.assertResourceCalled('Directory',
                               '/usr/hdp/current/flume-server/conf',
                               owner='flume',
-                              recursive=True)
+                              create_parents = True)
 
     self.assertResourceCalled('Directory',
                               '/var/log/flume',

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_monitor.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_monitor.py 
b/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_monitor.py
index e4ca5d6..fd27cde 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_monitor.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_monitor.py
@@ -107,12 +107,12 @@ class TestGangliaMonitor(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/ganglia/hdp',
                               owner = 'root',
                               group = 'hadoop',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('Directory', '/usr/libexec/hdp/ganglia',
                               owner = 'root',
                               group = 'root',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('File', '/etc/init.d/hdp-gmetad',
                               content = StaticFile('gmetad.init'),

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_server.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_server.py 
b/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_server.py
index 0367912..53415b1 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_server.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/GANGLIA/test_ganglia_server.py
@@ -84,7 +84,7 @@ class TestGangliaServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/usr/libexec/hdp/ganglia',
         owner = 'root',
         group = 'root',
-        recursive = True,
+        create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/init.d/hdp-gmetad',
         content = StaticFile('gmetad.init'),
@@ -173,17 +173,16 @@ class TestGangliaServer(RMFTestCase):
     )
     self.assertResourceCalled('Directory', '/var/run/ganglia',
         mode=0755,
-        recursive=True
+        create_parents = True
     )
     self.assertResourceCalled('Directory', '/var/lib/ganglia-web/dwoo',
-        recursive = True,
+        owner = 'wwwrun',
+        create_parents = True,
+        recursive_ownership = True,
         mode = 0755,
     )
-    self.assertResourceCalled('Execute', ('chown', '-R', 'wwwrun', 
'/var/lib/ganglia-web/dwoo'),
-        sudo = True,
-    )
     self.assertResourceCalled('Directory', '/srv/www/cgi-bin',
-        recursive = True,
+        create_parents = True,
     )
     self.assertResourceCalled('TemplateConfig', '/srv/www/cgi-bin/rrd.py',
                               owner = "root",
@@ -193,7 +192,7 @@ class TestGangliaServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/var/lib/ganglia/rrds',
                               owner = 'nobody',
                               group = 'nobody',
-                              recursive = True,
+                              create_parents = True,
                               mode = 0755,
                               )
     self.assertResourceCalled('File', '/etc/apache2/conf.d/ganglia.conf',

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_client.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_client.py 
b/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_client.py
index a1c762a..9f3e19e 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_client.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_client.py
@@ -44,16 +44,16 @@ class TestHBaseClient(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/hbase/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
     self.assertResourceCalled('Execute', ('chmod', '1777', u'/hadoop'),
@@ -99,7 +99,7 @@ class TestHBaseClient(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
       content = Template('hbase.conf.j2'),
@@ -142,16 +142,16 @@ class TestHBaseClient(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/hbase/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
     self.assertResourceCalled('Execute', ('chmod', '1777', u'/hadoop'),
@@ -197,7 +197,7 @@ class TestHBaseClient(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
       content = Template('hbase.conf.j2'),

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py 
b/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py
index 3f6096c..5a95fe2 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_master.py
@@ -233,16 +233,16 @@ class TestHBaseMaster(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/hbase/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
     self.assertResourceCalled('Execute', ('chmod', '1777', u'/hadoop'),
@@ -288,7 +288,7 @@ class TestHBaseMaster(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
       content = Template('hbase.conf.j2'),
@@ -306,13 +306,13 @@ class TestHBaseMaster(RMFTestCase):
     )
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
@@ -370,16 +370,16 @@ class TestHBaseMaster(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/hbase/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
     self.assertResourceCalled('Execute', ('chmod', '1777', u'/hadoop'),
@@ -425,7 +425,7 @@ class TestHBaseMaster(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
       content = Template('hbase.conf.j2'),
@@ -447,13 +447,13 @@ class TestHBaseMaster(RMFTestCase):
     )
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
@@ -517,15 +517,15 @@ class TestHBaseMaster(RMFTestCase):
     self.assertResourceCalled('Directory', 
'/usr/hdp/current/hbase-master/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True)
+      create_parents = True)
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
 
@@ -576,7 +576,7 @@ class TestHBaseMaster(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
       content = Template('hbase.conf.j2'),
@@ -594,14 +594,14 @@ class TestHBaseMaster(RMFTestCase):
 
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
 
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_regionserver.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_regionserver.py 
b/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_regionserver.py
index 224d81d..c36bd89 100644
--- 
a/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_regionserver.py
+++ 
b/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_hbase_regionserver.py
@@ -133,16 +133,16 @@ class TestHbaseRegionServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/hbase/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
     self.assertResourceCalled('Directory', '/hadoop',
-      recursive = True,
+      create_parents = True,
       cd_access = 'a',
     )
     self.assertResourceCalled('Execute', ('chmod', '1777', u'/hadoop'),
@@ -188,7 +188,7 @@ class TestHbaseRegionServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
       content = Template('hbase.conf.j2'),
@@ -206,13 +206,13 @@ class TestHbaseRegionServer(RMFTestCase):
     )
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
@@ -231,16 +231,16 @@ class TestHbaseRegionServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/hbase/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
     self.assertResourceCalled('Execute', ('chmod', '1777', u'/hadoop'),
@@ -286,7 +286,7 @@ class TestHbaseRegionServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
         owner = 'root',
         group = 'root',
-        recursive = True,
+        create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
         content = Template('hbase.conf.j2'),
@@ -308,13 +308,13 @@ class TestHbaseRegionServer(RMFTestCase):
     )
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
@@ -340,16 +340,16 @@ class TestHbaseRegionServer(RMFTestCase):
     self.assertResourceCalled('Directory', 
'/usr/hdp/current/hbase-regionserver/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True)
+      create_parents = True)
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
 
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
 
@@ -399,7 +399,7 @@ class TestHbaseRegionServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
       content = Template('hbase.conf.j2'),
@@ -418,14 +418,14 @@ class TestHbaseRegionServer(RMFTestCase):
 
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
 
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
@@ -456,16 +456,16 @@ class TestHbaseRegionServer(RMFTestCase):
     self.assertResourceCalled('Directory', 
'/usr/hdp/current/hbase-regionserver/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True)
+      create_parents = True)
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
 
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
 
@@ -516,7 +516,7 @@ class TestHbaseRegionServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
 
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
@@ -536,14 +536,14 @@ class TestHbaseRegionServer(RMFTestCase):
 
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
 
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py 
b/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py
index 6ae5785..6f3199e 100644
--- 
a/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py
+++ 
b/ambari-server/src/test/python/stacks/2.0.6/HBASE/test_phoenix_queryserver.py
@@ -169,7 +169,7 @@ class TestPhoenixQueryServer(RMFTestCase):
       '/usr/hdp/current/hbase-regionserver/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True)
+      create_parents = True)
 
     self.assertResourceCalled('XmlConfig', 'hbase-site.xml',
       owner = 'hbase',
@@ -196,11 +196,11 @@ class TestPhoenixQueryServer(RMFTestCase):
 
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True)
+      create_parents = True)
 
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True)
+      create_parents = True)
 
     self.assertResourceCalled('File',
       '/usr/lib/phoenix/bin/log4j.properties',
@@ -235,16 +235,16 @@ class TestPhoenixQueryServer(RMFTestCase):
       '/usr/hdp/current/hbase-regionserver/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
     self.assertResourceCalled('Execute', ('chmod', '1777', u'/hadoop'),
@@ -300,7 +300,7 @@ class TestPhoenixQueryServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
       content = Template('hbase.conf.j2'),
@@ -320,13 +320,13 @@ class TestPhoenixQueryServer(RMFTestCase):
     )
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
@@ -348,16 +348,16 @@ class TestPhoenixQueryServer(RMFTestCase):
       '/usr/hdp/current/hbase-regionserver/conf',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('Directory', '/tmp',
       owner = 'hbase',
       group = 'hadoop',
-      recursive = True,
+      create_parents = True,
       mode = 0777
     )
     self.assertResourceCalled('Directory', '/hadoop',
-                              recursive = True,
+                              create_parents = True,
                               cd_access = 'a',
                               )
     self.assertResourceCalled('Execute', ('chmod', '1777', u'/hadoop'),
@@ -413,7 +413,7 @@ class TestPhoenixQueryServer(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
       owner = 'root',
       group = 'root',
-      recursive = True,
+      create_parents = True,
     )
     self.assertResourceCalled('File', '/etc/security/limits.d/hbase.conf',
       content = Template('hbase.conf.j2'),
@@ -438,13 +438,13 @@ class TestPhoenixQueryServer(RMFTestCase):
     )
     self.assertResourceCalled('Directory', '/var/run/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
     self.assertResourceCalled('Directory', '/var/log/hbase',
       owner = 'hbase',
-      recursive = True,
+      create_parents = True,
       mode = 0755,
       cd_access = 'a',
     )
@@ -473,7 +473,7 @@ class TestPhoenixQueryServer(RMFTestCase):
       target = RMFTestCase.TARGET_COMMON_SERVICES)
 
     self.assertResourceCalled('Directory', '/etc/hbase/2.3.0.0-1234/0',
-        recursive = True,
+        create_parents = True,
         mode = 0755,
         cd_access = 'a',
     )

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_datanode.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_datanode.py 
b/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_datanode.py
index da1b07f..113fb7f 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_datanode.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_datanode.py
@@ -57,11 +57,11 @@ class TestDatanode(RMFTestCase):
                               )
     self.assertResourceCalled('Directory', '/var/run/hadoop/hdfs',
                               owner = 'hdfs',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('Directory', '/var/log/hadoop/hdfs',
                               owner = 'hdfs',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('File', 
'/var/run/hadoop/hdfs/hadoop-hdfs-datanode.pid',
         action = ['delete'],
@@ -117,11 +117,11 @@ class TestDatanode(RMFTestCase):
                               )
     self.assertResourceCalled('Directory', '/var/run/hadoop/hdfs',
                               owner = 'hdfs',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('Directory', '/var/log/hadoop/hdfs',
                               owner = 'hdfs',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('File', 
'/var/run/hadoop/hdfs/hadoop-hdfs-datanode.pid',
         action = ['delete'],
@@ -155,11 +155,11 @@ class TestDatanode(RMFTestCase):
                               )
     self.assertResourceCalled('Directory', '/var/run/hadoop/hdfs',
                               owner = 'hdfs',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('Directory', '/var/log/hadoop/hdfs',
                               owner = 'hdfs',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('File', 
'/var/run/hadoop/hdfs/hadoop-hdfs-datanode.pid',
         action = ['delete'],
@@ -196,11 +196,11 @@ class TestDatanode(RMFTestCase):
                               )
     self.assertResourceCalled('Directory', '/var/run/hadoop/hdfs',
                               owner = 'hdfs',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('Directory', '/var/log/hadoop/hdfs',
                               owner = 'hdfs',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('File', 
'/var/run/hadoop/hdfs/hadoop-hdfs-datanode.pid',
         action = ['delete'],
@@ -278,10 +278,10 @@ class TestDatanode(RMFTestCase):
 
   def assert_configure_default(self):
     self.assertResourceCalled('Directory', 
'/usr/lib/hadoop/lib/native/Linux-i386-32',
-        recursive = True,
+        create_parents = True,
     )
     self.assertResourceCalled('Directory', 
'/usr/lib/hadoop/lib/native/Linux-amd64-64',
-        recursive = True,
+        create_parents = True,
     )
     self.assertResourceCalled('Link', 
'/usr/lib/hadoop/lib/native/Linux-i386-32/libsnappy.so',
         to = '/usr/lib/hadoop/lib/libsnappy.so',
@@ -292,7 +292,7 @@ class TestDatanode(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
                               owner = 'root',
                               group = 'root',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('File', '/etc/security/limits.d/hdfs.conf',
                               content = Template('hdfs.conf.j2'),
@@ -324,20 +324,20 @@ class TestDatanode(RMFTestCase):
                               owner = 'hdfs',
                               group = 'hadoop',
                               mode = 0751,
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('Directory', 
'/var/lib/ambari-agent/data/datanode',
                               owner = 'hdfs',
                               group = 'hadoop',
                               mode = 0755,
-                              recursive = True
+                              create_parents = True
     )
     self.assertResourceCalled('Directory', '/hadoop/hdfs/data',
                               owner = 'hdfs',
                               ignore_failures = True,
                               group = 'hadoop',
                               mode = 0755,
-                              recursive = True,
+                              create_parents = True,
                               cd_access='a'
                               )
     content = 
resource_management.libraries.functions.dfs_datanode_helper.DATA_DIR_TO_MOUNT_HEADER
@@ -355,10 +355,10 @@ class TestDatanode(RMFTestCase):
     
     if snappy_enabled:
       self.assertResourceCalled('Directory', 
'/usr/lib/hadoop/lib/native/Linux-i386-32',
-          recursive = True,
+          create_parents = True,
       )
       self.assertResourceCalled('Directory', 
'/usr/lib/hadoop/lib/native/Linux-amd64-64',
-          recursive = True,
+          create_parents = True,
       )
       self.assertResourceCalled('Link', 
'/usr/lib/hadoop/lib/native/Linux-i386-32/libsnappy.so',
           to = '/usr/lib/hadoop/lib/libsnappy.so',
@@ -369,7 +369,7 @@ class TestDatanode(RMFTestCase):
     self.assertResourceCalled('Directory', '/etc/security/limits.d',
                               owner = 'root',
                               group = 'root',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('File', '/etc/security/limits.d/hdfs.conf',
                               content = Template('hdfs.conf.j2'),
@@ -402,20 +402,20 @@ class TestDatanode(RMFTestCase):
                               owner = 'hdfs',
                               group = 'hadoop',
                               mode = 0751,
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('Directory', 
'/var/lib/ambari-agent/data/datanode',
                               owner = 'hdfs',
                               group = 'hadoop',
                               mode = 0755,
-                              recursive = True
+                              create_parents = True
     )
     self.assertResourceCalled('Directory', '/hadoop/hdfs/data',
                               owner = 'hdfs',
                               ignore_failures = True,
                               group = 'hadoop',
                               mode = 0755,
-                              recursive = True,
+                              create_parents = True,
                               cd_access='a'
                               )
     content = 
resource_management.libraries.functions.dfs_datanode_helper.DATA_DIR_TO_MOUNT_HEADER

http://git-wip-us.apache.org/repos/asf/ambari/blob/92c054b1/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py
----------------------------------------------------------------------
diff --git 
a/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py 
b/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py
index 1039a2d..1e3057f 100644
--- a/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py
+++ b/ambari-server/src/test/python/stacks/2.0.6/HDFS/test_hdfs_client.py
@@ -44,7 +44,7 @@ class Test(RMFTestCase):
                        target = RMFTestCase.TARGET_COMMON_SERVICES
     )
     self.assertResourceCalled('Directory', '/tmp',
-                              recursive = True,
+                              create_parents = True,
                               )
     self.assertResourceCalled('XmlConfig', 'hdfs-site.xml',
                               conf_dir = '/tmp/123',

Reply via email to