Mercurial > p > roundup > code
annotate roundup-admin @ 140:a4383d62a407
Now uses getopt, much improved command-line parsing.
Much fuller help. Much better internal structure. It's just BETTER. :)
| author | Richard Jones <richard@users.sourceforge.net> |
|---|---|
| date | Mon, 30 Jul 2001 00:57:51 +0000 |
| parents | 4a87e0b0d3f7 |
| children | 0e3cb7a4290f |
| rev | line source |
|---|---|
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
1 #! /usr/bin/python |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
2 # $Id: roundup-admin,v 1.6 2001-07-30 00:57:51 richard Exp $ |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
3 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
4 import sys |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
5 if int(sys.version[0]) < 2: |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
6 print 'Roundup requires python 2.0 or later.' |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
7 sys.exit(1) |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
8 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
9 import string, os, getpass, getopt |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
10 from roundup import date, roundupdb, init |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
11 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
12 def usage(message=''): |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
13 if message: message = 'Problem: '+message+'\n' |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
14 commands = [] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
15 for command in figureCommands().values(): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
16 h = command.__doc__.split('\n')[0] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
17 commands.append(h[7:]) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
18 commands.sort() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
19 print '''%sUsage: roundup-admin [-i instance home] [-u login] [-c] <command> <arguments> |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
20 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
21 Commands: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
22 %s |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
23 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
24 Help: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
25 roundup-admin -h |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
26 roundup-admin help |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
27 -- this help |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
28 roundup-admin help <command> |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
29 -- command-specific help |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
30 roundup-admin morehelp |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
31 -- even more detailed help |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
32 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
33 '''%(message, '\n '.join(commands)) |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
34 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
35 def moreusage(message=''): |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
36 usage(message) |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
37 print ''' |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
38 All commands (except help) require an instance specifier. This is just the path |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
39 to the roundup instance you're working with. It may be specified in the |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
40 environment variable ROUNDUP_INSTANCE or on the command line as "-i instance". |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
41 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
42 A designator is a classname and a nodeid concatenated, eg. bug1, user10, ... |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
43 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
44 Property values are represented as strings in command arguments and in the |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
45 printed results: |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
46 . Strings are, well, strings. |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
47 . Date values are printed in the full date format in the local time zone, and |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
48 accepted in the full format or any of the partial formats explained below. |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
49 . Link values are printed as node designators. When given as an argument, |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
50 node designators and key strings are both accepted. |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
51 . Multilink values are printed as lists of node designators joined by commas. |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
52 When given as an argument, node designators and key strings are both |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
53 accepted; an empty string, a single node, or a list of nodes joined by |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
54 commas is accepted. |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
55 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
56 When multiple nodes are specified to the roundup get or roundup set |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
57 commands, the specified properties are retrieved or set on all the listed |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
58 nodes. |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
59 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
60 When multiple results are returned by the roundup get or roundup find |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
61 commands, they are printed one per line (default) or joined by commas (with |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
62 the -c) option. |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
63 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
64 Where the command changes data, a login name/password is required. The |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
65 login may be specified as either "name" or "name:password". |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
66 . ROUNDUP_LOGIN environment variable |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
67 . the -u command-line option |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
68 If either the name or password is not supplied, they are obtained from the |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
69 command-line. |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
70 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
71 Date format examples: |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
72 "2000-04-17.03:45" means <Date 2000-04-17.08:45:00> |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
73 "2000-04-17" means <Date 2000-04-17.00:00:00> |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
74 "01-25" means <Date yyyy-01-25.00:00:00> |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
75 "08-13.22:13" means <Date yyyy-08-14.03:13:00> |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
76 "11-07.09:32:43" means <Date yyyy-11-07.14:32:43> |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
77 "14:25" means <Date yyyy-mm-dd.19:25:00> |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
78 "8:47:11" means <Date yyyy-mm-dd.13:47:11> |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
79 "." means "right now" |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
80 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
81 Command help: |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
82 ''' |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
83 for name, command in figureCommands().items(): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
84 print '%s:'%name |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
85 print ' ',command.__doc__ |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
86 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
87 def do_init(instance_home, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
88 '''Usage: init [template [backend [admin password]]] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
89 Initialise a new Roundup instance. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
90 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
91 The command will prompt for the instance home directory (if not supplied |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
92 through INSTANCE_HOME or the -i option. The template, backend and admin |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
93 password may be specified on the command-line as arguments, in that order. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
94 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
95 if len(argv) > n: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
96 template = argv[n] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
97 backend = argv[n+1] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
98 else: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
99 template = backend = '' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
100 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
101 # select template |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
102 import roundup.templates |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
103 templates = roundup.templates.listTemplates() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
104 print 'Templates:', ', '.join(templates) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
105 template = len(args) and args[0] or '' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
106 while template not in templates: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
107 template = raw_input('Select template [classic]: ').strip() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
108 if not template: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
109 template = 'classic' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
110 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
111 import roundup.backends |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
112 backends = roundup.backends.__all__ |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
113 backend = len(args) > 1 and args[1] or '' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
114 while backend not in backends: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
115 backend = raw_input('Select backend [anydbm]: ').strip() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
116 if not backend: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
117 backend = 'anydbm' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
118 if len(args) > 2: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
119 adminpw = confirm = args[2] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
120 else: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
121 adminpw = '' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
122 confirm = 'x' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
123 while adminpw != confirm: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
124 adminpw = getpass.getpass('Admin Password: ') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
125 confirm = getpass.getpass(' Confirm: ') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
126 init.init(instance_home, template, backend, adminpw) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
127 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
128 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
129 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
130 def do_get(db, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
131 '''Usage: get property designator[,designator]* |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
132 Get the given property of one or more designator(s). |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
133 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
134 Retrieves the property value of the nodes specified by the designators. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
135 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
136 designators = string.split(args[0], ',') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
137 propname = args[1] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
138 # TODO: handle the -c option |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
139 for designator in designators: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
140 classname, nodeid = roundupdb.splitDesignator(designator) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
141 print db.getclass(classname).get(nodeid, propname) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
142 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
143 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
144 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
145 def do_set(db, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
146 '''Usage: set designator[,designator]* propname=value ... |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
147 Set the given property of one or more designator(s). |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
148 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
149 Sets the property to the value for all designators given. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
150 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
151 designators = string.split(args[0], ',') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
152 props = {} |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
153 for prop in args[1:]: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
154 key, value = prop.split('=') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
155 props[key] = value |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
156 for designator in designators: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
157 classname, nodeid = roundupdb.splitDesignator(designator) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
158 cl = db.getclass(classname) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
159 properties = cl.getprops() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
160 for key, value in props.items(): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
161 type = properties[key] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
162 if type.isStringType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
163 continue |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
164 elif type.isDateType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
165 props[key] = date.Date(value) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
166 elif type.isIntervalType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
167 props[key] = date.Interval(value) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
168 elif type.isLinkType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
169 props[key] = value |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
170 elif type.isMultilinkType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
171 props[key] = value.split(',') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
172 apply(cl.set, (nodeid, ), props) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
173 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
174 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
175 def do_find(db, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
176 '''Usage: find classname propname=value ... |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
177 Find the nodes of the given class with a given property value. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
178 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
179 Find the nodes of the given class with a given property value. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
180 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
181 classname = args[0] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
182 cl = db.getclass(classname) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
183 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
184 # look up the linked-to class and get the nodeid that has the value |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
185 propname, value = args[1:].split('=') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
186 propcl = cl[propname].classname |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
187 nodeid = propcl.lookup(value) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
188 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
189 # now do the find |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
190 # TODO: handle the -c option |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
191 print cl.find(propname, nodeid) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
192 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
193 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
194 def do_spec(db, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
195 '''Usage: spec classname |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
196 Show the properties for a classname. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
197 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
198 This lists the properties for a given class. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
199 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
200 classname = args[0] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
201 cl = db.getclass(classname) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
202 for key, value in cl.properties.items(): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
203 print '%s: %s'%(key, value) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
204 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
205 def do_create(db, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
206 '''Usage: create classname property=value ... |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
207 Create a new entry of a given class. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
208 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
209 This creates a new entry of the given class using the property |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
210 name=value arguments provided on the command line after the "create" |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
211 command. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
212 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
213 classname = args[0] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
214 cl = db.getclass(classname) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
215 props = {} |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
216 properties = cl.getprops() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
217 for prop in args[1:]: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
218 key, value = prop.split('=') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
219 type = properties[key] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
220 if type.isStringType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
221 props[key] = value |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
222 elif type.isDateType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
223 props[key] = date.Date(value) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
224 elif type.isIntervalType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
225 props[key] = date.Interval(value) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
226 elif type.isLinkType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
227 props[key] = value |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
228 elif type.isMultilinkType: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
229 props[key] = value.split(',') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
230 print apply(cl.create, (), props) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
231 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
232 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
233 def do_list(db, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
234 '''Usage: list classname [property] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
235 List the instances of a class. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
236 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
237 Lists all instances of the given class along. If the property is not |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
238 specified, the "label" property is used. The label property is tried |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
239 in order: the key, "name", "title" and then the first property, |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
240 alphabetically. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
241 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
242 db = instance.open() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
243 classname = args[0] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
244 cl = db.getclass(classname) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
245 if len(args) > 1: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
246 key = args[1] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
247 else: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
248 key = cl.labelprop() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
249 # TODO: handle the -c option |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
250 for nodeid in cl.list(): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
251 value = cl.get(nodeid, key) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
252 print "%4s: %s"%(nodeid, value) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
253 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
254 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
255 def do_history(db, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
256 '''Usage: history designator |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
257 Show the history entries of a designator. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
258 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
259 Lists the journal entries for the node identified by the designator. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
260 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
261 classname, nodeid = roundupdb.splitDesignator(args[0]) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
262 # TODO: handle the -c option |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
263 print db.getclass(classname).history(nodeid) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
264 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
265 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
266 def do_retire(db, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
267 '''Usage: retire designator[,designator]* |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
268 Retire the node specified by designator. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
269 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
270 This action indicates that a particular node is not to be retrieved by |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
271 the list or find commands, and its key value may be re-used. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
272 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
273 designators = string.split(args[0], ',') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
274 for designator in designators: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
275 classname, nodeid = roundupdb.splitDesignator(designator) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
276 db.getclass(classname).retire(nodeid) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
277 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
278 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
279 def db_freshen(db, args): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
280 '''Usage: freshen |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
281 Freshen an existing instance. **do not use |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
282 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
283 This action should generally not be used. It reads in an instance |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
284 database and writes it again. In the future, is may also update |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
285 instance code to account for changes in templates. It's probably wise |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
286 not to use it anyway. Until we're sure it won't break things... |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
287 ''' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
288 for classname, cl in db.classes.items(): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
289 properties = cl.properties.keys() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
290 for nodeid in cl.list(): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
291 node = {} |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
292 for name in properties: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
293 node[name] = cl.get(nodeid, name) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
294 db.setnode(classname, nodeid, node) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
295 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
296 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
297 def figureCommands(): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
298 d = {} |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
299 for k, v in globals().items(): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
300 if k[:3] == 'do_': |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
301 d[k[3:]] = v |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
302 return d |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
303 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
304 def main(): |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
305 opts, args = getopt.getopt(sys.argv[1:], 'i:u:hc') |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
306 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
307 # handle command-line args |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
308 instance_home = os.environ.get('ROUNDUP_INSTANCE', '') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
309 name = password = '' |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
310 if os.environ.has_key('ROUNDUP_LOGIN'): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
311 l = os.environ['ROUNDUP_LOGIN'].split(':') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
312 name = l[0] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
313 if len(l) > 1: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
314 password = l[1] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
315 comma_sep = 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
316 for opt, arg in opts: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
317 if opt == '-h': |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
318 usage() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
319 return 0 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
320 if opt == '-i': |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
321 instance_home = arg |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
322 if opt == '-u': |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
323 l = arg.split(':') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
324 name = l[0] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
325 if len(l) > 1: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
326 password = l[1] |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
327 if opt == '-c': |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
328 comma_sep = 1 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
329 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
330 # figure the command |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
331 if not args: |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
332 usage('No command specified') |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
333 return 1 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
334 command = args[0] |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
335 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
336 # handle help now |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
337 if command == 'help': |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
338 if len(args)>1: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
339 command = figureCommands().get(args[1], None) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
340 if not command: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
341 usage('no such command "%s"'%args[1]) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
342 return 1 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
343 print command.__doc__ |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
344 return 0 |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
345 usage() |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
346 return 0 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
347 if command == 'morehelp': |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
348 moreusage() |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
349 return 0 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
350 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
351 # make sure we have an instance_home |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
352 while not instance_home: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
353 instance_home = raw_input('Enter instance home: ').strip() |
|
137
4a87e0b0d3f7
Made the "init" prompting more friendly.
Richard Jones <richard@users.sourceforge.net>
parents:
127
diff
changeset
|
354 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
355 # before we open the db, we may be doing an init |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
356 if command == 'init': |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
357 return do_init(instance_home, args) |
|
137
4a87e0b0d3f7
Made the "init" prompting more friendly.
Richard Jones <richard@users.sourceforge.net>
parents:
127
diff
changeset
|
358 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
359 # open the database |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
360 if command in ('create', 'set', 'retire'): |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
361 while not name: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
362 name = raw_input('Login name: ') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
363 while not password: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
364 password = getpass.getpass(' password: ') |
|
51
3a7e5515c1bd
ok, so now "./roundup-admin init" will ask questions...
Richard Jones <richard@users.sourceforge.net>
parents:
48
diff
changeset
|
365 |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
366 # get the instance |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
367 path, instance = os.path.split(instance_home) |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
368 sys.path.insert(0, path) |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
369 try: |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
370 instance = __import__(instance) |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
371 finally: |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
372 del sys.path[0] |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
373 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
374 command = figureCommands().get(command, None) |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
375 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
376 # not a valid command |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
377 if command is None: |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
378 usage() |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
379 return 1 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
380 |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
381 db = instance.open(name or 'admin') |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
382 try: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
383 return command(db, args[1:]) |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
384 finally: |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
385 db.close() |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
386 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
387 return 1 |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
388 |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
389 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
390 if __name__ == '__main__': |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
391 sys.exit(main()) |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
392 |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
393 # |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
394 # $Log: not supported by cvs2svn $ |
|
140
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
395 # Revision 1.5 2001/07/30 00:04:48 richard |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
396 # Made the "init" prompting more friendly. |
|
a4383d62a407
Now uses getopt, much improved command-line parsing.
Richard Jones <richard@users.sourceforge.net>
parents:
137
diff
changeset
|
397 # |
|
137
4a87e0b0d3f7
Made the "init" prompting more friendly.
Richard Jones <richard@users.sourceforge.net>
parents:
127
diff
changeset
|
398 # Revision 1.4 2001/07/29 07:01:39 richard |
|
4a87e0b0d3f7
Made the "init" prompting more friendly.
Richard Jones <richard@users.sourceforge.net>
parents:
127
diff
changeset
|
399 # Added vim command to all source so that we don't get no steenkin' tabs :) |
|
4a87e0b0d3f7
Made the "init" prompting more friendly.
Richard Jones <richard@users.sourceforge.net>
parents:
127
diff
changeset
|
400 # |
|
127
0791d13baea7
Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents:
51
diff
changeset
|
401 # Revision 1.3 2001/07/23 08:45:28 richard |
|
0791d13baea7
Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents:
51
diff
changeset
|
402 # ok, so now "./roundup-admin init" will ask questions in an attempt to get a |
|
0791d13baea7
Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents:
51
diff
changeset
|
403 # workable instance_home set up :) |
|
0791d13baea7
Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents:
51
diff
changeset
|
404 # _and_ anydbm has had its first test :) |
|
0791d13baea7
Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents:
51
diff
changeset
|
405 # |
|
51
3a7e5515c1bd
ok, so now "./roundup-admin init" will ask questions...
Richard Jones <richard@users.sourceforge.net>
parents:
48
diff
changeset
|
406 # Revision 1.2 2001/07/23 08:20:44 richard |
|
3a7e5515c1bd
ok, so now "./roundup-admin init" will ask questions...
Richard Jones <richard@users.sourceforge.net>
parents:
48
diff
changeset
|
407 # Moved over to using marshal in the bsddb and anydbm backends. |
|
3a7e5515c1bd
ok, so now "./roundup-admin init" will ask questions...
Richard Jones <richard@users.sourceforge.net>
parents:
48
diff
changeset
|
408 # roundup-admin now has a "freshen" command that'll load/save all nodes (not |
|
3a7e5515c1bd
ok, so now "./roundup-admin init" will ask questions...
Richard Jones <richard@users.sourceforge.net>
parents:
48
diff
changeset
|
409 # retired - mod hyperdb.Class.list() so it lists retired nodes) |
|
3a7e5515c1bd
ok, so now "./roundup-admin init" will ask questions...
Richard Jones <richard@users.sourceforge.net>
parents:
48
diff
changeset
|
410 # |
|
48
671203878652
Moved over to using marshal in the bsddb and anydbm backends.
Richard Jones <richard@users.sourceforge.net>
parents:
27
diff
changeset
|
411 # Revision 1.1 2001/07/23 03:46:48 richard |
|
671203878652
Moved over to using marshal in the bsddb and anydbm backends.
Richard Jones <richard@users.sourceforge.net>
parents:
27
diff
changeset
|
412 # moving the bin files to facilitate out-of-the-boxness |
|
671203878652
Moved over to using marshal in the bsddb and anydbm backends.
Richard Jones <richard@users.sourceforge.net>
parents:
27
diff
changeset
|
413 # |
|
27
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
414 # Revision 1.1 2001/07/22 11:15:45 richard |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
415 # More Grande Splite stuff |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
416 # |
|
e5e9ea306a09
moving the bin files to facilitate out-of-the-boxness
Richard Jones <richard@users.sourceforge.net>
parents:
diff
changeset
|
417 # |
|
127
0791d13baea7
Added vim command to all source so that we don't get no steenkin' tabs :)
Richard Jones <richard@users.sourceforge.net>
parents:
51
diff
changeset
|
418 # vim: set filetype=python ts=4 sw=4 et si |
