This is an automated email from the ASF dual-hosted git repository.
mpapirkovskyy pushed a commit to branch branch-2.6
in repository https://gitbox.apache.org/repos/asf/ambari.git
The following commit(s) were added to refs/heads/branch-2.6 by this push:
new 6810159 AMBARI-25235. Add a sysprep configurations to run
conf-selects only a single time. (mpapirkovskyy) (#2922)
6810159 is described below
commit 68101592bc2ea01606d920124e0cb48f348954dd
Author: Myroslav Papirkovskyi <[email protected]>
AuthorDate: Tue Apr 9 21:37:11 2019 +0300
AMBARI-25235. Add a sysprep configurations to run conf-selects only a
single time. (mpapirkovskyy) (#2922)
---
.../HDP/2.0.6/hooks/after-INSTALL/scripts/params.py | 2 ++
.../hooks/after-INSTALL/scripts/shared_initialization.py | 15 +++++++++++----
2 files changed, 13 insertions(+), 4 deletions(-)
diff --git
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/params.py
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/params.py
index 29a74e7..a1f4764 100644
---
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/params.py
+++
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/params.py
@@ -92,3 +92,5 @@ link_configs_lock_file = get_config_lock_file()
stack_select_lock_file = os.path.join(tmp_dir, "stack_select_lock_file")
upgrade_suspended = default("/roleParams/upgrade_suspended", False)
+sysprep_skip_conf_select =
default("/configurations/cluster-env/sysprep_skip_conf_select", False)
+conf_select_marker_file = os.path.join(tmp_dir, "conf_select_done_marker")
diff --git
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py
index e28b825..f423136 100644
---
a/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py
+++
b/ambari-server/src/main/resources/stacks/HDP/2.0.6/hooks/after-INSTALL/scripts/shared_initialization.py
@@ -109,7 +109,14 @@ def link_configs(struct_out_file):
Logger.info("Could not load 'version' from {0}".format(struct_out_file))
return
- # On parallel command execution this should be executed by a single process
at a time.
- with FcntlBasedProcessLock(params.link_configs_lock_file, enabled =
params.is_parallel_execution_enabled, skip_fcntl_failures = True):
- for package_name, directories in
conf_select.get_package_dirs().iteritems():
- conf_select.convert_conf_directories_to_symlinks(package_name,
json_version, directories)
\ No newline at end of file
+ if not params.sysprep_skip_conf_select or not
os.path.exists(params.conf_select_marker_file):
+ # On parallel command execution this should be executed by a single
process at a time.
+ with FcntlBasedProcessLock(params.link_configs_lock_file, enabled =
params.is_parallel_execution_enabled, skip_fcntl_failures = True):
+ for package_name, directories in
conf_select.get_package_dirs().iteritems():
+ conf_select.convert_conf_directories_to_symlinks(package_name,
json_version, directories)
+
+ # create a file to mark that conf-selects were already done
+ with open(params.conf_select_marker_file, "wb") as fp:
+ pass
+ else:
+ Logger.info(format("Skipping conf-select stage, since
cluster-env/sysprep_skip_conf_select is set and mark file
{conf_select_marker_file} exists"))
\ No newline at end of file