]> git.llucax.com Git - software/pymin.git/log
software/pymin.git
17 years agoUpdate services.util errors to be unicode compatible.
Fede [Sat, 6 Oct 2007 15:59:55 +0000 (12:59 -0300)]
Update services.util errors to be unicode compatible.

17 years agoBugfix and add service reload when loading pickled config.
Fede [Sat, 6 Oct 2007 15:37:19 +0000 (12:37 -0300)]
Bugfix and add service reload when loading pickled config.

17 years agoreplaces prints with calls
Fede [Sat, 6 Oct 2007 15:34:14 +0000 (12:34 -0300)]
replaces prints with calls

17 years agobug fixes to proxy service
Fede [Sat, 6 Oct 2007 15:32:50 +0000 (12:32 -0300)]
bug fixes to proxy service

17 years agofix string quotation
Fede [Sat, 6 Oct 2007 13:46:08 +0000 (10:46 -0300)]
fix string quotation

17 years agosupport for proxy users auth
Fede [Sat, 6 Oct 2007 13:43:11 +0000 (10:43 -0300)]
support for proxy users auth

17 years agoMerge ../pymin
Fede [Sat, 6 Oct 2007 13:04:02 +0000 (10:04 -0300)]
Merge ../pymin

17 years agoImprove a lot error reporting and unicode/utf-8 compatibility.
Leandro Lucarella [Sat, 6 Oct 2007 04:02:35 +0000 (01:02 -0300)]
Improve a lot error reporting and unicode/utf-8 compatibility.

Conversion between unicode and utf-8 is now done when sending/receiving
over the network by the PyminDaemon.

All errors provides now a conversion to unicode.

Dispatcher CommandNotFoundError was refactored to multiple classes with
specific and more descriptive error messages.

Handlers now can have a little help string (handler_help).

Handler's help command now list subhandlers (using handler_help).

A new error was added for help command (HelpNotFoundError).

All service handlers were updated.

17 years agoUse common config and pickle paths in the pymind config.
Leandro Lucarella [Sat, 6 Oct 2007 02:47:55 +0000 (23:47 -0300)]
Use common config and pickle paths in the pymind config.

17 years agoAdd iptables configuration doc.
Leandro Lucarella [Fri, 5 Oct 2007 16:02:37 +0000 (13:02 -0300)]
Add iptables configuration doc.

17 years agoUse a handler object as the root dispatcher handler instead of a dict.
Leandro Lucarella [Fri, 5 Oct 2007 16:01:53 +0000 (13:01 -0300)]
Use a handler object as the root dispatcher handler instead of a dict.

Now the dispatcher use a handler object as the root handler. This way you
can inherit your root handler from Handler and get the useful 'help' and
'coommands' commands for free.

17 years agoSe agrega el manejo de usuarios al proxy
Nicolas Emiliani [Thu, 4 Oct 2007 19:21:14 +0000 (16:21 -0300)]
Se agrega el manejo de usuarios al proxy

17 years agoCreate a package named pymin with all the pymin modules.
Leandro Lucarella [Thu, 4 Oct 2007 16:10:14 +0000 (13:10 -0300)]
Create a package named pymin with all the pymin modules.

17 years agoChange "var" for "attr" where it refer to an object attribute.
Leandro Lucarella [Thu, 4 Oct 2007 14:48:23 +0000 (11:48 -0300)]
Change "var" for "attr" where it refer to an object attribute.

For example _persistent_vars is now _persistent_attrs. Mostly for
consistency and clarity.

17 years agoAdd a ParametersHandler to services.util.
Leandro Lucarella [Thu, 4 Oct 2007 14:35:40 +0000 (11:35 -0300)]
Add a ParametersHandler to services.util.

This class is a helper to provide common service parameters commands: get,
set, list and show.

All service handlers that use parameters were update to inherit from this
class.

17 years agoFactored out a lot of common code.
Leandro Lucarella [Wed, 3 Oct 2007 21:41:48 +0000 (18:41 -0300)]
Factored out a lot of common code.

A new module is created: services.util which has a lot of helper classes
and functions to do common tasks of service handlers. Actual classes are:
Persistent, Restorable, ConfigWriter, ServiceHandler, InitdHandler and
TransactionalHandler (see documentation for details).

