Como sucede cada 6 meses, el próximo lunes 22 de septiembre 2014 se "congela"
lo que será la versión 3.4 de Tryton (actualmente la 3.3).
A modo técnico o de servidor, hay algunos pasos que han cambiado. En este
artículo no explicaremos pasa a paso como instalar un Tryton 3.4. Simplemente
comentaremos los cambios a nivel de servidor respeto a versiones inferiores a nivel de sistema.
La contraseña de Super Usuario
En el fichero de configuración la contraseña debe estar encriptada.
Para encriptar una contraseña podemos ejecutar este comando en una terminal.
El resultado que obtenemos es el que deberemos añadir en el fichero de configuración.
python -c 'import getpass,crypt,random,string; print crypt.crypt(getpass.getpass(), "".join(random.sample(string.ascii_letters + string.digits, 8)))'
Fichero de configuración de trytond
El fichero de configuración del servidor de Tryton, conocido como trytond,
también ha cambiado su estructura.
Ahora el fichero de configuración tiene una estructura de ConfigParser
Cada parámetro de la configuración irá especificado en una sección.
A continuación os mostramos un ejemplo del fichero de configuración:
[database]
uri=postgresql://user:password@localhost:5432
[session]
super_pwd=KZzr0pwRA8ITA
Un ejemplo más complejo de fichero de configuración de trytond seria:
[jsonrpc]
listen=*:8000
data=/var/www/localhost/tryton
[xmlrpc]
listen=*:8069
[webdav]
listen=localhost:8080
[database]
uri=postgresql://user:password@localhost:5432
path=/var/lib/tryton/data # directorio donde se guardaran los adjuntos
#~ [ssl]
#~ certificate=
#~ privatekey=
[email]
uri=smtps://usuario:password@smtp.dominio.com:465
from=usuario@dominio.com
[session]
timeout=3600
super_pwd=KZzr0pwRA8ITA
#~ [report]
#~ unoconv=pipe,name=trytond;urp;StarOffice.ComponentContext
Las opciones de SMTP son:
- smtp: simple SMTP
- smtp+tls: SMTP con STARTTLS
- smtps: SMTP con SSL
Arrancar el servidor trytond
Disponemos de nuevos parámetros para arrancar el servidor de trytond.
Aquí os comentamos algunos de importantes en modo producción:
- --cron: Con esta opción arrancaremos el servidor trytond para usar las acciones planificadas
- --pidfile: La ruta del fichero PID
Un ejemplo de arranque del servidor trytond será:
$ tryond -c /etc/trytond.conf --cron --pidfile /var/run/trytond_server.pid
Fichero configuración de logs
El fichero de configuración de logs usa configparser-format donde deberemos
especificar la salida de los logs.
Un ejemplo de fichero de logs seria este:
[formatters]
keys=simple
[handlers]
keys=rotate, console
[loggers]
keys=root
[formatter_simple]
format=%(asctime)s] %(levelname)s:%(name)s:%(message)s
datefmt=%a %b %d %H:%M:%S %Y
[handler_rotate]
class=handlers.TimedRotatingFileHandler
args=('/tmp/tryton.log', 'D', 1, 30)
formatter=simple
[handler_console]
class=FileHandler
formatter=simple
args=('/tmp/tryton.log', 'w')
[logger_root]
level=INFO
handlers=rotate, console
Este fichero de la configuración de logs vemos que volcaremos los logs en el
fichero /tmp/tryton.log. Si deseamos que los logs salgan en la pantalla podemos
cambiar el "handler_console" con esta configuración:
[handler_console]
class: StreamHandler
formatter: simple
args: (sys.stdout,)
Finalmente, para activar esta configuración de logs, deberemos arrancar el
servidor trytond con la opción "--logconf"
$ tryond -c /etc/trytond.conf --cron --pidfile /var/run/trytond_server.pid --logconf /etc/trytondlogs.conf
Instalación de un módulo
En versiones anteriores si queríamos instalar un módulo disponíamos la opción "-i".
Para instalar un módulo, simplemente usaremos la opción "-u". Si el módulo no
está instalado, lo instalará.
$ trytond -c /etc/trytond.conf -u dashboard -d try33demo
Si son varios módulos a instalar, estos irán separados por un espacio.
$ trytond -c /etc/trytond.conf -u dashboard google_maps -d try33demo
Actualización de todos los módulos
La opción "-u all" para actualizar todos los módulos ya no se encuentra disponible,
ya que "all" no es un nombre de módulo. Para actualizar todos los módulos
podemos usar la opción "--all".
$ trytond -c /etc/trytond.conf --all -d try33demo
También para una actualización de todos los módulos lo haremos con el módulo "ir" pues
todos los módulos dependen de este y se actualizarán.
Si sólo deseamos actualizar uno o unos módulos en concreto, estos irán
separados por un espacio:
$ trytond -c /etc/trytond.conf -u dashboard google_maps -d try33demo
Códigos postales
El módulo "country" disponemos de un nuevo modelo "country.zip" que nos relaciona
el código postal con una ciudad, una subdivisión (provincia) y un país.
La carga de códigos postales en el sistema no se realiza durante la instalación
del módulo "country" y no es obligatorio (optativo). Para la carga de códigos postales deberemos ejecutar el
siguiente comando:
$ trytond_import_zip -d try33demo -p admin -c /etc/trytond.conf es
En este ejemplo nos cargará todos los códigos postales de España y Francia.
La fuente de la relación de códigos postales se obtiene de GeoNames
El comando "trytond_import_zip" lo tendremos a nivel de sistema si hemos instalado
Trytond con el "setup" o "pip". Si no, lo podemos encontrar dentro del directorio
country/scripts (recuerda que deberás configurar un tu entorno de Python el trytond).