| diff --git a/ambari-agent/src/main/package/dependencies.properties b/ambari-agent/src/main/package/dependencies.properties |
| index ec64264df4..0d4c64734f 100644 |
| --- a/ambari-agent/src/main/package/dependencies.properties |
| +++ b/ambari-agent/src/main/package/dependencies.properties |
| @@ -28,5 +28,5 @@ |
| # Such a format is respected by install_ambari_tarball.py by default, |
| # however should be encouraged manually in pom.xml. |
| |
| -rpm.dependency.list=openssl,\nRequires: rpm-python,\nRequires: zlib,\nRequires: python >= 2.6 |
| -deb.dependency.list=openssl, python (>= 2.6) |
| \ No newline at end of file |
| +rpm.dependency.list=openssl,\nRequires: zlib,\nRequires: python2 >= 2.6 |
| +deb.dependency.list=openssl, python (>= 2.6) |
| diff --git a/ambari-common/src/main/python/ambari_commons/repo_manager/yum_manager.py b/ambari-common/src/main/python/ambari_commons/repo_manager/yum_manager.py |
| index e3df80ecea..392871c83f 100644 |
| --- a/ambari-common/src/main/python/ambari_commons/repo_manager/yum_manager.py |
| +++ b/ambari-common/src/main/python/ambari_commons/repo_manager/yum_manager.py |
| @@ -274,10 +274,7 @@ class YumManager(GenericManager): |
| we should not rely on that. |
| """ |
| |
| - if os.geteuid() == 0: |
| - return self.yum_check_package_available(name) |
| - else: |
| - return self.rpm_check_package_available(name) |
| + return self.rpm_check_package_available(name) |
| |
| def yum_check_package_available(self, name): |
| """ |
| @@ -342,17 +339,13 @@ class YumManager(GenericManager): |
| return set(repo_ids) |
| |
| def rpm_check_package_available(self, name): |
| - import rpm # this is faster then calling 'rpm'-binary externally. |
| - ts = rpm.TransactionSet() |
| - packages = ts.dbMatch() |
| + import os |
| + packages = os.popen("rpm -qa --queryformat '%{name} '").read().split() |
| |
| name_regex = re.escape(name).replace("\\?", ".").replace("\\*", ".*") + '$' |
| regex = re.compile(name_regex) |
| |
| - for package in packages: |
| - if regex.match(package['name']): |
| - return True |
| - return False |
| + return any(regex.match(package) for package in packages) |
| |
| def get_installed_package_version(self, package_name): |
| version = None |
| diff --git a/ambari-server/src/main/package/dependencies.properties b/ambari-server/src/main/package/dependencies.properties |
| index 01244a8375..70205d5dc6 100644 |
| --- a/ambari-server/src/main/package/dependencies.properties |
| +++ b/ambari-server/src/main/package/dependencies.properties |
| @@ -28,6 +28,6 @@ |
| # Such a format is respected by install_ambari_tarball.py by default, |
| # however should be encouraged manually in pom.xml. |
| |
| -rpm.dependency.list=postgresql-server >= 8.1,\nRequires: openssl,\nRequires: python >= 2.6 |
| +rpm.dependency.list=postgresql-server >= 8.1,\nRequires: openssl,\nRequires: python2 >= 2.6 |
| rpm.dependency.list.suse=postgresql-server >= 8.1,\nRequires: openssl,\nRequires: python-xml,\nRequires: python >= 2.6 |
| -deb.dependency.list=openssl, postgresql (>= 8.1), python (>= 2.6), curl |
| \ No newline at end of file |
| +deb.dependency.list=openssl, postgresql (>= 8.1), python (>= 2.6), curl |