Skip to content

Commit 1ca0450

Browse files
author
Richard Jones
committed
added command-line functionality for roundup-adming (feature [SF#687664])
1 parent 85b6124 commit 1ca0450

File tree

3 files changed

+227
-44
lines changed

3 files changed

+227
-44
lines changed

CHANGES.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ Feature:
5555
- implemented ability to search for multilink properties with no value
5656
- Class.find() may now find unset Links (sf bug 700620)
5757
- more flexibility in classhelp link labelling (sf feature 608204)
58+
- added command-line functionality for roundup-adming (sf feature 687664)
5859

5960

6061
Fixed:

doc/user_guide.txt

Lines changed: 100 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
User Guide
33
==========
44

5-
:Version: $Revision: 1.15 $
5+
:Version: $Revision: 1.16 $
66

77
.. contents::
88

@@ -402,21 +402,30 @@ Command Line Tool
402402

403403
The basic usage is::
404404

405-
Help:
406-
roundup-admin -h
407-
roundup-admin help -- this help
408-
roundup-admin help <command> -- command-specific help
409-
roundup-admin help all -- all available help
405+
Usage: roundup-admin [options] [<command> <arguments>]
410406

411407
Options:
412408
-i instance home -- specify the issue tracker "home directory" to administer
413409
-u -- the user[:password] to use for commands
414-
-c -- when outputting lists of data, just comma-separate them
410+
-d -- print full designators not just class id numbers
411+
-c -- when outputting lists of data, comma-separate them.
412+
Same as '-S ","'.
413+
-S <string> -- when outputting lists of data, string-separate them
414+
-s -- when outputting lists of data, space-separate them.
415+
Same as '-S " "'.
416+
417+
Only one of -s, -c or -S can be specified.
418+
419+
Help:
420+
roundup-admin -h
421+
roundup-admin help -- this help
422+
roundup-admin help <command> -- command-specific help
423+
roundup-admin help all -- all available help
415424

416-
Commands:
425+
Commands:
417426
commit
418427
create classname property=value ...
419-
display designator
428+
display designator[,designator]*
420429
export [class[,class]] export_dir
421430
find classname propname=value ...
422431
get property designator[,designator]*
@@ -431,12 +440,12 @@ The basic usage is::
431440
retire designator[,designator]*
432441
rollback
433442
security [Role name]
434-
set designator[,designator]* propname=value ...
443+
set [items] property=value property=value ...
435444
specification classname
436445
table classname [property[,property]*]
446+
Commands may be abbreviated as long as the abbreviation matches only one
447+
command, e.g. l == li == lis == list.
437448

438-
Commands may be abbreviated as long as the abbreviation matches only one
439-
command, e.g. l == li == lis == list.
440449

441450
All commands (except help) require a tracker specifier. This is just the
442451
path to the roundup tracker you're working with. A roundup tracker is where
@@ -446,8 +455,8 @@ It may be specified in the environment variable ``TRACKER_HOME`` or on
446455
the command line as "``-i tracker``".
447456

448457
A designator is a classname and an itemid concatenated, eg. bug1, user10, ...
449-
Property values are represented as strings in command arguments and in the printed
450-
results:
458+
Property values are represented as strings in command arguments and in the
459+
printed results:
451460

452461
- Strings are, well, strings.
453462
- Password values will display as their encoded value.
@@ -487,7 +496,84 @@ be specified as either "``name``" or "``name:password``".
487496
If either the name or password is not supplied, they are obtained from the
488497
command-line.
489498

499+
Using with the shell
500+
~~~~~~~~~~~~~~~~~~~~
501+
502+
With version 0.6.0 or newer of roundup which supports: multiple
503+
designators to display and the -d, -S and -s flags.
504+
505+
To find all messages regarding chatting issues that
506+
contain the word "spam", for example, you could execute the
507+
following command from the directory where the database
508+
dumps its files::
509+
510+
shell% for issue in `roundup-admin -ds find issue status=chatting`; do
511+
> grep -l spam `roundup-admin -ds ' ' get messages $issue`
512+
> done
513+
msg23
514+
msg49
515+
msg50
516+
msg61
517+
shell%
518+
519+
Or, using the -dc option, this can be written as a single command::
520+
521+
shell% grep -l spam `roundup get messages \
522+
\`roundup -dc find issue status=chatting\``
523+
msg23
524+
msg49
525+
msg50
526+
msg61
527+
shell%
528+
529+
You can also display issue contents::
530+
531+
shell% roundup-admin display `roundup-admin -dc get messages \
532+
issue3,issue1`
533+
files: []
534+
inreplyto: None
535+
recipients: []
536+
author: 1
537+
date: 2003-02-16.21:23:03
538+
messageid: None
539+
summary: jkdskldjf
540+
files: []
541+
inreplyto: None
542+
recipients: []
543+
author: 1
544+
date: 2003-02-15.01:59:11
545+
messageid: None
546+
summary: jlkfjadsf
547+
548+
or status::
549+
550+
shell% roundup-admin get name `/tools/roundup/bin/roundup-admin \
551+
-dc -i /var/roundup/sysadmin get status issue3,issue1`
552+
unread
553+
deferred
554+
555+
or status on a single line::
556+
557+
shell% echo `roundup-admin get name \`/tools/roundup/bin/roundup-admin \
558+
-dc -i /var/roundup/sysadmin get status issue3,issue1\``
559+
unread deferred
560+
561+
which is the same as::
562+
563+
shell% roundup-admin -s get name `/tools/roundup/bin/roundup-admin \
564+
-dc -i /var/roundup/sysadmin get status issue3,issue1`
565+
unread deferred
566+
567+
Also the tautological::
568+
569+
shell% roundup-admin get name \
570+
`roundup-admin -dc get status \`roundup-admin -dc find issue \
571+
status=chatting\``
572+
chatting
573+
chatting
490574

575+
Remember the roundup commands that accept multiple designators accept
576+
them ',' separated so using '-dc' is almost always required.
491577

492578
-----------------
493579

0 commit comments

Comments
 (0)