A call() function is provided as a simple wrapper for subprocess.call() to
execute simple commands. It can raise and ExecutionError, as a wrapper for
subprocess.call exceptions or ReturnNot0Error if the returned value is not
0.

All actual service handlers were updated.

17 years agoSe agrega el proxy.
Nicolas Emiliani [Wed, 3 Oct 2007 18:26:22 +0000 (15:26 -0300)]
Se agrega el proxy.

17 years agoSe agrega el comando ip a la pymind y se corrige @handler
Nicolas Emiliani [Tue, 2 Oct 2007 16:11:13 +0000 (13:11 -0300)]
Se agrega el comando ip a la pymind y se corrige @handler

Se agrega a la configuracion el comando ip y se modifican
los handlers de dns e ip para que devuelvan con help

17 years agoMerge /home/luca/pymin
or3st3s [Tue, 2 Oct 2007 12:12:52 +0000 (12:12 +0000)]
Merge /home/luca/pymin

Conflicts:

config.py
services/__init__.py

17 years agoSe corrige bug que impide crear, borrar yc crear una zona.
Nicolas Emiliani [Tue, 2 Oct 2007 15:09:58 +0000 (12:09 -0300)]
Se corrige bug que impide crear, borrar yc crear una zona.

17 years agoSe modifica el comando ip.
Nicolas Emiliani [Mon, 1 Oct 2007 21:13:00 +0000 (18:13 -0300)]
Se modifica el comando ip.

Se  modifica para que haga el flush ante un commit
y ademas se parse la salida del ip link list para
cargar en el init los devices y direcciones mac de
cada device

17 years agoImplement firewall handler.
Leandro Lucarella [Mon, 1 Oct 2007 02:03:40 +0000 (23:03 -0300)]
Implement firewall handler.

17 years agoRename pymin daemon executable to pymind.
Leandro Lucarella [Mon, 1 Oct 2007 02:03:04 +0000 (23:03 -0300)]
Rename pymin daemon executable to pymind.

17 years agoAdd a special \N escape sequence to represent None to command parser.
Leandro Lucarella [Mon, 1 Oct 2007 01:06:39 +0000 (22:06 -0300)]
Add a special \N escape sequence to represent None to command parser.

Now \N can be used in positional parameters and keyword argument values to
represent a python None value.

Tests and examples are improved.

17 years agoBugfix: tokens starting with escape sequences where splitted up.
Leandro Lucarella [Mon, 1 Oct 2007 01:03:42 +0000 (22:03 -0300)]
Bugfix: tokens starting with escape sequences where splitted up.

17 years agoFix a typo in the documentation.
Leandro Lucarella [Sun, 30 Sep 2007 20:33:01 +0000 (17:33 -0300)]
Fix a typo in the documentation.

17 years agoSe agrega la estructura del comando IP
or3st3s [Sun, 30 Sep 2007 16:44:58 +0000 (16:44 +0000)]
Se agrega la estructura del comando IP

17 years agoSe agregar el dns al manejo del dispatcher.
or3st3s [Sat, 29 Sep 2007 14:20:31 +0000 (14:20 +0000)]
Se agregar el dns al manejo del dispatcher.

Se modifica config.py para que levante un DnsHandler.
Se modifica pymindaemon para que en caso de error 0 agregue
un fin de linea.
Se heredan las excepciones de Dns del HandlerError
.Se corrije el _write_config para que se comporte segun lo
esperado.

17 years agoExport only selected symbols.
Leandro Lucarella [Sat, 29 Sep 2007 05:58:41 +0000 (02:58 -0300)]
Export only selected symbols.

17 years agoAdd support for quoted and keyword arguments to the Dispatcher.
Leandro Lucarella [Sat, 29 Sep 2007 05:55:38 +0000 (02:55 -0300)]
Add support for quoted and keyword arguments to the Dispatcher.

Now it's possible to dispatch commands with quoted arguments, like:
echo "hello world"

Keyword arguments are supported too, you can write something like:
set variable=value
and the handler for set will be called like set(variable="value").

See dispatcher.parse_command for more detail.

