Commit Graph

1019 Commits

Author SHA1 Message Date
Rob Crittenden
014f3ff1c6 Improve revocation_reason argument 2009-05-13 14:17:03 -04:00
Rob Crittenden
1c31b5bc08 Add a reason to the NotFound exception so we can provide more robust errors 2009-05-13 14:16:44 -04:00
Jason Gerard DeRose
ae38a2461f Force xmlrpc tests to run with in_tree=True so config files in /etc/ipa/ don't get read; cleaned up config.Env automagic with regard to running in-tree vs. installed 2009-05-11 16:17:08 -04:00
Rob Crittenden
0d6aaef2e1 We decided not to issue a certificate on join 2009-05-07 10:54:21 -04:00
Rob Crittenden
8f1df0fe8a Store the new certificate in a service record. Clean up some argument names to match the current standard. 2009-05-07 10:54:14 -04:00
Rob Crittenden
0d538b20f2 Make MalformedServicePrincipal take a reason arg and add Base64DecodeError 2009-05-06 11:29:11 -04:00
Rob Crittenden
5405c01025 Add validator and normalizer for service principals Add --certificate argument Update default objectclasses Use the crud.Search method for service-find 2009-05-06 11:28:49 -04:00
Rob Crittenden
c0020955a5 Some minor cosmetic changes 2009-05-04 18:01:06 -04:00
Rob Crittenden
a7a16272b1 When reading a password, if there is no tty, read from stdin instead.
This will allow one to pipe a password in:

echo -e "secret123\secret123\n" | ipa password someuser
2009-05-04 17:43:14 -04:00
Rob Crittenden
d4076915cd Add posixGroup to the objectclass list if gidnumber is set
498335
2009-05-04 17:43:00 -04:00
Rob Crittenden
c8ee910ff6 Issue an SSL server cert when joining the IPA domain 2009-05-04 17:41:06 -04:00
Rob Crittenden
8424ea8c03 A class for dealing with a temporary NSS certificate database 2009-05-04 16:56:12 -04:00
Pavel Zuna
36c239cda4 Add DNS management plugin port to the new ldap backend. 2009-04-30 16:17:49 -04:00
Pavel Zuna
9992b23a08 Change help interface to display builtin commands and a list of topics based on plugin modules. 2009-04-30 15:55:16 -04:00
Pavel Zuna
75b551fd5e Use right attribute name for e-mail in user2 plugin. 2009-04-30 13:50:05 -04:00
Rob Crittenden
21ccdec860 Add missing required attribute, nisdomainname 2009-04-30 13:26:27 -04:00
Rob Crittenden
536b215078 Use correct attribute for e-mail address
Resolves 498269
2009-04-29 13:51:47 -04:00
Jason Gerard DeRose
3f4a0a2d77 Fixed cli.run() catching SystemExit exception under Python2.4
Resolves BZ #498088
2009-04-28 22:29:10 -04:00
David O'Brien
763c7ef914 trivial update to standardize terms in docstring 2009-04-28 13:32:01 -04:00
Rob Crittenden
298d5fbce4 Import the RequiresRoot error and make note to replace this at some point 2009-04-24 16:22:22 -04:00
Pavel Zuna
7d0bd4b895 Rename errors2.py to errors.py. Modify all affected files. 2009-04-23 10:29:14 -04:00
Pavel Zuna
596d410471 Make LDAP entry output slightly nicer, don't print u's in front of unicode strings etc. 2009-04-23 10:25:51 -04:00
Pavel Zuna
4e48e1fbf7 Introduce AlreadyGroupMember exception, raised when a member is attempted to be re-added to a group. 2009-04-22 15:18:47 -04:00
Pavel Zuna
af82879009 Add user plugin port with some bugs fixed to the new LDAP backend. 2009-04-22 15:16:51 -04:00
Pavel Zuna
9ecbd845d4 Add conditional (env.use_ldap2 is True) modifications required by new LDAP backend. 2009-04-22 15:14:24 -04:00
Pavel Zuna
ff0819b189 Add new env variables. 'container_dns' for DNS plugin, 'use_ldap2' for new LDAP backend debugging. 2009-04-22 15:12:39 -04:00
Rob Crittenden
64fa3dd4c3 Finish work replacing the errors module with errors2
Once this is committed we can start the process of renaming errors2 as errors.
I thought that combinig this into one commit would be more difficult to
review.
2009-04-20 13:58:26 -04:00
Rob Crittenden
a9387b48e6 Handle GSSAPI exceptions more gracefully 2009-04-20 13:44:08 -04:00
Rob Crittenden
e6171404bf Make parentmap a autofill variable and add tests when parentmap is not passed 2009-04-13 15:22:49 -04:00
Rob Crittenden
8821d8cac3 Fill in default values for os and platform 2009-04-13 14:54:16 -04:00
root
6ca80e312a Add 'container_hbac' env variable. 2009-04-03 14:07:30 -04:00
Rob Crittenden
484eff1016 Implement an installer for the Dogtag certificate system.
The CA is currently not automatically installed. You have to pass in the
--ca flag to install it.

