You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@atlas.apache.org by sh...@apache.org on 2015/07/21 09:42:57 UTC
incubator-atlas git commit: ATLAS-56 atlas_config.py should give an
informative error if jar or java binaries can't be found (dossett@gmail.com
via shwethags)
Repository: incubator-atlas
Updated Branches:
refs/heads/master 5e00edea2 -> b832faf0c
ATLAS-56 atlas_config.py should give an informative error if jar or java binaries can't be found (dossett@gmail.com via shwethags)
Project: http://git-wip-us.apache.org/repos/asf/incubator-atlas/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-atlas/commit/b832faf0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-atlas/tree/b832faf0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-atlas/diff/b832faf0
Branch: refs/heads/master
Commit: b832faf0c7982af4ad6cf776fb153614b5578383
Parents: 5e00ede
Author: Shwetha GS <ss...@hortonworks.com>
Authored: Tue Jul 21 13:12:21 2015 +0530
Committer: Shwetha GS <ss...@hortonworks.com>
Committed: Tue Jul 21 13:12:21 2015 +0530
----------------------------------------------------------------------
release-log.txt | 1 +
src/bin/atlas_config.py | 6 ++++++
src/test/python/scripts/TestMetadata.py | 23 +++++++++++++++++++++++
3 files changed, 30 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/b832faf0/release-log.txt
----------------------------------------------------------------------
diff --git a/release-log.txt b/release-log.txt
index 912632e..d655478 100644
--- a/release-log.txt
+++ b/release-log.txt
@@ -8,6 +8,7 @@ ATLAS-54 Rename configs in hive hook (shwethags)
ATLAS-3 Mixed Index creation fails with Date types (suma.shivaprasad via shwethags)
ALL CHANGES:
+ATLAS-56 atlas_config.py should give an informative error if jar or java binaries can't be found (dossett@gmail.com via shwethags)
ATLAS-45 Entity submit fails (suma.shivaprasad via shwethags)
ATLAS-46 Different data directory with restart (shwethags)
ATLAS-81 atlas debian packaing fails in maven build (vijay_k via shwethags)
http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/b832faf0/src/bin/atlas_config.py
----------------------------------------------------------------------
diff --git a/src/bin/atlas_config.py b/src/bin/atlas_config.py
index 8a1f83d..a3a23ef 100755
--- a/src/bin/atlas_config.py
+++ b/src/bin/atlas_config.py
@@ -116,6 +116,9 @@ def java(classname, args, classpath, jvm_opts_list, logdir=None):
else:
prg = which("java")
+ if prg is None:
+ raise EnvironmentError('The java binary could not be found in your path or JAVA_HOME')
+
commandline = [prg]
commandline.extend(jvm_opts_list)
commandline.append("-classpath")
@@ -131,6 +134,9 @@ def jar(path):
else:
prg = which("jar")
+ if prg is None:
+ raise EnvironmentError('The jar binary could not be found in your path or JAVA_HOME')
+
commandline = [prg]
commandline.append("-xf")
commandline.append(path)
http://git-wip-us.apache.org/repos/asf/incubator-atlas/blob/b832faf0/src/test/python/scripts/TestMetadata.py
----------------------------------------------------------------------
diff --git a/src/test/python/scripts/TestMetadata.py b/src/test/python/scripts/TestMetadata.py
index d4b0457..9ca346d 100644
--- a/src/test/python/scripts/TestMetadata.py
+++ b/src/test/python/scripts/TestMetadata.py
@@ -19,6 +19,7 @@ limitations under the License.
'''
import sys
+from os import environ
from mock import patch
import unittest
import logging
@@ -59,6 +60,28 @@ class TestMetadata(unittest.TestCase):
['-Datlas.log.dir=metadata_home/logs', '-Datlas.log.file=application.log', '-Datlas.home=metadata_home', '-Duser.dir=metadata_home', '-Datlas.conf=metadata_home/conf', '-Xmx1024m'], 'metadata_home/logs')
pass
+ def test_jar_java_lookups_fail(self):
+ java_home = environ['JAVA_HOME']
+ del environ['JAVA_HOME']
+ orig_path = environ['PATH']
+ environ['PATH'] = "/dev/null"
+
+ self.assertRaises(EnvironmentError, mc.jar, "foo")
+ self.assertRaises(EnvironmentError, mc.java, "empty", "empty", "empty", "empty")
+
+ environ['JAVA_HOME'] = java_home
+ environ['PATH'] = orig_path
+
+ @patch.object(mc, "runProcess")
+ @patch.object(mc, "which", return_value="foo")
+ def test_jar_java_lookups_succeed_from_path(self, which_mock, runProcess_mock):
+ java_home = environ['JAVA_HOME']
+ del environ['JAVA_HOME']
+
+ mc.jar("foo")
+ mc.java("empty", "empty", "empty", "empty")
+
+ environ['JAVA_HOME'] = java_home
if __name__ == "__main__":
logging.basicConfig(format='%(asctime)s %(message)s', level=logging.DEBUG)