From 8f8ecb2ba27af9438f84a9ec8ccff8543d5c7189 Mon Sep 17 00:00:00 2001
From: Sebastien Luttringer <sebastien.luttringer@smartjog.com>
Date: Thu, 8 Dec 2011 14:31:24 +0100
Subject: [PATCH] create a function to list all images in repoman

---
 installsystems/repository.py | 28 ++++++++++++++++++----------
 1 file changed, 18 insertions(+), 10 deletions(-)

diff --git a/installsystems/repository.py b/installsystems/repository.py
index 77a60ea..1caf4d5 100644
--- a/installsystems/repository.py
+++ b/installsystems/repository.py
@@ -595,6 +595,22 @@ class RepositoryManager(object):
         '''
         return [ r.config.name for r in self.repos if r.config.offline ]
 
+    def images(self, pattern):
+        '''
+        Return a list of available images
+        '''
+        # building image list
+        images = {}
+        for reponame in self.onlines:
+            for img in self[reponame].images():
+                imgname = u"%s/%s:%s" % (reponame, img["name"], img["version"])
+                images[imgname] = img
+        # filter with pattern
+        for k in images.keys():
+            if not fnmatch.fnmatch(k, pattern):
+                del images[k]
+        return images
+
     def get(self, name, version=None, best=False):
         '''
         Crawl repositories to get an image
@@ -664,16 +680,8 @@ class RepositoryManager(object):
         long: display output in long format
         all images parameter can be given in arguments to displayed
         '''
-        # building image list
-        images = {}
-        for reponame in self.onlines:
-            for img in self[reponame].images():
-                imgname = u"%s/%s:%s" % (reponame, img["name"], img["version"])
-                images[imgname] = img
-        # filter with pattern
-        for k in images.keys():
-            if not fnmatch.fnmatch(k, pattern):
-                del images[k]
+        # get image list
+        images = self.images(pattern)
         # display result
         if o_json:
             s = json.dumps(images)
-- 
GitLab