Adds option to specify multiple kickstarts, or glob pattern to delete
multiple kickstarts in one pass
---
 spacecmd/src/lib/kickstart.py |   25 ++++++++++++++++++++-----
 1 files changed, 20 insertions(+), 5 deletions(-)

diff --git a/spacecmd/src/lib/kickstart.py b/spacecmd/src/lib/kickstart.py
index 74eb708..db52cfc 100644
--- a/spacecmd/src/lib/kickstart.py
+++ b/spacecmd/src/lib/kickstart.py
@@ -137,8 +137,10 @@ def do_kickstart_create(self, args):
 ####################
 
 def help_kickstart_delete(self):
-    print 'kickstart_delete: Delete a Kickstart profile'
+    print 'kickstart_delete: Delete kickstart profile(s)'
     print 'usage: kickstart_delete PROFILE'
+    print 'usage: kickstart_delete PROFILE1 PROFILE2'
+    print 'usage: kickstart_delete \"PROF*\"'
 
 def complete_kickstart_delete(self, text, line, beg, end):
     if len(line.split(' ')) <= 2:
@@ -147,14 +149,27 @@ def complete_kickstart_delete(self, text, line, beg, end):
 def do_kickstart_delete(self, args):
     (args, options) = parse_arguments(args)
 
-    if len(args) != 1:
+    if len(args) < 1:
         self.help_kickstart_delete()
         return
 
-    label = args[0]
+    # allow globbing of kickstart labels
+    all_labels = self.do_kickstart_list('', True)
+    labels = filter_results(all_labels, args)
+    logging.debug("Got labels to delete of %s" % labels)
+
+    if len(labels) == 0:
+        logging.error("No valid kickstart labels passed as arguments!")
+        self.help_kickstart_delete()
+        return
+
+    for label in labels:
+        if not label in all_labels:
+            logging.error("kickstart label %s doesn't exist!" % label)
+            continue
 
-    if self.user_confirm('Delete this profile [y/N]:'):
-        self.client.kickstart.deleteProfile(self.session, label)
+        if self.user_confirm("Delete profile %s ?[y/N]:" % label):
+            self.client.kickstart.deleteProfile(self.session, label)
 
 ####################
 
-- 
1.7.1

_______________________________________________
Spacewalk-devel mailing list
Spacewalk-devel@redhat.com
https://www.redhat.com/mailman/listinfo/spacewalk-devel

Reply via email to