What works:
- installation
- unistallation
- cert/ra plugins can issue and retrieve server certs

What doesn't work:
- self-signed CA is still created and issues Apache and DS certs
- dogtag and python-nss not in rpm requires
- requires that CS be in the "pre" install state from pkicreate
2009-04-03 14:06:09 -04:00
Jason Gerard DeRose
a6294ba041 Renamed remaining plugins still using f_* b_* convention 2009-04-01 10:34:57 -04:00
Rob Crittenden
d6814f3aae Implement a few new targets for ACIs
Also switch to the StrEnum parameter type for some options so we let the
framework do the enforcement
2009-03-25 11:03:03 -04:00
Rob Crittenden
1b1f9af01c Add a 'showall' command so one can pick from a list of tasks to add to a role 2009-03-25 11:02:49 -04:00
Rob Crittenden
5aed824a6c Use tuples instead of lists for class variables 2009-03-25 11:02:47 -04:00
Rob Crittenden
233a4cb5fd Raise a more specific error when a user lacks the proper permissions.
The info part of the message will contain details on what permission
failed on what attribute.
2009-03-25 11:02:44 -04:00
Rob Crittenden
65e6259075 Always print the dn first when printing an entry 2009-03-25 11:02:42 -04:00
Rob Crittenden
a8a2664190 Add new type List that converts delimited values into a tuple 2009-03-20 09:29:44 -04:00
Rob Crittenden
c39a29e0cf Converted to use new baseclass, remove the one with the f_ prefix 2009-03-20 09:28:26 -04:00
Rob Crittenden
b627f50121 Convert to use the new basegroup framework 2009-03-20 09:28:18 -04:00
Rob Crittenden
9bc1419ac0 Convert to use the new basegroup framework 2009-03-20 09:28:16 -04:00
Rob Crittenden
33df0a3915 Convert to use the new basegroup framework 2009-03-20 09:28:14 -04:00
Rob Crittenden
1445a36026 Modify the taskgroup plugin to use the new group baseclass and add tests 2009-03-20 09:28:12 -04:00
Rob Crittenden
a55c5d6bcd New plugin to handle role groups
Role groups will be part of the ACI system. It will let one create broad
categories of permissions. Things like: helpdesk, user admin, group admin,
whatever.
2009-03-20 09:28:09 -04:00
Rob Crittenden
5e2e3fd17d Add generic base class that will most of the heavy lifting for groups 2009-03-20 09:28:06 -04:00
Rob Crittenden
8d796eedee kw is supposed to contain just lower-case values 2009-03-19 16:02:12 -04:00
Rob Crittenden
51193923f1 kw is supposed to contain just lower-case values 2009-03-19 16:02:09 -04:00
Rob Crittenden
bc056cda2d Update the ACI class to be more robust and the beginnings of an ACI plugin
The ACI plugin is really  meant for developers to help manage the ACIs.
It may or may not be shipped. If it is it will be disabled by default.
It is very much a shoot-in-foot problem waiting to happen.
2009-03-18 15:47:06 -04:00
Rob Crittenden
4c5806b4b4 Fix some minor issues in group and service plugins 2009-03-17 14:52:38 -04:00
Rob Crittenden
6fa330662a Add taskgroups plugin
Taskgroups are what we grant permission to with the new ACI system.
2009-03-17 14:52:17 -04:00
Jason Gerard DeRose
13ff27e9ec Fixed Executioner.execute() so that its 'name' argument doesn't conflict with a param called 'name' (which is a valid param name) 2009-03-13 10:31:00 -04:00
Rob Crittenden
eb0601a19c Plugin to handle IPA configuration 2009-03-04 09:56:16 -05:00
Rob Crittenden
7933a196a1 Set a minimum value for password policy integers 2009-03-04 09:56:13 -05:00
Rob Crittenden
dbbae00b17 Add maxvalue and minvalue kwargs and rules to Int and Float 2009-03-03 17:49:15 -05:00
Rob Crittenden
bd9f7cd720 Fix some netgroup issues related to not all groups being posixGroups 2009-02-27 23:18:35 -05:00
Rob Crittenden
be0cac932a Update objectclasses for groups, by default not posix groups.
This change depends on DS bugs 487574 and 487725. Groups cannot be
promoted properly without these fixed. It will fail with an
Object Class violation because gidNumber isn't set.
2009-02-27 23:18:19 -05:00
Jason Gerard DeRose
1359618e7e Fixed broken autfill logic in cli.prompt_interactively() 2009-02-27 12:58:32 -05:00
Rob Crittenden
3fdf9abfce Enforce netgroup uniqueness, allow netgroups to be members of netgroups
When adding an entry, convert a constraint violation of "already exists"
into a DuplicateEntry exception so the user gets a useful response
2009-02-27 12:57:21 -05:00
Rob Crittenden
af0c0c309d Added tofiles command and some documentation to the automount plugin 2009-02-24 16:54:28 -05:00
Pavel Zuna
e913d7483b Fix multivalue params requiring default to be of type self.type instead of tuple. 2009-02-23 13:49:26 -05:00
Pavel Zuna
016b82250e Add ipalib.frontend.Command method to build an entry from params with attribute=True.
Often plugins need to build LDAP entries from params. This should make things a bit easier.
Crud methods (Create, Retrieve, Update, Delete, Search) have attribute=True by default.
And it also works for multivalue params.
2009-02-23 13:49:21 -05:00
Rob Crittenden
f2abe05398 Use OpenSSL for SSL instead of the built-in python version. 2009-02-20 10:40:54 -05:00
Rob Crittenden
b53edad254 raise exceptions in the proper form 2009-02-20 10:40:50 -05:00
Rob Crittenden
1a8ec58602 Utility function to get the local hostname 2009-02-19 10:09:24 -05:00
Rob Crittenden
83d5987db9 A new exception for requiring root, RootRequired 2009-02-19 10:09:21 -05:00
Rob Crittenden
4476f6b939 The start of machine join 2009-02-19 10:09:07 -05:00
Rob Crittenden
5a6d2dd0d9 Print out multi-valued values one per-line instead of comman-delimited 2009-02-19 10:08:52 -05:00
Rob Crittenden
ccf703a2b6 Add new users as a member of the default group 2009-02-19 10:08:11 -05:00
Rob Crittenden
fb3f86f703 Add --all option to show/find, add default attrs to show, cleanup output 2009-02-19 10:07:39 -05:00
Jason Gerard DeRose
7e23ee7cc6 Removed 'Assert False' that was mistakingly left in cert.py; small cleanup in cert.py and ra.py imports 2009-02-17 16:03:10 -05:00
Jason Gerard DeRose
4ab133c3cb Implemented more elegant way for entire plugin module to be conditionally skipped; updated cert.py and ra.py modules to use this 2009-02-17 16:03:10 -05:00
Jason Gerard DeRose
e0fe732318 Added env.enable_ra variable and change cert.py and ra.py plugin modules to register plugins conditionally 2009-02-17 16:03:09 -05:00
Jason Gerard DeRose
97c04c491b Continued cleanup cert/ra plugins 2009-02-17 16:03:09 -05:00
Jason Gerard DeRose
b5b2e55be5 Add pattern matching to Str and Bytes 2009-02-17 16:03:08 -05:00
Jason Gerard DeRose
18cecdc515 Removed depreciated xmlrpc_marshal() and xmlrpc_unmarshal() functions 2009-02-17 16:03:08 -05:00
Jason Gerard DeRose
336c4c2caf Removed depreciated ipalib/plugins/b_xmlrpc.py module 2009-02-17 16:03:08 -05:00
Jason Gerard DeRose
a8c3f054d4 Started cleanup work on ra plugin; fixed problem in api.bootstrap() when process does not have permision to open log file 2009-02-17 16:03:08 -05:00
Jason Gerard DeRose
d9d5e8b2d5 Some cleanup in cert plugins module, changed to shorter command names all starting with cert_* 2009-02-17 16:03:08 -05:00
Jason Gerard DeRose
eb73a4fef5 Renamed f_ra.py plugin to cert.py 2009-02-17 16:03:07 -05:00
Jakub Hrozek
079f89d461 Add application frontend plugin 2009-02-10 14:10:54 -05:00
Jakub Hrozek
328f8d0bf8 Add policy-related container constants 2009-02-10 14:10:45 -05:00
Rob Crittenden
6b34f07720 Remove some duplicated code that was moved to ipaserver and use it Remove some unused files 2009-02-06 15:04:42 -05:00
Rob Crittenden
2d7e0de5ea Get merged tree into an installalble state.
I have only tested the all, rpms and *clean targets directly.
install may work but the rpm moves a lot of things around for us.