17 years agoAdd help messages and command listing to dispatcher handlers.
Leandro Lucarella [Fri, 28 Sep 2007 21:20:54 +0000 (18:20 -0300)]
Add help messages and command listing to dispatcher handlers.

Now the @handle decorator takes a mandatory help argument to specify a
short help string for that handler. A new functions get_help() is added to
the dispatcher module to get the help string from a handler.

A new base Handler class is provided in dispatcher module to automatically
have a 'help' and 'commands' commands available.

17 years agoAdd missing \n to Internal server error.
Leandro Lucarella [Fri, 28 Sep 2007 19:36:17 +0000 (16:36 -0300)]
Add missing \n to Internal server error.

17 years agoUpdate TODO (add logging).
Leandro Lucarella [Fri, 28 Sep 2007 19:25:29 +0000 (16:25 -0300)]
Update TODO (add logging).

17 years agoImprove error handling.
Leandro Lucarella [Fri, 28 Sep 2007 17:11:14 +0000 (14:11 -0300)]
Improve error handling.

Now all errors that should be reported back to the pymin client should
inherit from dispatcher.HandlerError. Any other error is reported to the
client as an internal server error and it's printed in the daemon standard
output for debugging purposes. A new line is now appended to errors
reported to the client for better consistency with OK responses.

17 years agoInvert PyminDaemon constructor options and add defaults.
Leandro Lucarella [Fri, 28 Sep 2007 16:59:05 +0000 (13:59 -0300)]
Invert PyminDaemon constructor options and add defaults.

It's more likely to just want to override the routes and not the addr.

17 years agoBugfix: handle empty lists on as_table().
Leandro Lucarella [Fri, 28 Sep 2007 16:55:51 +0000 (13:55 -0300)]
Bugfix: handle empty lists on as_table().

17 years agoMerge /home/luca/pymin
or3st3s [Fri, 28 Sep 2007 15:48:18 +0000 (15:48 +0000)]
Merge /home/luca/pymin

17 years agoSe Agrega la estructura del DNS
Nicolas Emiliani [Fri, 28 Sep 2007 18:44:47 +0000 (15:44 -0300)]
Se Agrega la estructura del DNS

17 years agoAdd more documentation to seqtools module.
Leandro Lucarella [Thu, 27 Sep 2007 20:48:37 +0000 (17:48 -0300)]
Add more documentation to seqtools module.

17 years agoUse the serializer mode to automatically serialize handlers results.
Leandro Lucarella [Thu, 27 Sep 2007 20:48:09 +0000 (17:48 -0300)]
Use the serializer mode to automatically serialize handlers results.

Handlers now don't have to worry about serialization. All they have to do
is return list of values (which can be lists or iterable object). Then the
PyminDaemon serialize them to UTF-8 encoded CSV strings and send them
through socket.

17 years agoAdd a module to serialize a set of tabular data as a CSV file.
Leandro Lucarella [Thu, 27 Sep 2007 20:45:05 +0000 (17:45 -0300)]
Add a module to serialize a set of tabular data as a CSV file.

17 years agoAdd a module to handle unicode CSV files with multiple encodings.
Leandro Lucarella [Thu, 27 Sep 2007 16:38:42 +0000 (13:38 -0300)]
Add a module to handle unicode CSV files with multiple encodings.

17 years agoAdd an utility module for operating on sequences.
Leandro Lucarella [Thu, 27 Sep 2007 16:37:10 +0000 (13:37 -0300)]
Add an utility module for operating on sequences.

17 years agoAdd LoopInterruptedError documentation.
Leandro Lucarella [Thu, 27 Sep 2007 16:34:37 +0000 (13:34 -0300)]
Add LoopInterruptedError documentation.

17 years agoMake Host iterable so it can be used as a sequence when serializing.
Leandro Lucarella [Wed, 26 Sep 2007 21:15:39 +0000 (18:15 -0300)]
Make Host iterable so it can be used as a sequence when serializing.

17 years agoRemove old commented code.
Leandro Lucarella [Tue, 25 Sep 2007 17:17:18 +0000 (14:17 -0300)]
Remove old commented code.

