Plone Gobierno

1,404 views

Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Plone Gobierno

  1. 1. Plone para las entidades gubernamentales 2. sesión
  2. 2. Instalación de Plone  Recursos y manuales:  http://www.coactivate.org/projects/traducciones-plone/u  http://labs.menttes.com/plone/material-de-charlas/zc-bu  http://plone.org/documentation/tutorial/installing-plone-3  http://plone.org/countries/mx/buildout  http://blog.jazkarta.com/2009/08/25/best-practices-in-de
  3. 3. Plone Manualmente  Instalación “manual” versus zc.buildout  Manejo de Plone manualmente  Los pasos para configurar un entorno de desarrollo: • Descargar, compilar y instalar Zope • Crear una instancia Zope y configurarla • Descargar y instalar Plone • Instalar productos y eggs adicionales • Agregar a la instancia productos que estoy desarrollando
  4. 4. Plone Manualmente  Hacer este manualmente causa problemas:  Lento para crear nuevos entornos de desarrollo  Cada desarrollador hace su propio entorno: diferencias en las configuraciones pueden desembocar en errores  Implementar actualizaciones y manejar dependencias de los productos adicionales lento  TODO ESTE SE PUEDE HACER AUTOMATICALMENTE CON BUILDOUT
  5. 5. Buildout  Opción preferida: Buildout  Conjunto de partes y software para crear y ensamblar esas partes  Colección de configuraciones y aplicaciones específicas  Sistema de Python Eggs (productos de Python) y setuptools para manejar la configuración de Zope & Plone  Manejo de configuración y paquetes adicionales desde solo un fichero de texto  Pero antes de meternos á Buildout... instalamos Zope y Plone!
  6. 6. La instalación con UnifiedInstaller  Manual de instalación (en inglés)  http://plone.org/documentation/tutorial/installing-plone-3 Unified Installer es un paquete para instalar Zope, Plone y Python  También incluye un script de instalación que fomenta las buenas prácticas según la comunidad Plone  En caso de las problemas, si se ha usado Unified Installer es más probable encontrar solución del foro de discusió
  7. 7. UnifiedInstaller  Root vs. User instalación – Root: instalación (preferible para producción) • /usr/local/Plone • Se crea un usuario “plone”, poner el como un dueño de los ficheros, y configura para que Zope corre como un usuario “plone”  User: instalación – Instalación $HOME/Plone – Zope corre como un usuario quien ha hecho la instalación  Instrucciones para la instalación:  http://tinyurl.com/yj3rlmr
  8. 8. UnifiedInstaller  Zeo o Standalone?  UnifiedInstaller ofrece dos diferentes tipos de instalaciones  ZEO (Zope Enterprise Objects)  Puede tener varios procesos de clientes de Zope cuales comparten el mismo base de datos  Standalone  Más facil para implementar, integrar y controlar. La opción mejor para ambiente de pruebas y sitios que son muy grandes  Correr UnifiedInstaller  Requirimientos: gcc (GNU Compiler Collection), g++ (C++ extensions para gcc), GNU Make, GNU tar, bzip2 y gzip para compresión
  9. 9. Instalación  Descargamos UnifiedInstaller (plone.org/products/plone)  Lo desmpaacamos: tar -zxf Plone-3.VERSION-UnifiedInstaller.tar.gz  cd Plone-3.VERSION-UnifiedInstaller  ./install.sh standalone  Contraseña temporal de Admin situa el fichero adminPassword  Problemas para iniciar Zope son raras  Muchas veces la problema es que un otro proceso esta ocupando el puerto 8080 que Zope utiliza por defecto  Si todo fue bien se puede acceder:  http://localhost:8080 : mensaje de bienvenida  http://localhost:8080/Plone : sitio Plone  http://localhost:8080/manage : interfaz del administrador para Zope (busca la contraseña en el archivo adminPassword.txt)
  10. 10. Buildout  Desde Plone 3.1 UnifiedInstaller utiliza Buildout por defecto  Manejamos la configuración y instalación automaticamente usando  Fichero de configuración: buildout.cfg (situa en la raíz de nuestra instancia, por defecto la carpeta llama zinstance)  Un script para construir la instancia según la información encontrado en dicho fichero de configuración: bin/buildout
  11. 11. buildout.cfg  Contiene varias secciones  [buildout]  Opciones para todo el buildout  Parts: se escribe los siguientes partes del buildout.cfg  Find-links: se puede definir enlaces a los diferentes repositorios para los eggs (por defecto se siempre busca tambien pypi)  extends = http://dist.plone.org/release/3.3/versions.cfg  Eggs: Python eggs (productos adicionales) que se instala – sqlalchemy>=0.3,<0.4dev  [zope2]  Descarga el base de Zope / Plone  Instalar una versión especifica:  recipe = plone.recipe.plone==3.0.1
  12. 12. buildout.cfg  [productdistros] – Manejo de productos Zope del estilo viejo - “old-style Zope products” – urls = http://example.com/dist/ExampleProduct-1.0.tgz – Nested packaged = ExampleProductBundle-1.0.tgz – Version-suffix-packages = AnotherExampleProduct-2.0.tgz  [instance]  Crea nueva instancia de Zope, y define configuraciones de el  Recipe = plone.recipe.zope2instance
  13. 13. Buildout.cfg en práctica  En terminos prácticos, más que todo se necesita modificar solo tres secciones en buildout.cfg  [buildlout]  eggs = instalar Python eggs  [productdistros]  urls = instalar Zope 2 productos  [instance]  zcml = información de configuración de Python eggs
  14. 14. buildout.cfg  Para implementar cualquier cambio que se ha hecho a buildout.cfg, es necesario correr buildout en otra vez – bin/buildout – Por defecto hay que correr el script buildout en la carpeta zinstance (esta buscando buildout.cfg en la carpeta actual) – Más información sobre los opciones para el script buildout: buildout --help
  15. 15. Las carpetas de Buildout  ./bin/  Script “instance” para iniciar / parar la instancia de Zope, zopepy interpreter para hacer debug, y buildout  ./eggs/  Paquetes eggs que buildout ha descargado automaticalmente  ./develop-eggs/  Espceficación de los eggs que se estan desarrollando, se los definen en buildout.cfg  ./downloads/  Ciertos recetas definido en buildout.cfg crear esta carpeta y trae los productos automaticalmente de los repositorios
  16. 16. Las carpetas de Buildout  ./products/  Para instalar productos estilo Zope, se desempaca los paquetes en esta carpeta y recorre buildout  ./src/  Codígo fuente de los paquetes customizados  ./var/  Base de Datos (data.fs), logs  ./parts/  Una area manejado automaticalmente por Buildout  No debería hacer cambios a esta carpeta (buildout sobreescribe mayoría del contenido siempre cuando se lo recorre)
  17. 17. Recursos para Buildout  Más recursos sobre buildout  http://plone.org/countries/mx/buildout  http://plone.org/documentation/tutorial/buildout
  18. 18. Productos Adicionales  Componentes reusables que aumentan los funciones de Plone Core  Foros, galerias, blogs, herramientas de integración de base de datos, sistemas de contactos y formularios, etc. etc.  Repositorios y directorios para  www.plone.org/products  www.contentmanagementsoftware.info  Python Package Index: http://pypi.python.org  El desarrollo relativamente activa  14.-15.9.2009 10 nuevos productos adicionales (en total plone.org/products esta listando 3000 productos)
  19. 19. Productos adicionales  Se puede instalar productos a Plone con dos diferentes tecnologías  “Old-style Zope 2 Products”  Python eggs  Cuando Zope encuentra un producto, se lo agrega a ZMI Control_Panel/Products  Los productos instalados a Zope son disponibles para instalar en Plone a través de “Site setup” o “Configuración del sitio”
  20. 20. Productos estilo Zope 2  Productos de Zope 2 (hasta Plone 3 mayoría de los productos eran así)  Se encuentran en paquetes de .tar.gz o .zip  Instalación:  Agrega el URL del paquete a buildout.cfg (productdistros - urls)  desempaca el archivo a la carpeta /INSTANCE_HOME/Products/  Reinicia Zope y instala el producto a través de Configuración de Plone
  21. 21. Python eggs  Python eggs  Paquetes de Python  Carpeta raíz tiene un fichero setup.py  Nombre de productos es “namespace”.”nombreDeProducto”,  p.ej. plonetheme.mytheme  Productos creados por Paster  Cheese Shop: Indicé de paquetes de Python (repositorio central) (estilo p.ej. Dpgk de Debian)
  22. 22. Evaluación de Productos  Como saber si el producto sirve?  Cual es el estado? Release candidate, beta, alfa...??  Cual es el ciclo de actualizaciones? Cuando fue la ultima actualización?  Ver discusión en el foro de discusión  Se puede encontrar problemas que usuarios han tenido?  Existe documentación?
  23. 23. Evaluación de Productos  Instalación  Nunca debe instalar los productos directamente a una instancia de Zope en producción  Aún después probando que todo funciona en una instancia de desarrollo:  Siempre debe tomar un respaldo de Data.fs  Prueba de instalar un skin  http://plone.org/products/plonetheme-stylized/
  24. 24. Instalación de un Skin  Entramos a PYPI: http://pypi.python.org  Buscamos a un producto que se llama Plonetheme.Stylized  Veremos las instrucciones para la instalación  Entramos a buildout.cfg  Entramos la información necesario a sus propios lugares  [buildout] eggs = ...  [instance] zcml = ...
  25. 25. Configuración del Sitio  Para entrar a configuración del sitio  http://localhost:8080/Plone/plone_control_panel  O a través del enlace “Site Setup” o “Configuración del sitio”  Primero cambiamos la lengua:  Entra a Language  Elige Spanish  Haga clic en Save
  26. 26. Busqueda  Entramos a Busqueda  “Habilita la característica LiveSearch, que muestra resultados en tiempo real si el navegador soporta JavaScript.”  Opciones para eligir que tipos de contenido se muestra en los resultados del busqueda  Se puede agregar nuevos tipos de contenido  Productos adicionales frecuentemente tiene sus propios tipos
  27. 27. Calendario y Correo  Calendario  Eligir el primer día de semana  Y que estados de los elementos se muestra en el calendario  Correo  Indica Servidor SMTP  Puerto, Usuario, contraseña  Nombre y dirección del remitente  El formulario general de contacto envia correos a esta dirección
  28. 28. Errores y Etiquetado  Errores  “Esta página lista las excepciones que han ocurrido en este sitio recientemente. Puede configurar cuántas excepciones deberían guardarse y cuáles deberían ser copiadas al/a los archivo(s) de eventos de Zope.”  Enlaces a los error logs  Decidir que tipo de etiquetado (o markup) los usuarios pueden utilizar  Permite / prohibe el comportamiento wiki
  29. 29. Filtrado HTML  Se filtra las etiquetas de HTML que son consideradas como un riesgo de seguridad  Debe cuidarse en haciendo cambios  Por defecto, sólo están permitidas las etiquetas definidas en XHTML  En particular, para permitir 'embed' como etiqueta debe de eliminarla de 'Etiquetas no deseadas' y agregarla como 'Etiquetas personalizadas'
  30. 30. ZMI y mantenimiento  Interfaz de Administración de Zope  La configuración de sitio desde Plone  Por ejemplo, cambios a flujo de trabajo, CSS, xhtml / page templates, vistas  Mantenimiento  Cerrar / reiniciar el servidor Zope  Tamaño de base de datos  Días del histórico de un objeto a mantener tras la compactación
  31. 31. Navegación  Como se construye la navegación  Generar pestañas automáticamente  Generar pestañas para elementos que no sean carpetas  Tipo de contenido mostrados  Que tipos de contenido mostramos en la navegación  Filtro sobre el estado del flujo de trabajo
  32. 32. Reglas de Contenido  Las reglas realizarán acciones en el contenido de forma automática al dispararse ciertos eventos  Por defecto hay cuatro disparadores  Objeto agregado a una carpeta  Objeto modificado  Objeto eliminado / movido de un contenador  El estado de flujo de trabajo cambiado  Agrega condiciónes y acciones  Por ejemplo: evia un correo cuando alguien de un grupo X agrega un fichero de PDF y hace un copia automaticamente de dicho ficher
  33. 33. Seguridad  Habilitar autoregistro  Permite a los usuarios registrarse a sí mismos en el sitio. Por defecto sólo los administradores pueden agregar usuario  Permite a los usuarios elegir sus propias contraseñas  Si no se selecciona, las contraseñas serán generadas automáticamente y enviadas por correo a los usuarios, verificando así que han introducido una dirección de correo válida.
  34. 34. Seguridad  Habilitar Carpetas de Usuario  Las carpetas de inicio, donde los usuarios pueden crear su contenido personal, serán creadas cuando inicien una sesión (en la carpeta /Plone/Members/USUARIO)  Permite que cualquiera vea la información 'acerca de'  Si no se selecciona, sólo los usuarios conectados podrán ver información sobre el creador de un elemento y sobre cuándo fue modificado.
  35. 35. Sitio  Título & descripción del sitio  Habilitar edición rápida  Usa javascript para poder modificar el contenido de diferentes elementos rapidamente (solo un clic)  Habilitar comprobaciones de integridad de enlaces  Determina si los usuarios deberían recibir advertencias cuando eliminan o mueven contenido que está enlazado dentro del sitio
  36. 36. Sitio  Habilitar funcionalidad de Editor Externo  Determina si la funcionalidad de editor externo está habilitada. Esta característica requiere una aplicación especial instalada en el cliente.  Exponer sitemap.xml.gz en la raíz del portal  Expone su contenido como un archivo según los estándares. Puede enviarlo a motores de búsqueda que soporten este estándar. Permite a estos motores de búsqueda examinar su sitio de forma más inteligente.
  37. 37. Sitio  Soporte JavaScript para estadísticas web  Para habilitar el soporte de estadísticas web de proveedores externos (por ejemplo, Google Analytics). Pegue los trozos de código suministrados. Serán incluidos en el HTML generado, tal y como se han introducido, al final de la página.
  38. 38. Temas  Elige la tema para el sitio  Solo una tema instalado a la vez en la sección de Productos adicionales  Marcar enlaces externos  Si está habilitado, todos los enlaces externos serán marcados con iconos específicos según el tipo de enlace.  Los enlaces externos se abren en una nueva ventana  Mostrar los iconos de tipo de contenido
  39. 39. Tipos  La configuración de workflow, visibilidad y versionado para sus tipos de contenido  Manejo de visiblidad, flujo de trabajo y política de versiones de los tipos de contenido  Se puede permitir comentarios globalmente  Visible en los busquedas o no  Muestra portlets para un tipo de contenido  Cambia el flujo de trabajo del tipo de contenido
  40. 40. Usuarios y Grupos  Manejo de Usuarios, Grupos y sus Roles  Usuarios  Por defecto correo debe ser configurado  Ve la configuración de Correo  Agrega los roles para los usuarios  Por defecto hay cuatro roles  Contribuyente (puede agregar)  Editor (puede editar)  Reader (puede leer el contenido de otros)  Revisor (puede publicar)  Administrador (puede acceder a Configuración del Sitio, y Zope)
  41. 41. Visual Editor  Opciones para el editor visual de Plone: Kupu  Agregar nuevos estilos disponibles  Agrega nuevos funciones para el editor a través de la barra de herramientas  Más información en la pestaña Documentación

×