فهرست منبع

AMBARI-5431. storm-env.sh needs to be created at /etc/storm/conf

Sumit Mohanty 11 سال پیش
والد
کامیت
f62f57a15e

+ 1 - 0
ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/package/scripts/params.py

@@ -38,6 +38,7 @@ rest_api_port = "8745"
 rest_api_admin_port = "8746"
 rest_api_admin_port = "8746"
 rest_api_conf_file = format("{conf_dir}/config.yaml")
 rest_api_conf_file = format("{conf_dir}/config.yaml")
 rest_lib_dir = "/usr/lib/storm/contrib/storm-rest"
 rest_lib_dir = "/usr/lib/storm/contrib/storm-rest"
+java_home = config['hostLevelParams']['java_home']
 
 
 if 'ganglia_server_host' in config['clusterHostInfo'] and \
 if 'ganglia_server_host' in config['clusterHostInfo'] and \
     len(config['clusterHostInfo']['ganglia_server_host'])>0:
     len(config['clusterHostInfo']['ganglia_server_host'])>0:

+ 16 - 11
ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/package/scripts/storm.py

@@ -22,6 +22,7 @@ from resource_management import *
 from yaml_config import yaml_config
 from yaml_config import yaml_config
 import sys
 import sys
 
 
+
 def storm():
 def storm():
   import params
   import params
 
 
@@ -32,19 +33,23 @@ def storm():
   )
   )
 
 
   File(format("{conf_dir}/config.yaml"),
   File(format("{conf_dir}/config.yaml"),
-            content=Template("config.yaml.j2"),
-            owner = params.storm_user,
-            group = params.user_group
+       content=Template("config.yaml.j2"),
+       owner=params.storm_user,
+       group=params.user_group
+  )
+
+  yaml_config("storm.yaml",
+              conf_dir=params.conf_dir,
+              configurations=params.config['configurations']['storm-site'],
+              owner=params.storm_user,
+              group=params.user_group
   )
   )
 
 
-  yaml_config( "storm.yaml",
-               conf_dir = params.conf_dir,
-               configurations = params.config['configurations']['storm-site'],
-               owner = params.storm_user,
-               group = params.user_group
+  TemplateConfig(format("{conf_dir}/storm-env.sh"),
+                 owner=params.storm_user
   )
   )
-  
+
   if params.security_enabled:
   if params.security_enabled:
-    TemplateConfig( format("{conf_dir}/storm_jaas.conf"),
-      owner = params.storm_user
+    TemplateConfig(format("{conf_dir}/storm_jaas.conf"),
+                   owner=params.storm_user
     )
     )

+ 45 - 0
ambari-server/src/main/resources/stacks/HDP/2.1/services/STORM/package/templates/storm-env.sh.j2

@@ -0,0 +1,45 @@
+{#
+# 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.
+#}
+
+
+#!/bin/bash
+#
+# Copyright 2014 The Apache Software Foundation
+#
+# 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.
+
+# Set Storm specific environment variables here.
+
+# The java implementation to use.
+export JAVA_HOME={{java_home}}
+
+# export STORM_CONF_DIR=""

+ 6 - 0
ambari-server/src/test/python/stacks/2.1/STORM/test_storm_drpc_server.py

@@ -156,6 +156,9 @@ class TestStormDrpcServer(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
 
 
   def assert_configure_secured(self):
   def assert_configure_secured(self):
     self.assertResourceCalled('Directory', '/var/log/storm',
     self.assertResourceCalled('Directory', '/var/log/storm',
@@ -189,6 +192,9 @@ class TestStormDrpcServer(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
       owner = 'storm',
       owner = 'storm',
     )
     )

+ 6 - 0
ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus.py

@@ -156,6 +156,9 @@ class TestStormNimbus(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
 
 
   def assert_configure_secured(self):
   def assert_configure_secured(self):
     self.assertResourceCalled('Directory', '/var/log/storm',
     self.assertResourceCalled('Directory', '/var/log/storm',
@@ -189,6 +192,9 @@ class TestStormNimbus(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
       owner = 'storm',
       owner = 'storm',
     )
     )

+ 7 - 1
ambari-server/src/test/python/stacks/2.1/STORM/test_storm_nimbus_prod.py

@@ -125,6 +125,9 @@ class TestStormNimbus(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
 
 
   def assert_configure_secured(self):
   def assert_configure_secured(self):
     self.assertResourceCalled('Directory', '/var/log/storm',
     self.assertResourceCalled('Directory', '/var/log/storm',
@@ -157,7 +160,10 @@ class TestStormNimbus(RMFTestCase):
       content = 'InlineTemplateMock',
       content = 'InlineTemplateMock',
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
-    )    
+    )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
       owner = 'storm',
       owner = 'storm',
     )
     )

+ 6 - 0
ambari-server/src/test/python/stacks/2.1/STORM/test_storm_rest_api_service.py

@@ -156,6 +156,9 @@ class TestStormRestApi(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
 
 
   def assert_configure_secured(self):
   def assert_configure_secured(self):
     self.assertResourceCalled('Directory', '/var/log/storm',
     self.assertResourceCalled('Directory', '/var/log/storm',
@@ -189,6 +192,9 @@ class TestStormRestApi(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
       owner = 'storm',
       owner = 'storm',
     )
     )

+ 6 - 0
ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor.py

@@ -195,6 +195,9 @@ class TestStormSupervisor(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
 
 
   def assert_configure_secured(self):
   def assert_configure_secured(self):
     self.assertResourceCalled('Directory', '/var/log/storm',
     self.assertResourceCalled('Directory', '/var/log/storm',
@@ -228,6 +231,9 @@ class TestStormSupervisor(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
       owner = 'storm',
       owner = 'storm',
     )
     )

+ 7 - 1
ambari-server/src/test/python/stacks/2.1/STORM/test_storm_supervisor_prod.py

@@ -170,6 +170,9 @@ class TestStormSupervisor(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
 
 
   def assert_configure_secured(self):
   def assert_configure_secured(self):
     self.assertResourceCalled('Directory', '/var/log/storm',
     self.assertResourceCalled('Directory', '/var/log/storm',
@@ -202,7 +205,10 @@ class TestStormSupervisor(RMFTestCase):
       content = 'InlineTemplateMock',
       content = 'InlineTemplateMock',
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
-    )    
+    )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
       owner = 'storm',
       owner = 'storm',
     )
     )

+ 6 - 0
ambari-server/src/test/python/stacks/2.1/STORM/test_storm_ui_server.py

@@ -156,6 +156,9 @@ class TestStormUiServer(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
 
 
   def assert_configure_secured(self):
   def assert_configure_secured(self):
     self.assertResourceCalled('Directory', '/var/log/storm',
     self.assertResourceCalled('Directory', '/var/log/storm',
@@ -189,6 +192,9 @@ class TestStormUiServer(RMFTestCase):
       group = 'hadoop',
       group = 'hadoop',
       mode = None,
       mode = None,
     )
     )
+    self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm-env.sh',
+                              owner = 'storm',
+                              )
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
     self.assertResourceCalled('TemplateConfig', '/etc/storm/conf/storm_jaas.conf',
       owner = 'storm',
       owner = 'storm',
     )
     )