FWIW, random thoughts on things I'd like to pound on: ** cobblerd **
Making it a little easier to debug/work on. For testing, I think we should be able to turn cobblerd off and use the XMLRPC library directly without a socket connection, for testing and also local usage (with cobblerd stopped, probably). This could help out things pretty quickly. So the same API syntax we could use in the tests without spawning up the daemon, and that could work exceptionally nicely. cobblerd has to exist because of background jobs and our persistance layer, which I do not wish to rewrite everything to be databasey -- as much as I'd like to, it's way too much work, and really not a field problem. In many cases, it's actually useful, and it's one of a few things that makes working on Cobbler not feel like working on a webapp, and that's not a feeling I'd want to encourage anyway :) Maybe if I set a environment variable like COBBLERTEST=1 and then run cobbler commands or the test suite, it could work that way (locally) and give local exceptions, etc. This would be totally unsuitable for production use, but could be quite useful for us. ** more testing coverage ** I've gotten alot better at testing... cobbler has lots of side effects and the need to provision to fully test (in some cases) and deal with a lot of ISOs and a lot of storage means things are difficult. More abstraction layers probably need to exist... I don't know, but I'd like to establish a decent test framework that requires less manual testing. The existing test directory is not enough. I think for most things we can require tests for commits and can mock out parts of the app that are side effecty, and also configure it in such a way where we could have a "install root" where the tests build out their filesystem operations in "/tmp", etc. Just having that concept of a configurable FS root could be huge. Not sure what to do about auto-testing import, but there's quite a bit that we can test the heck out of (PXE trees, maybe even minimal yum repos, etc). ** cross distro support ** For my own personal reasons, pretty much for mobile development setups, I'd like to see how much of the server plays nice on a mac, and if we can make it to play *nicer*. ** templates ** I kind of hate Cheetah and would like to provide other simpler options. Ideally have something like the bash shebang to specify a template type. This seems actually pretty safe to do, but it would be nice to port all of things away from Cheetah as well. Should not be difficult. **object system ** Over the years I've had lots of random ideas on cleaning up the item_* system to reduce boilerplate, there's probably more to do here. Not a major priority, requires the test infrastructure first. ** development environment ** "make webtest" is pretty annoying, get cobbler tools to run better out of local checkout with PYTHONPATH. Might be almost free. See also the idea of having a way to configure cobbler's filesystem root. Maybe this only works in local XMLRPC mode as well. ** python versions ** require python2.4 as a minimum in cobbler & koan both, older OS support *gone*, they've had long enough, and it's nice to be able to have decent language capabilities --Michael _______________________________________________ cobbler-devel mailing list cobbler-devel@lists.fedorahosted.org https://fedorahosted.org/mailman/listinfo/cobbler-devel