From 7af374b0d38e4507a9f2606fc682cb06fb959a9b Mon Sep 17 00:00:00 2001 From: Jason Pepas Date: Fri, 25 Aug 2006 13:47:23 +0000 Subject: Updated rpmlisting.py to sort package listings. git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@2109 ce84e21b-d406-0410-9b95-82705330c041 --- tools/rpmlisting.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'tools/rpmlisting.py') diff --git a/tools/rpmlisting.py b/tools/rpmlisting.py index 543293edf..c6347e97b 100644 --- a/tools/rpmlisting.py +++ b/tools/rpmlisting.py @@ -177,12 +177,20 @@ def prune_archs(pkgs): return pruned_pkgs +# from http://aspn.activestate.com/ASPN/Python/Cookbook/Recipe/52306 +def sorted_values(adict): + """return a list of values from a dict, sorted by key.""" + items = adict.items() + items.sort() + return [value for key, value in items] + + def scan_rpm_dir(rpmdir, uri, group, priority=0, output=sys.stdout): """the meat of this library.""" output.write('\n' % (uri, priority)) output.write(' \n' % group) pkgs = prune_archs(prune_pkgs(get_pkgs(rpmdir))) - for rpmblobs in pkgs.values(): + for rpmblobs in sorted_values(pkgs): if len(rpmblobs) == 1: # regular pkgmgr entry rpmblob = rpmblobs[0] -- cgit v1.2.3-1-g7c22