The Apache configuration file isn't in its final state but it works
with the new mod_python configuration.
2009-02-03 15:29:20 -05:00
Jason Gerard DeRose
3274577cd6 Finished small tweaks to get new ipaserver.xmlrpc() mod_python handler working 2009-02-03 15:29:05 -05:00
Jason Gerard DeRose
c2b0c80140 Started work on a much simplified mod_python server 2009-02-03 15:29:05 -05:00
Jason Gerard DeRose
91ca06f079 Added doodle for version vars in ipalib.__init__ 2009-02-03 15:29:05 -05:00
Jason Gerard DeRose
92a150b4f1 Some tweaks in user plugins, ported to new crud base classes 2009-02-03 15:29:05 -05:00
Jason Gerard DeRose
0211c76cd0 Fixed some of the test_xmlrpc unit tests 2009-02-03 15:29:05 -05:00
Rob Crittenden
5717c9d668 Applied Rob's errors patch 2009-02-03 15:29:04 -05:00
Jason Gerard DeRose
48a278047d Mostly got the test_xmlrpc/ tests working again 2009-02-03 15:29:04 -05:00
Jason Gerard DeRose
77e782e2cb Fixed bug I introduced in KerbTransport; started work on lite-xmlrpc.py to add client address to context 2009-02-03 15:29:04 -05:00
Jason Gerard DeRose
a0aebd46a1 Got new ldap connection working using Connectible.connect() 2009-02-03 15:29:04 -05:00
Jason Gerard DeRose
231f0bd65a Finished reworked cli.CLI class into cli.cli plugin 2009-02-03 15:29:04 -05:00
Jason Gerard DeRose
db0168f7af Started reworking CLI class into cli plugin 2009-02-03 15:29:03 -05:00
Jason Gerard DeRose
9efda29d60 Added docstring to Connectible class 2009-02-03 15:29:03 -05:00
Jason Gerard DeRose
66b6029e40 Ported xmlclient to subclass from Connectible 2009-02-03 15:29:03 -05:00
Jason Gerard DeRose
0a3ae60038 Ported xmlserver to subclass from Executioner 2009-02-03 15:29:03 -05:00
Jason Gerard DeRose
0cfb0e191a Removed the depreciated Context and LazyContext classes 2009-02-03 15:29:03 -05:00
Jason Gerard DeRose
f7375bb609 Added stuff for managing connections and new Executioner backend base class 2009-02-03 15:29:03 -05:00
Jason Gerard DeRose
e0b00d5981 Removed depreciated import of errors in frontend.py 2009-02-03 15:29:02 -05:00
Jason Gerard DeRose
0313f03277 Added ServiceError (KerberosError) and make rpc.KerbTransport raise it if appropriate 2009-02-03 15:29:02 -05:00
Jason Gerard DeRose
114b6b8577 Added some missing parameter unit tests; added docstring about Command._repr_iter() and Param.safe_value() 2009-02-03 15:29:02 -05:00
Jason Gerard DeRose
7a0f969a47 CLI now logs trace if it catches a non-public error and then exists with an InternalError; other CLI cleanup 2009-02-03 15:29:02 -05:00
Jason Gerard DeRose
c0bc2451dd Fixed another small CLI decoding problem (multivalue args in a tuple now work) 2009-02-03 15:29:02 -05:00
Jason Gerard DeRose
e537dc89cb Fixed a few problems in the CLI interactive prompting (wont prompt for Flag now) 2009-02-03 15:29:02 -05:00
Jason Gerard DeRose
244346dbcb More work on xmlrpc stuff, started migrated more code to use errors2 instead of errors 2009-02-03 15:29:01 -05:00
Jason Gerard DeRose
833088955c More xmlrpc tweaks: xmlserver.execute() now logs non-public exceptions; xmlclient.forward() now handles socket error; fixed some Python 2.4 problems in lite-xmlrpc2.py 2009-02-03 15:29:01 -05:00
Jason Gerard DeRose
24b6cb89d4 Further migration toward new xmlrcp code; fixed problem with unicode Fault.faultString; fixed problem where ServerProxy method was not called correctly 2009-02-03 15:29:01 -05:00
Jason Gerard DeRose
9f48612a56 Sundry work getting ready to switch to new XML-RPC client/server code 2009-02-03 15:29:00 -05:00
Jason Gerard DeRose
46c10d4608 Removed bogus CLI.set_defaults() method that was causing non-required values to get filled in 2009-02-03 15:29:00 -05:00
Jason Gerard DeRose
12c4879613 Added ca_host, ca_port, and ca_ssl_port Env variables that Andrew requested 2009-02-03 15:29:00 -05:00
Jason Gerard DeRose
6aadeb9aea Added Object.params_minus() method; various small tweaks 2009-02-03 15:29:00 -05:00
Jason Gerard DeRose
529819b02b Renamed f_misc.py plugin module to misc.py 2009-02-03 15:29:00 -05:00
Jason Gerard DeRose
f3a84683d2 Removed depreciated Command.args_to_kw() method; updated CLI to use Command.args_options_2_params() instead 2009-02-03 15:29:00 -05:00
Jason Gerard DeRose
ae39dece13 Added Command.args_options_2_params() method and its unit tests 2009-02-03 15:29:00 -05:00
Jason Gerard DeRose
4febb4dd14 Started roughing out new crud base classes 2009-02-03 15:28:59 -05:00
Jason Gerard DeRose
6e53d03c69 Command.takes_options and Command.takes_args class attributes can now also be a callable 2009-02-03 15:28:59 -05:00
Jason Gerard DeRose
5d82e3b35a Changed ipauuid.py docstring slightly so epydoc formats it correctly 2009-01-21 13:36:53 -07:00
Jason Gerard DeRose
0c95e86cf3 Removed doctest +ELLIPSIS directive from some examples in ipauuid.py that didn't need it 2009-01-21 13:22:22 -07:00
Jason Gerard DeRose
c4702f3a1e Fixed some Python2.4 issues in ipauuid.py doctests 2009-01-21 13:08:30 -07:00
Jason Gerard DeRose
5616af19b1 Merge branch 'master' of git://git.engineering.redhat.com/users/rcritten/freeipa2 2009-01-21 12:42:40 -07:00
Jason Gerard DeRose
f22f3eabb2 Fixed Param.validate() so that self.query is checked after self.required 2009-01-20 09:38:39 -07:00
Jason Gerard DeRose
55fba5420d Added rpc.xmlclient backend plugin for forwarding; added corresponding unit tests 2009-01-19 21:10:42 -07:00
Rob Crittenden
aba16941ee Skip doc testing of the uuid module since by nature it changes every time 2009-01-19 10:40:12 -05:00
Rob Crittenden
98ab09fafc Initial implementation of netgroups 2009-01-19 10:40:12 -05:00
Rob Crittenden
8154131ce1 Use correct function for outputing a string 2009-01-19 10:40:11 -05:00
Rob Crittenden
bc40686b7f Fix rule definition to match new API 2009-01-19 10:40:11 -05:00
Rob Crittenden
e708765d61 Include local copy of UUID generator for Python 2.4.
Python 2.5+ has a built-in RFC 4122-compliant UUID generator. Include a
copy of this file in our library and import it in a way that it will
work with Python 2.4.
2009-01-19 10:40:11 -05:00
Jason Gerard DeRose
bae9dd7c07 Added example to StrEnum docstring 2009-01-18 16:03:02 -07:00
Jason Gerard DeRose
364e05def1 Added missing enumerable parameters 2009-01-18 15:55:56 -07:00
Jason Gerard DeRose
7514f96173 New Param: fixed metavar bug in cli.py 2009-01-16 11:07:21 -07:00
Jason Gerard DeRose
462bac3c13 Added docstring cross-references between rpc and rpcserver modules 2009-01-16 01:56:39 -07:00
Jason Gerard DeRose
0227a12949 Added docstrings to the new rpc.xml_dumps() and rcp.xml_loads() functions 2009-01-16 01:23:55 -07:00
Jason Gerard DeRose
6be5e4a0a5 ipalib.rpc: now using allow_none=True after conversation with Rob; added xml_dumps() and xml_loads() functions; some name cleanup 2009-01-15 23:52:50 -07:00
Jason Gerard DeRose
4d4fa694ee Small change in ipalib.cli to check if param is a Password instance instead of calling depreciated ispasswd() method 2009-01-14 23:15:46 -07:00
Jason Gerard DeRose
fdda31c50b Fixed a problem in the host plugin module; added not in TODO about using Param.query 2009-01-14 22:59:44 -07:00
Jason Gerard DeRose
a10144be24 Updated service plugins module to where it can at least be imported 2009-01-14 22:35:13 -07:00
Jason Gerard DeRose
86b7ebf717 Updated ra plugins module to where it can at least be imported 2009-01-14 22:29:59 -07:00
Jason Gerard DeRose
a41a7f406f Updated pwpolicy plugins module to where it can at least be imported 2009-01-14 22:25:45 -07:00
Jason Gerard DeRose
ec86208a90 Updated passwd plugins module to where it can at least be imported 2009-01-14 22:19:31 -07:00
Jason Gerard DeRose
64c072b7b3 Updated hostgroup plugins module to where it can at least be imported 2009-01-14 22:10:09 -07:00
Jason Gerard DeRose
ec14fbfbc5 Updated host plugins module to where it can at least be imported 2009-01-14 21:55:04 -07:00
Jason Gerard DeRose
29e5a58795 Updated group plugins module to where it can at least be imported 2009-01-14 21:23:20 -07:00
Jason Gerard DeRose
39068ab7ca Fixed automount plugins module to where it can at least be imported 2009-01-14 21:11:14 -07:00
Jason Gerard DeRose
0327b83899 New Param: all docstring examples now pass under doctests 2009-01-14 20:36:17 -07:00
Jason Gerard DeRose
cd3508bace New Param: added Param.query kwarg for crud operations like Retrieve and Search where criteria should not be validated 2009-01-14 14:04:05 -07:00
Jason Gerard DeRose
79422d0489 All unit tests now working (except for doctests and Rob's xmlrpc tests) 2009-01-14 13:51:37 -07:00
Jason Gerard DeRose
09e2f5d615 New Param: got most of unit tests ported (still have 6 errors); haven't ported doctests yet 2009-01-14 13:17:30 -07:00
Jason Gerard DeRose
69acff450c New Param: removed more depreciated 'import ipa_types' 2009-01-14 12:00:47 -07:00
Jason Gerard DeRose
2b2e73e7df Removed depreciated code from frontend.py; frontend.py no longer imports ipa_types 2009-01-14 11:39:29 -07:00
Jason Gerard DeRose
f3e0900ebc New Param: ipalib.__init__ no longer import ipa_types and instead imports appropriate classes from parameters 2009-01-14 11:32:32 -07:00
Jason Gerard DeRose
47e8b1c0b7 Removed deprecited ipa_types.py and test_ipa_types.py 2009-01-14 11:25:26 -07:00
Jason Gerard DeRose
3e201dfff6 New Param: split common Bytes/Str functionality into new Data base class; Str no longer subclasses from Bytes 2009-01-14 10:58:05 -07:00
Jason Gerard DeRose
5d1e5a0aa9 New Param: renamed parameter.py to parameters.py 2009-01-14 10:25:33 -07:00
Jason Gerard DeRose
cc5d7e8adb New Param: Small docstring change in Flag 2009-01-14 10:17:39 -07:00
Jason Gerard DeRose
05514292dc New Param: Flag now fill-in default=False and also forces default to be a bool 2009-01-14 09:56:10 -07:00
Jason Gerard DeRose
8cc38e681f New Param: added new Flag param class and its unit test 2009-01-13 20:27:19 -07:00
Jason Gerard DeRose
659bb4c142 New Param: added Param.clone() method and corresponding unit test 2009-01-13 19:49:23 -07:00
Jason Gerard DeRose
a0fb215a2c New Param: updated Str._convert_scalar() so it raises a ConversionError 2009-01-13 18:29:45 -07:00
Jason Gerard DeRose
10747103fa New Param: implemented a base Param._convert_scalar() method; added Param.type_error attribute for ConversionError message 2009-01-13 02:17:16 -07:00
Jason Gerard DeRose
c2b0d03f82 New Param: updated Bytes and Str length rules to use new rule(_, value) calling signature; updated corresponding unit tests 2009-01-13 01:07:33 -07:00
Jason Gerard DeRose
33db9fee60 New Param: ported create_param() function and unit tests 2009-01-13 00:27:06 -07:00
Jason Gerard DeRose
11dce19225 New Param: added Param.get_default() method and detailed docstring; added corresponding unit tests 2009-01-12 22:48:04 -07:00
Jason Gerard DeRose
5c7c0b35bb New Param: added Param.validate() and Param._validate_scalar() methods; added corresponding unit tests 2009-01-12 16:14:46 -07:00
Jason Gerard DeRose
3e9eb0bda0 Changed PublicError so str(e) is untranslated (for logging) and added format=None kwarg for generic use 2009-01-08 00:07:18 -07:00
Jason Gerard DeRose
9e430755a5 Renamed PublicError.code attribute to PublicError.errno 2009-01-06 13:33:22 -07:00
Jason Gerard DeRose
ac89267c2f Fixed type in KerberosError, droped LDAPError range to just 100 codes for now 2009-01-06 11:54:58 -07:00
Jason Gerard DeRose
f130da56c3 Additional work on the new error code tree in errors2.py 2009-01-06 11:15:41 -07:00
Jason Gerard DeRose
2462135da0 Added a few missing things to base.ReadOnly docstrings 2009-01-05 12:41:02 -07:00
Jason Gerard DeRose
4a24b49d5d A few docstring improvements in Env 2009-01-05 03:28:27 -07:00
Jason Gerard DeRose
690ad4766d New Param: added Str length rule methods; added corresponding unit tests 2009-01-05 02:45:07 -07:00
Jason Gerard DeRose
6d6c0d81dd New Param: decided on calling signature for rules; added unit tests for Bytes._rule_minlength, _rule_maxlength, and _rule_length 2009-01-05 02:20:09 -07:00
Jason Gerard DeRose
c121d0064b New Param: Added Param.get_label() method for a way to retrieve translated message at request time 2009-01-05 01:20:14 -07:00
Jason Gerard DeRose
6fe78a4944 Renamed all references to 'ipa_server' to 'ipaserver' 2009-01-04 18:39:39 -07:00
Jason Gerard DeRose
ff66c7ece6 Added more public exceptions and did some other cleanup in errors2 2009-01-04 18:20:39 -07:00
Jason Gerard DeRose
2608838ef1 Quite a bit of work on new public errors and their unit tests 2009-01-04 03:52:08 -07:00
Jason Gerard DeRose
c161784973 Added request.ugettext() and request.ungettext() functions; added corresponding unit tests 2009-01-04 00:46:21 -07:00
Jason Gerard DeRose
c081ce5460 request.create_translation() now sets context.ugettext and context.ungettext 2009-01-03 22:03:37 -07:00
Jason Gerard DeRose
912ab9e68b Removed unneeded import of errors from plugable.py 2009-01-03 18:08:39 -07:00
Jason Gerard DeRose
bb6e9cfe9f Plugin.call() now uses errors2 version of SubprocessError 2009-01-03 18:02:58 -07:00
Jason Gerard DeRose
6b6e6b1cab Ported plugin registration errors into errors2.py; plugable.Registrar now raises new errors2 exceptions 2009-01-03 17:27:53 -07:00
Jason Gerard DeRose
d1517b95ca Ported errors.SubprocessError to errors2 2009-01-03 15:35:54 -07:00
Jason Gerard DeRose
0d3ddef93b Started fleshing out reoganization of errors in errors.py (with gettext support) 2009-01-03 02:35:36 -07:00
Jason Gerard DeRose
b32965dffe Clarifed base.DefaultFrom.__call__() docstring 2009-01-02 17:27:44 -07:00
Jason Gerard DeRose
dae08b3ee6 Small docstring cleanup in parameters.py 2009-01-02 02:22:48 -07:00
Jason Gerard DeRose
72340a594d Removed unneeded import of check_type, check_instance in plugable.py 2009-01-02 01:16:17 -07:00
Jason Gerard DeRose
7be459af0b Added a bit to config.Env docstring about that variable names must pass check_name() function 2009-01-02 01:14:37 -07:00
Jason Gerard DeRose
b4dc333ee2 Removed depreciated code in ipalib.plugable that has been moving into ipalib.base 2009-01-02 00:46:45 -07:00
Jason Gerard DeRose
ea7f9594df A few docstring edits in base.NameSpace 2009-01-02 00:35:42 -07:00
Jason Gerard DeRose
b3063dbb8a A few base.NameSpace docstring tweaks 2008-12-31 15:47:28 -07:00
Jason Gerard DeRose
86325bf4eb Copied plugable.NameSpace to base.NameSpace and made many docstring and unit test improvements 2008-12-31 02:28:49 -07:00
Jason Gerard DeRose
57dae28d9c Added base.lock() and base.islocked() functions; added corresponding unit tests 2008-12-30 21:14:51 -07:00
Jason Gerard DeRose
e9be796950 Fixed Env._bootstrap() docstring typo 2008-12-30 15:14:33 -07:00
Jason Gerard DeRose
379c549fc1 Env now supports float values 2008-12-30 15:02:15 -07:00
Jason Gerard DeRose
ecccc5c236 Added my name to Athors of config.py 2008-12-30 14:05:08 -07:00
Jason Gerard DeRose
03c9114958 More docstring cleanup in ipalib.config 2008-12-30 13:52:36 -07:00
Jason Gerard DeRose
11e165073e Docstring cleanup in the Env bootstraping methods 2008-12-30 03:11:45 -07:00
Jason Gerard DeRose
7012bed299 Small changes to base.ReadOnly docstring 2008-12-30 01:08:04 -07:00
Jason Gerard DeRose
8decf4d8c3 Decided against indenting the example code in the base.ReadOnly docstring 2008-12-30 00:57:56 -07:00
Jason Gerard DeRose
447c88a2bb Started moving some core classes and functions from plugable.py to new base.py module 2008-12-30 00:45:48 -07:00
Jason Gerard DeRose
e14fc84dfc Renamed Env._merge_config() to Env._merge_from_file() 2008-12-29 21:23:34 -07:00
Jason Gerard DeRose
7766f0be61 Yet more small docstring cleanup in Env 2008-12-23 01:59:31 -07:00
Jason Gerard DeRose
f7cae9a27c More docstring cleanup in Env and its methods 2008-12-23 01:28:00 -07:00
Jason Gerard DeRose
16526142f3 Finished Env class docstring; more organizational cleanup in Env and its unit tests 2008-12-23 01:11:03 -07:00
Jason Gerard DeRose
fd43b39145 Moved setting of run-time variables from Env.__init__() to Env._bootstrap() 2008-12-22 23:09:35 -07:00
Jason Gerard DeRose
01cae56e0a Some more reorganization in Env and added class docstring to Env with lots of examples 2008-12-22 21:02:43 -07:00
Jason Gerard DeRose
6b055b435f Cleaned up Env.__setattr__() and Env.__setitem__() a bit updated their unit tests 2008-12-22 17:29:11 -07:00
Jason Gerard DeRose
014cca57ad The Env.__setitem__() implied conversion is now case sensitive; Env.__setitem__() now also accepts None as a value 2008-12-22 16:16:57 -07:00
Jason Gerard DeRose
c070d390e9 Removed Env.__getattr__(); Env no longer accepts callables for values (no more dynamic/lazy values) 2008-12-22 15:51:54 -07:00
Jason Gerard DeRose
5b637f6a18 Removed depreciated code from config.py; removed corresponding unit tests 2008-12-22 15:41:24 -07:00
Jason Gerard DeRose
f82c48f775 Added note in Plugin.set_api() about Plugin.log attribute being depreciated 2008-12-21 19:58:48 -07:00
Jason Gerard DeRose
9d091c98f1 Plugin.__init__() now checks that subclass hasn't defined attributes that conflict with the logger methods; added corresponding unit test 2008-12-21 19:34:32 -07:00
Jason Gerard DeRose
4390523b7f Improved Plugin.call() method and added its unit test 2008-12-21 17:12:00 -07:00
Andrew Wnuk
b3f95b1741 Merged in Andrew's RA plugin 2008-12-21 14:15:53 -07:00
Jason Gerard DeRose
6fdf5d1e7b Merge branch 'master' of git://git.engineering.redhat.com/users/rcritten/freeipa2 2008-12-20 15:00:00 -07:00
Jason Gerard DeRose
9a69adeef0 Added request.create_translation() function and corresponding unit tests 2008-12-18 16:58:48 -07:00
Jason Gerard DeRose
dc54dee622 Started work on per-request gettext setup 2008-12-18 14:01:59 -07:00
Jason Gerard DeRose
46e37ab144 New Param: ported Param.__repr__() and corresponding unit test 2008-12-18 11:21:12 -07:00
Jason Gerard DeRose
4d1681176a New Param: added unit tests for TypeError cases in DefaultFrom.__init__() 2008-12-18 02:08:41 -07:00
Jason Gerard DeRose
cb2f294cfe New Param: added missing unit tests for TypeError and ValueError cases in parse_param_spec() 2008-12-18 01:57:39 -07:00
Jason Gerard DeRose
99363131df New Param: swapped location of DefaultFrom class and parse_param_spec() function 2008-12-18 01:45:13 -07:00
Jason Gerard DeRose
a632c2935a New Param: removed unneeded conversion to tuple() in Param.convert() 2008-12-18 01:27:03 -07:00
Jason Gerard DeRose
ac335bc7ea New Param: fixed small bug in Param.convert() and added detailed docstring 2008-12-18 01:18:17 -07:00
Jason Gerard DeRose
bf8154fa50 New Param: fixed a few things in Param.convert() and added corresponding unit tests 2008-12-18 00:02:38 -07:00
Jason Gerard DeRose
8ef6819059 New Param: renamed Param.__normalize_scalar() to Param._normalize_scalar() as it might make sense for subclasses to override 2008-12-17 23:32:58 -07:00
Jason Gerard DeRose
b26894c166 New Param: changed naming convention for class rules to '_rule_%s' as these methods aren't part of the public interface 2008-12-17 23:30:29 -07:00
Jason Gerard DeRose
285fa3d330 Removed depreciated envtest command from f_user.py 2008-12-17 23:18:14 -07:00
Jason Gerard DeRose
4f24f0fd88 Plugin.doc instance attribute is now parsed out using inspect.getdoc(); added Plugin.summary instance attribute, created in Plugin.__init__() 2008-12-17 23:08:52 -07:00
Jason Gerard DeRose
171ed58367 Removed Plugin.doc property and replaced with instance attribute created in Plugin.__init__() 2008-12-17 21:57:58 -07:00
Jason Gerard DeRose
69041c3b1b Removed Plugin.name property and replaced with instance attribute created in Plugin.__init__() 2008-12-17 21:47:43 -07:00
Jason Gerard DeRose
ba481e7712 New Param: split class_rules and *rules into separate attributes 2008-12-17 18:32:46 -07:00
Jakub Hrozek
360f95341a Fix show_api command 2008-12-17 17:21:25 -07:00
Jakub Hrozek
f0bbe1b5a0 Add body for the NameSpaceError exception 2008-12-17 17:17:02 -07:00
Jakub Hrozek
67b688c7b2 Jakub Hrozek's patch to make textui.get_tty_width() actually work 2008-12-16 19:00:39 -07:00
Jason Gerard DeRose
e05fd7ab03 New Param: added basic rule logic 2008-12-12 04:48:25 -07:00
Jason Gerard DeRose
66faffdfb0 New Param: cleanup up readability of Param.__init__(); added unit tests for unknown kwargs 2008-12-12 03:38:02 -07:00
Jason Gerard DeRose
5272949bfd New Param: added all logic for minlength, maxlength, and length in Bytes class (which Str inherits) 2008-12-12 03:13:58 -07:00
Jason Gerard DeRose
079721da2c New Param: changed kwargs class attribute to a tuple so the subclass interface is simpler 2008-12-11 22:39:50 -07:00
Jason Gerard DeRose
64ae4bc986 Copied DefaultFrom into parameter.py; added docstring to new Param.normalize() method; more work and unit tests in new Param class 2008-12-11 20:30:59 -07:00
Jason Gerard DeRose
5c47b56d14 Finished kwarg validation and extension mechanism in parameter.Param 2008-12-11 18:07:54 -07:00
Rob Crittenden
c025ed6404 Remove some debugging statements 2008-12-11 16:06:26 -05:00
Rob Crittenden
e41fcf19fe Raise an error on bad principals instead of printing one when changing passwords
Fix logic in determining what to do with an incoming principal
2008-12-11 10:31:27 -05:00
Jason Gerard DeRose
22209a0f03 Started roughing out the consolidated type/parameter system in parameters.py; started corresponding unit tests 2008-12-10 21:14:05 -07:00
Rob Crittenden
46bd3974af Don't pass along the kw dictionary we were passed by XML-RPC.
We generally want to just search indexed attributes. We get this list
of attributes from the configuration, use it.
2008-12-10 16:45:07 -05:00
Rob Crittenden
af7b5645af Convert to new output_for_cli() function 2008-12-10 16:42:45 -05:00
Rob Crittenden
c34d2b8923 Add helper for adding Indirect maps.
This creates the map and the key pointing to the map. By default the key
is associated with the auto.master map but it can be overriden.
2008-12-10 14:15:20 -05:00
Rob Crittenden
3583735c60 Set defaults even for optional arguments. 2008-12-10 14:15:20 -05:00
Rob Crittenden
039ee0fd56 Add a function to show all the maps under a given mapname, def. is auto.master 2008-12-10 14:15:20 -05:00
Rob Crittenden
fc8ac69372 Port plugins to use the new output_for_cli() argument list
Fix some errors uncovered by the nosetests
2008-12-10 14:15:19 -05:00