You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ao...@apache.org on 2015/06/17 14:49:05 UTC
[2/2] ambari git commit: AMBARI-11972. Atlas and Kafka Start fail
with non-root agent (aonishuk)
AMBARI-11972. Atlas and Kafka Start fail with non-root agent (aonishuk)
Project: http://git-wip-us.apache.org/repos/asf/ambari/repo
Commit: http://git-wip-us.apache.org/repos/asf/ambari/commit/1d40e639
Tree: http://git-wip-us.apache.org/repos/asf/ambari/tree/1d40e639
Diff: http://git-wip-us.apache.org/repos/asf/ambari/diff/1d40e639
Branch: refs/heads/branch-2.1
Commit: 1d40e6394e760c4853e3d5e4b459bca672854b96
Parents: 8c669e6
Author: Andrew Onishuk <ao...@hortonworks.com>
Authored: Wed Jun 17 15:46:12 2015 +0300
Committer: Andrew Onishuk <ao...@hortonworks.com>
Committed: Wed Jun 17 15:46:12 2015 +0300
----------------------------------------------------------------------
.../python/resource_management/core/source.py | 2 +-
.../ATLAS/0.1.0.2.3/package/scripts/metadata.py | 11 ++----
.../package/scripts/properties_config.py | 33 -----------------
.../package/scripts/atlas_plugin_utils.py | 39 --------------------
.../0.12.0.2.0/package/scripts/hcat_client.py | 5 +--
.../HIVE/0.12.0.2.0/package/scripts/hive.py | 12 ++----
.../0.12.0.2.0/package/scripts/hive_client.py | 3 --
.../package/scripts/hive_metastore.py | 4 --
.../0.12.0.2.0/package/scripts/hive_server.py | 4 --
.../0.12.0.2.0/package/scripts/params_linux.py | 7 +++-
.../package/scripts/setup_atlas_hive.py | 37 +++++++++++++++++++
.../package/scripts/webhcat_server.py | 6 +--
.../KAFKA/0.8.1.2.2/package/scripts/kafka.py | 11 +++---
.../0.8.1.2.2/package/scripts/kafka_broker.py | 1 -
.../package/scripts/properties_config.py | 32 ----------------
.../0.8.1.2.2/package/scripts/service_check.py | 3 ++
.../stacks/2.3/ATLAS/test_metadata_server.py | 15 +++-----
17 files changed, 67 insertions(+), 158 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-common/src/main/python/resource_management/core/source.py
----------------------------------------------------------------------
diff --git a/ambari-common/src/main/python/resource_management/core/source.py b/ambari-common/src/main/python/resource_management/core/source.py
index 1f888ac..916a618 100644
--- a/ambari-common/src/main/python/resource_management/core/source.py
+++ b/ambari-common/src/main/python/resource_management/core/source.py
@@ -55,7 +55,7 @@ class Source(object):
def __eq__(self, other):
return (isinstance(other, self.__class__)
- and self.get_content() == other.get_content())
+ and ((self.name.startswith(os.sep) and self.name == other.name) or self.get_content() == other.get_content()))
class StaticFile(Source):
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata.py
index 2eae71b..a1627b9 100644
--- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata.py
+++ b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/metadata.py
@@ -17,8 +17,6 @@ See the License for the specific language governing permissions and
limitations under the License.
"""
-import os
-import shutil
from resource_management import Directory, Fail, Logger, File, \
InlineTemplate, PropertiesFile, StaticFile
from resource_management.libraries.functions import format
@@ -67,12 +65,9 @@ def metadata():
recursive=True
)
- metadata_war_file = format('{params.metadata_home}/server/webapp/atlas.war')
- if not os.path.isfile(metadata_war_file):
- raise Fail("Unable to copy {0} because it does not exist".format(metadata_war_file))
-
- Logger.info("Copying {0} to {1}".format(metadata_war_file, params.expanded_war_dir))
- shutil.copy2(metadata_war_file, params.expanded_war_dir)
+ File(format("{expanded_war_dir}/atlas.war"),
+ content = StaticFile(format('{metadata_home}/server/webapp/atlas.war'))
+ )
PropertiesFile(format('{conf_dir}/application.properties'),
properties = params.application_properties,
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/properties_config.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/properties_config.py b/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/properties_config.py
deleted file mode 100644
index 2144f71..0000000
--- a/ambari-server/src/main/resources/common-services/ATLAS/0.1.0.2.3/package/scripts/properties_config.py
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/usr/bin/env python
-"""
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
-"""
-
-from resource_management.core import source, File
-from resource_management.libraries.functions import format
-
-
-def properties_inline_template(configurations):
- return source.InlineTemplate('''{% for key, value in configurations_dict.items() %}{{ key }}={{ value }}
-{% endfor %}''', configurations_dict=configurations)
-
-def properties_config(filename, configurations = None, conf_dir = None,
- mode = None, owner = None, group = None):
- config_content = properties_inline_template(configurations)
- File (format("{conf_dir}/{filename}"), content = config_content, owner = owner,
- group = group, mode = mode)
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/atlas_plugin_utils.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/atlas_plugin_utils.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/atlas_plugin_utils.py
deleted file mode 100644
index d3228c8..0000000
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/atlas_plugin_utils.py
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/usr/bin/env python
-"""
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
-"""
-from resource_management import Script
-from resource_management.core import Logger
-
-
-def configure_for_plugin(command_data_file):
- import json
- savedConfig = Script.get_config()
- if savedConfig['hostLevelParams'].get('custom_command', '') == 'RESTART':
- try:
- with open(command_data_file) as f:
- pass
- Script.config = json.load(f)
- Script.config['hostLevelParams']['package_list'] = \
- "[{\"name\":\"atlas-metadata*-hive-plugin\"}]"
-
- except IOError:
- Logger.error("Can not read json file with command parameters: ")
-
- return savedConfig
-
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hcat_client.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hcat_client.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hcat_client.py
index 46ed31b..1b5b768 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hcat_client.py
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hcat_client.py
@@ -21,23 +21,22 @@ limitations under the License.
import sys
from resource_management import *
from hcat import hcat
+from setup_atlas_hive import setup_atlas_hive
from ambari_commons import OSConst
from ambari_commons.os_family_impl import OsFamilyImpl
-from atlas_plugin_utils import configure_for_plugin
class HCatClient(Script):
def install(self, env):
import params
- savedConfig = configure_for_plugin(self.command_data_file)
self.install_packages(env, exclude_packages=params.hive_exclude_packages)
- Script.config = savedConfig
self.configure(env)
def configure(self, env):
import params
env.set_params(params)
hcat()
+ setup_atlas_hive()
def status(self, env):
raise ClientComponentHasNoStatus()
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive.py
index 519e97f..6081b39 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive.py
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive.py
@@ -21,7 +21,6 @@ limitations under the License.
import os
import glob
from urlparse import urlparse
-from resource_management import PropertiesFile
from resource_management.libraries.script.script import Script
from resource_management.libraries.resources.hdfs_resource import HdfsResource
@@ -39,6 +38,8 @@ from resource_management.core.exceptions import Fail
from ambari_commons.os_family_impl import OsFamilyFuncImpl, OsFamilyImpl
from ambari_commons import OSConst
+from setup_atlas_hive import setup_atlas_hive
+
@OsFamilyFuncImpl(os_family=OSConst.WINSRV_FAMILY)
def hive(name=None):
@@ -213,13 +214,8 @@ def hive(name=None):
group=params.user_group,
mode=0644)
- if params.atlas_hosts:
- PropertiesFile(format('{hive_config_dir}/client.properties'),
- properties = params.atlas_client_props,
- owner = params.hive_user,
- group = params.user_group,
- mode = 0644)
-
+ setup_atlas_hive()
+
if params.hive_specific_configs_supported and name == 'hiveserver2':
XmlConfig("hiveserver2-site.xml",
conf_dir=params.hive_server_conf_dir,
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_client.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_client.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_client.py
index a09f02a..d2855b1 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_client.py
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_client.py
@@ -24,14 +24,11 @@ from resource_management.libraries.functions import hdp_select
from hive import hive
from ambari_commons.os_family_impl import OsFamilyImpl
from ambari_commons import OSConst
-from atlas_plugin_utils import configure_for_plugin
class HiveClient(Script):
def install(self, env):
import params
- savedConfig = configure_for_plugin(self.command_data_file)
self.install_packages(env, exclude_packages=params.hive_exclude_packages)
- Script.config = savedConfig
self.configure(env)
def status(self, env):
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py
index e6f3e97..a17ea4f 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_metastore.py
@@ -38,7 +38,6 @@ from hive import jdbc_connector
from hive_service import hive_service
from ambari_commons.os_family_impl import OsFamilyImpl
from ambari_commons import OSConst
-from atlas_plugin_utils import configure_for_plugin
# the legacy conf.server location in HDP 2.2
LEGACY_HIVE_SERVER_CONF = "/etc/hive/conf.server"
@@ -62,9 +61,6 @@ class HiveMetastore(Script):
def configure(self, env):
import params
env.set_params(params)
- savedConfig = configure_for_plugin(self.command_data_file)
- self.install_packages(env, exclude_packages = params.hive_exclude_packages)
- Script.config = savedConfig
hive(name = 'metastore')
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server.py
index e29df4f..b20c461 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server.py
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/hive_server.py
@@ -36,7 +36,6 @@ if OSCheck.is_windows_family():
from resource_management.libraries.functions.windows_service_utils import check_windows_service_status
from setup_ranger_hive import setup_ranger_hive
from ambari_commons.os_family_impl import OsFamilyImpl
-from atlas_plugin_utils import configure_for_plugin
from resource_management.core.logger import Logger
import hive_server_upgrade
@@ -52,9 +51,6 @@ class HiveServer(Script):
def configure(self, env):
import params
env.set_params(params)
- savedConfig = configure_for_plugin(self.command_data_file)
- self.install_packages(env, exclude_packages=params.hive_exclude_packages)
- Script.config = savedConfig
hive(name='hiveserver2')
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
index 2c231d1..53ae99e 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/params_linux.py
@@ -354,9 +354,12 @@ hive_site_config = dict(config['configurations']['hive-site'])
########################################################
atlas_hosts = default('/clusterHostInfo/atlas_server_hosts', [])
+has_atlas = len(atlas_hosts) > 0
classpath_addition = ""
-if not atlas_hosts:
- hive_exclude_packages.append('atlas-metadata*-hive-plugin')
+atlas_plugin_package = "atlas-metadata*-hive-plugin"
+
+if not has_atlas:
+ hive_exclude_packages.append(atlas_plugin_package)
else:
# hive-site
hive_site_config['hive.cluster.name'] = config['clusterName']
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/setup_atlas_hive.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/setup_atlas_hive.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/setup_atlas_hive.py
new file mode 100644
index 0000000..a956c6c
--- /dev/null
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/setup_atlas_hive.py
@@ -0,0 +1,37 @@
+#!/usr/bin/env python
+"""
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements. See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership. The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+
+"""
+
+from resource_management.libraries.resources.properties_file import PropertiesFile
+from resource_management.core.resources.packaging import Package
+from resource_management.libraries.functions.format import format
+
+def setup_atlas_hive():
+ import params
+
+ if params.has_atlas:
+ if not params.host_sys_prepped:
+ Package(params.atlas_plugin_package, # FIXME HACK: install the package during RESTART/START when install_packages is not triggered.
+ )
+
+ PropertiesFile(format('{hive_config_dir}/client.properties'),
+ properties = params.atlas_client_props,
+ owner = params.hive_user,
+ group = params.user_group,
+ mode = 0644)
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/webhcat_server.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/webhcat_server.py b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/webhcat_server.py
index 6ea8ee6..0473d17 100644
--- a/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/webhcat_server.py
+++ b/ambari-server/src/main/resources/common-services/HIVE/0.12.0.2.0/package/scripts/webhcat_server.py
@@ -26,9 +26,9 @@ from resource_management.libraries.functions.security_commons import build_expec
FILE_TYPE_XML
from webhcat import webhcat
from webhcat_service import webhcat_service
+from setup_atlas_hive import setup_atlas_hive
from ambari_commons import OSConst
from ambari_commons.os_family_impl import OsFamilyImpl
-from atlas_plugin_utils import configure_for_plugin
class WebHCatServer(Script):
@@ -50,10 +50,8 @@ class WebHCatServer(Script):
def configure(self, env):
import params
env.set_params(params)
- savedConfig = configure_for_plugin(self.command_data_file)
- self.install_packages(env, exclude_packages=params.hive_exclude_packages)
- Script.config = savedConfig
webhcat()
+ setup_atlas_hive()
@OsFamilyImpl(os_family=OSConst.WINSRV_FAMILY)
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka.py b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka.py
index 0957215..4210e96 100644
--- a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka.py
+++ b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka.py
@@ -19,7 +19,7 @@ limitations under the License.
"""
from resource_management import *
-from properties_config import properties_config
+from resource_management.libraries.resources.properties_file import PropertiesFile
from resource_management.libraries.resources.template_config import TemplateConfig
import sys, os
from copy import deepcopy
@@ -67,13 +67,12 @@ def kafka():
group=params.user_group,
recursive=True)
- conf_dir = params.conf_dir
- properties_config("server.properties",
- conf_dir=params.conf_dir,
- configurations=kafka_server_config,
+ PropertiesFile("server.properties",
+ dir=params.conf_dir,
+ properties=kafka_server_config,
owner=params.kafka_user,
group=params.user_group,
- brokerid=brokerid)
+ )
File(format("{conf_dir}/kafka-env.sh"),
owner=params.kafka_user,
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka_broker.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka_broker.py b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka_broker.py
index dd210b7..20e3d59 100644
--- a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka_broker.py
+++ b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/kafka_broker.py
@@ -31,7 +31,6 @@ class KafkaBroker(Script):
def install(self, env):
self.install_packages(env)
- self.configure(env)
def configure(self, env):
import params
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/properties_config.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/properties_config.py b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/properties_config.py
deleted file mode 100644
index 56bab2c..0000000
--- a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/properties_config.py
+++ /dev/null
@@ -1,32 +0,0 @@
-#!/usr/bin/env python
-"""
-Licensed to the Apache Software Foundation (ASF) under one
-or more contributor license agreements. See the NOTICE file
-distributed with this work for additional information
-regarding copyright ownership. The ASF licenses this file
-to you under the Apache License, Version 2.0 (the
-"License"); you may not use this file except in compliance
-with the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS,
-WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-See the License for the specific language governing permissions and
-limitations under the License.
-
-"""
-
-import re
-from resource_management import *
-
-def properties_inline_template(configurations):
- return source.InlineTemplate('''{% for key, value in configurations_dict.items() %}{{ key }}={{ value }}
-{% endfor %}''', configurations_dict=configurations)
-
-def properties_config(filename, configurations = None, conf_dir = None,
- mode = None, owner = None, group = None, brokerid = None):
- config_content = properties_inline_template(configurations)
- File (format("{conf_dir}/{filename}"), content = config_content, owner = owner,
- group = group, mode = mode)
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/service_check.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/service_check.py b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/service_check.py
index ef6f62f..f76e954 100644
--- a/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/service_check.py
+++ b/ambari-server/src/main/resources/common-services/KAFKA/0.8.1.2.2/package/scripts/service_check.py
@@ -47,6 +47,9 @@ class ServiceCheck(Script):
kafka_config = {}
with open(params.conf_dir+"/server.properties", "r") as conf_file:
for line in conf_file:
+ if line.startswith("#") or not line.strip():
+ continue
+
key,value = line.split("=")
kafka_config[key] = value.replace("\n","")
http://git-wip-us.apache.org/repos/asf/ambari/blob/1d40e639/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py
----------------------------------------------------------------------
diff --git a/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py b/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py
index 8d72faf..fd4c1ed 100644
--- a/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py
+++ b/ambari-server/src/test/python/stacks/2.3/ATLAS/test_metadata_server.py
@@ -64,6 +64,9 @@ class TestMetadataServer(RMFTestCase):
cd_access='a',
mode=0644
)
+ self.assertResourceCalled('File', '/var/lib/atlas/server/webapp/atlas.war',
+ content = StaticFile('/usr/hdp/current/atlas-server/server/webapp/atlas.war'),
+ )
appprops = dict(self.getConfig()['configurations'][
'application-properties'])
appprops['atlas.http.authentication.kerberos.name.rules'] = ' \\ \n'.join(appprops['atlas.http.authentication.kerberos.name.rules'].splitlines())
@@ -91,11 +94,7 @@ class TestMetadataServer(RMFTestCase):
mode=0644,
)
- @patch("shutil.copy2", new = MagicMock())
- @patch("os.path.isfile")
- def test_configure_default(self, isfile_mock):
- isfile_mock.return_value = True
-
+ def test_configure_default(self):
self.executeScript(self.COMMON_SERVICES_PACKAGE_DIR + "/scripts/metadata_server.py",
classname = "MetadataServer",
command = "configure",
@@ -107,11 +106,7 @@ class TestMetadataServer(RMFTestCase):
self.configureResourcesCalled()
self.assertNoMoreResources()
- @patch("shutil.copy2", new = MagicMock())
- @patch("os.path.isfile")
- def test_start_default(self, isfile_mock):
- isfile_mock.return_value = True
-
+ def test_start_default(self):
self.executeScript(self.COMMON_SERVICES_PACKAGE_DIR + "/scripts/metadata_server.py",
classname = "MetadataServer",
command = "start",