Jelajahi Sumber

AMBARI-8073. HostCleanup.py issues with HDP-2.2 on SuSe and Ubuntu (aonishuk)

Andrew Onishuk 10 tahun lalu
induk
melakukan
b935b50b62

+ 1 - 0
ambari-agent/src/main/python/ambari_agent/HostInfo.py

@@ -80,6 +80,7 @@ class HostInfo:
 
   # Packages that are used to find repos (then repos are used to find other packages)
   PACKAGES = [
+    "hadoop_2_2_*","hadoop-2-2-.*","zookeeper_2_2_*","zookeeper-2-2-.*",
     "hadoop", "zookeeper", "webhcat", "*-manager-server-db", "*-manager-daemons"
   ]
 

+ 3 - 3
ambari-agent/src/test/python/resource_management/TestPackageResource.py

@@ -35,7 +35,7 @@ class TestPackageResource(TestCase):
     with Environment('/') as env:
       Package("some_package",
       )
-    call_mock.assert_has_calls([call("dpkg --get-selections | grep ^some-package | grep -v deinstall"),
+    call_mock.assert_has_calls([call("dpkg --get-selections | grep ^some-package$ | grep -v deinstall"),
                                 call("DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get -q -o Dpkg::Options::='--force-confdef'"
                                       " --allow-unauthenticated --assume-yes install some-package"),
                                 call("apt-get update -qq")
@@ -52,7 +52,7 @@ class TestPackageResource(TestCase):
     with Environment('/') as env:
       Package("some_package",
       )
-    call_mock.assert_has_calls([call("dpkg --get-selections | grep ^some-package | grep -v deinstall"),
+    call_mock.assert_has_calls([call("dpkg --get-selections | grep ^some-package$ | grep -v deinstall"),
                                 call("DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get -q -o Dpkg::Options::='--force-confdef'"
                                       " --allow-unauthenticated --assume-yes install some-package")
                               ])
@@ -69,7 +69,7 @@ class TestPackageResource(TestCase):
     with Environment('/') as env:
       Package("some_package",
       )
-    call_mock.assert_called_with('rpm -qa | grep ^some_package')
+    call_mock.assert_called_with('rpm -qa some_package')
     shell_mock.assert_called_with("/usr/bin/yum -d 0 -e 0 -y install some_package")
 
   @patch.object(shell, "call")

+ 1 - 1
ambari-common/src/main/python/resource_management/core/providers/package/apt.py

@@ -26,7 +26,7 @@ from resource_management.core.logger import Logger
 INSTALL_CMD = "DEBIAN_FRONTEND=noninteractive /usr/bin/apt-get -q -o Dpkg::Options::='--force-confdef' --allow-unauthenticated --assume-yes install %s"
 REPO_UPDATE_CMD = "apt-get update -qq"
 REMOVE_CMD = "/usr/bin/apt-get -y -q remove %s"
-CHECK_CMD = "dpkg --get-selections | grep ^%s | grep -v deinstall"
+CHECK_CMD = "dpkg --get-selections | grep ^%s$ | grep -v deinstall"
 
 def replace_underscores(function_to_decorate):
   def wrapper(*args):

+ 1 - 1
ambari-common/src/main/python/resource_management/core/providers/package/yumrpm.py

@@ -26,7 +26,7 @@ from resource_management.core.logger import Logger
 
 INSTALL_CMD = "/usr/bin/yum -d 0 -e 0 -y install %s"
 REMOVE_CMD = "/usr/bin/yum -d 0 -e 0 -y erase %s"
-CHECK_CMD = "rpm -qa | grep ^%s"
+CHECK_CMD = "rpm -qa %s"
 
 class YumProvider(PackageProvider):
   def install_package(self, name):