17 years agoAdd DhcpHandler.get() and HostHandler.get() to get a single value.
Leandro Lucarella [Mon, 24 Sep 2007 20:59:20 +0000 (17:59 -0300)]
Add DhcpHandler.get() and HostHandler.get() to get a single value.

As a show() companion, new get() commands are added to get the information
about a single DHCP parameter or host.

17 years agoUpdate TODO list.
Leandro Lucarella [Mon, 24 Sep 2007 20:58:25 +0000 (17:58 -0300)]
Update TODO list.

17 years agoImprove error reporting.
Leandro Lucarella [Mon, 24 Sep 2007 20:58:02 +0000 (17:58 -0300)]
Improve error reporting.

Add new exception classes with better description of errors.

17 years agoBugfix: close() files after use them so the changes get flushed to disk.
Leandro Lucarella [Mon, 24 Sep 2007 20:55:49 +0000 (17:55 -0300)]
Bugfix: close() files after use them so the changes get flushed to disk.

17 years agoAdd a simple error reporting to the protocol.
Leandro Lucarella [Mon, 24 Sep 2007 20:55:15 +0000 (17:55 -0300)]
Add a simple error reporting to the protocol.

A new response type is added "ERROR", which indicates a failure in the
command execution. In the future different types of error could be defined.

17 years agoAdd a missing handler decorator to PyminDaemon test.
Leandro Lucarella [Mon, 24 Sep 2007 17:46:23 +0000 (14:46 -0300)]
Add a missing handler decorator to PyminDaemon test.

17 years agoAdd a simple response to all commands.
Leandro Lucarella [Mon, 24 Sep 2007 17:11:33 +0000 (14:11 -0300)]
Add a simple response to all commands.

The response consist of a success indicator ("OK") followed by the response
body lenght. The response body is command-dependant.

17 years agoAdd a decorator to mark which callables are exported by the dispatcher.
Leandro Lucarella [Mon, 24 Sep 2007 17:09:37 +0000 (14:09 -0300)]
Add a decorator to mark which callables are exported by the dispatcher.

All callables which should handle a command should be maked with the
@handler decorator. This is for the sake of security, so users can't call
arbitrary python code (like a constructor).

17 years agoDhcpHandler documentation and improvements.
Leandro Lucarella [Mon, 24 Sep 2007 17:04:42 +0000 (14:04 -0300)]
DhcpHandler documentation and improvements.

The path where to store pickled configuration and generated config files
is configurable when constructing the instance.

If there's a pickled configuration it's automatically loaded at
construction time. If not, a new configuration based on defaults is dumped
to disk.

New methods are added: restart(), reload() and rollback() and DhcpHandler
is published in the services module and included in the pymin daemon
command tree.

17 years agoBugfix: wrong variable usage.
Leandro Lucarella [Mon, 24 Sep 2007 16:52:13 +0000 (13:52 -0300)]
Bugfix: wrong variable usage.

17 years agoAdd a LoopInterruptedError to the EventLoop.
Leandro Lucarella [Mon, 24 Sep 2007 16:51:02 +0000 (13:51 -0300)]
Add a LoopInterruptedError to the EventLoop.

This error is raised as a translation for the select.error, raised when
the system call is interrupted by a signal, so EventLoop users don't have
to know the details about the loop.

17 years agoUpdate TODO list.
Leandro Lucarella [Mon, 24 Sep 2007 16:48:54 +0000 (13:48 -0300)]
Update TODO list.

17 years agoImplement DhcpdHandler class.
Leandro Lucarella [Sat, 22 Sep 2007 22:44:14 +0000 (19:44 -0300)]
Implement DhcpdHandler class.

A complete example of a handler class. It uses mako for templates and (c)Pickle
for configuration persistence. There is some more work to be done (loading
pickled configuration and other details) but the class is pretty functional.

17 years agoBig repository (and source) rebump.
Leandro Lucarella [Sat, 22 Sep 2007 04:50:53 +0000 (01:50 -0300)]
Big repository (and source) rebump.

A lot was changed, is allmost a new repo import =P

17 years agoSe crea el repo del pymin.
or3st3s [Thu, 20 Sep 2007 17:50:16 +0000 (17:50 +0000)]
Se crea el repo del pymin.