Hi spacewalkers,
I've updated the spacecmd package.py file, to add a new function
package_listdependencies.
Can you review and add this patch upstream.
Cheers,
Gregor Grüner
From 28c227e56f6d3506a0ff97579576d9feeed7850c Mon Sep 17 00:00:00 2001
From: Gregor Gruener ggru...@redhat.com
Date: Fri, 20 Dec 2013 09:33:31 +0100
Subject: [PATCH] added function package_listdependencies
---
spacecmd/spacecmd.spec | 3 +++
spacecmd/src/lib/package.py | 39 +++
2 files changed, 42 insertions(+)
diff --git a/spacecmd/spacecmd.spec b/spacecmd/spacecmd.spec
index 3b81360..12c9ed3 100644
--- a/spacecmd/spacecmd.spec
+++ b/spacecmd/spacecmd.spec
@@ -64,6 +64,9 @@ touch %{buildroot}/%{python_sitelib}/spacecmd/__init__.py
%doc %{_mandir}/man1/spacecmd.1.gz
%changelog
+* Fri Dec 20 2013 Gregor Gruener ggru...@redhat.com 2.1.21-1
+- added function package_listdependencies
+
* Fri Dec 13 2013 Milan Zazrivec mzazri...@redhat.com 2.1.20-1
- 1009841 - don't attempt to write out 'None'
diff --git a/spacecmd/src/lib/package.py b/spacecmd/src/lib/package.py
index ea2f355..8bbc8a7 100644
--- a/spacecmd/src/lib/package.py
+++ b/spacecmd/src/lib/package.py
@@ -297,4 +297,43 @@ def do_package_listerrata(self, args):
if len(errata):
print '\n'.join(sorted([ e.get('advisory') for e in errata ]))
+
+
+def help_package_listdependencies(self):
+print 'package_listdependencies: List the dependencies for a package'
+print 'usage: package_listdependencies PACKAGE'
+
+def do_package_listdependencies(self, args):
+(args, options) = parse_arguments(args)
+
+if not len(args):
+self.help_package_listdependencies()
+return
+
+packages = []
+for package in args:
+packages.extend(self.do_package_search(' '.join(args), True))
+
+if not len(packages):
+logging.warning('No packages found')
+return
+
+add_separator = False
+
+for package in packages:
+if add_separator: print self.SEPARATOR
+add_separator = True
+
+package_id = self.get_package_id(package)
+
+if not package_id:
+logging.warning('%s is not a valid package' % package)
+continue
+
+package_id = int(package_id)
+pkgdeps = self.client.packages.list_dependencies(self.session, package_id)
+for dep in pkgdeps:
+print 'Package Name: %s' % package
+print 'Dependency: %s Type: %s Modifier: %s' % (dep['dependency'], dep['dependency_type'], dep['dependency_modifier'])
+
# vim:ts=4:expandtab:
--
1.8.3.1
___
Spacewalk-devel mailing list
Spacewalk-devel@redhat.com
https://www.redhat.com/mailman/listinfo/spacewalk-devel