From 7a0397b5f06e7953a0e4de9bbacd0980c2208f61 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pavel=20K=C3=A1cha?= <ph@cesnet.cz>
Date: Mon, 19 Sep 2016 11:44:58 +0200
Subject: [PATCH] More logical client cert listing

---
 warden3/contrib/warden_ra/warden_ra.py | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/warden3/contrib/warden_ra/warden_ra.py b/warden3/contrib/warden_ra/warden_ra.py
index 5c67686..ccbac97 100755
--- a/warden3/contrib/warden_ra/warden_ra.py
+++ b/warden3/contrib/warden_ra/warden_ra.py
@@ -264,17 +264,19 @@ def list_clients(registry, name=None, verbose=False):
             print "No such client."
             return
         else:
-            clients = [client]
+            print(client)
+            if verbose:
+                print(client.verbose_str())
+            for cert in sorted(client.get_certs(), key=lambda c: c.get_not_after().get_datetime()):
+                print(format_cert(cert))
+                if verbose:
+                    print(cert.as_text())
     else:
         clients = registry.get_clients()
-    for client in clients:
-        print(client)
-        if verbose:
-            print(client.verbose_str())
-        for cert in sorted(client.get_certs(), key=lambda c: c.get_not_after().get_datetime()):
-            print(format_cert(cert))
+        for client in sorted (clients, key=lambda c: c.name):
+            print(client)
             if verbose:
-                print(cert.as_text())
+                print(client.verbose_str())
 
 
 def register_client(registry, name, admins=None, verbose=False):
-- 
GitLab