By | 12 octubre, 2004

En el artí­culo Comentarios ‘ocultos’ hasta nuevo aviso dije que estoy utilizando la version alfa (1.3-alpha-4) de WordPress, esta excelente herramienta de software libre para weblogs. Alli mismo, mi amigo Jorge Gobbi me pregunta como hacer para mantener (o tener instalada) la última versión de WordPress; y este artículo es una breve reseña de cómo hago para mantenerme actualizado siempre desde el CVS con la última versión.

Con un sistema equivalente mantengo tambien la ultima version de Coppermine en mi sitio de fotos, y de Ilohamail, en mi webmail . Esto me posibilita probar antes que nadie las mejoras introducidas en estas tecnologías y también cooperar con los desarrolladores informando problemas de programacion en las primeras etapas de testeo.

Por supuesto, que acepto sugerencias u otras opciones para mantenerme al dia, que puedan mejorar esta metodología.

Primera bajada del CVS

Es un requerimiento previo a que todo esto funcione tener instalado los paquetes cvs y rsync (en Debian: apt-get install cvs rsync); deberá buscar los paquetes correspondientes en su distribución. No es necesario configurar ninguno de estos paquetes como servicio, ya que serán usados ambos como clientes.

Sugiero crearse un directorio donde va a bajar y mantener su copia local del contenido del CVS, para este ejemplo yo la llamo /lugar_donde_bajo_wordpress/, pero en su caso puede ser un sub-directorio de su home o un sub-directorio de /usr/local/src/. Una vez decidido en qué lugar tendrá su copia local de WordPress, deberá ejecutar los siguientes comandos:

cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/cafelog login
(presionar ENTER cuando le pida una clave)
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/cafelog co wordpress

con lo que bajará todo el WordPress desde el CVS a su disco. Esto se hace una única vez, así que no es necesario un script para esto.

Actualizando desde el CVS

Periódicamente deberá actualizar la copia local de archivos, para esto si es necesario un script de bash.

Este scrip de bash yo lo alojo en el directorio anterior al que me ha formado la réplica del CVS, o sea /lugar_donde_bajo_wordpress/ y la réplica forma un sub-directorio llamado wordpress/.

#!/bin/bash

cd wordpress

export CVS_RSH=ssh
cvs -z9 update -P -d

cd -

Como se puede ver, el script primero ingresa dentro del directorio del repositorio y de alli ejecuta cvs. Esto es necesario, pues en los sub-directorios CVS esta almacenada toda la información para bajar/actualizar los datos.

Este script lo corro periódicamente, inclusive es posible colocarlo en el crontab ya que solo mantiene la replica local del CVS.

Impactando contra el sitio

Luego es necesario alguna forma medianamente inteligente de los nuevos archivos de la réplica local sobre-escriban los archivos del sitio web, para ello utilizo el siguiente script que se vale del utilitario rsync:

#!/bin/bash
# Script de sincronizacion con rsync

ORIGEN=/lugar_donde_bajo_wordpress/wordpress/
DESTINO=/raiz_de_mi_sitio/

# Excluir de sincronizar o borrar archivos o directorios que puedo modificar a traves de la interfaz de Wordprss
ESPECIAL='--exclude images --exclude wp-comments.php --exclude index.php --exclude wp-layout.css --exclude wp-config.php'

# Excluir de sincronizar o borrar mis archivos propios y archivos correspondientes a mi template.
ESPECIAL="$ESPECIAL --exclude pen-sm.jpg --exclude gradient.gif --exclude fotos"
ESPECIAL="$ESPECIAL --exclude exhibit.css --exclude exhibit_full.php --exclude exhibit_pictorialis.css --exclude exhibit10.php --exclude exhibit_readme.txt --exclude exhibitimg"

rsync -C --delete $ESPECIAL -vaz $ORIGEN $DESTINO

Lo más importante es tener una buena definición de qué es lo que se desea excluir de la sincronización, ya que si no se excluye correctamente es posible estar perdiendo las modificaciones realizadas a traves de la web, sobre-escribiéndola siempre con los archivos por defecto de la distribución original.

Upgrade de la base de datos

Cada cierto tiempo, los desarrolladores modifican el archivo /wp-admin/upgrade.php que se encarga de poner al día la estructura de la base de datos. Cuando veo que una nueva versión del archivo ha llegado, simplemente procedo a ejecutarlo a traves de la página web.

Esta es la respuesta, Jorge, mediante este php puedes poner al día la estructura de la base de datos. El script es bastante inteligente y hace los cambios desde la versión que tu tengas instalada.

Obtener ayuda y reportar problemas

Primero que nada, se debe tener en cuenta que trabajando contra la version del CVS seguramente se tendrán problemas, ya que por más que los desarrolladores prestan atención a lo que programan, el código resultante tiene muy poco tiempo de testeo, así que hay que estar preparado y asumir los problemas como algo normal, comprometiendonos a cooperar para encontrar la solución: gran parte de la ayuda se brinda presentando claros y concretos reportes de problemas o fallos.

Si Usted no desea complicarse la vida, utilice una versión que está presentada como estable por el equipo de desarrollo.

Podz, del equipo de desarrollo de WordPress, hablando de las actualizaciones nocturnas (nightlies) dice:

Usar las actualizaciones nocturnas si:
1 – Está corriendo un blog de testeo.
Y
2 – Está completamente contento con cualquier problema que pueda aparecer Y acepta que la ayuda para arreglar el problema puede no ser inmediata.
Y
3 – Acepta que el código puede o no funcionar como se desea

Bien, para obtener ayuda lo mejor es el foro web en particular el llamado Beta Discussion. Allí los desarrolladores y otros usuarios avanzados del sistema están deseosos de conocer problemas y solucionarlos.

Para reportar errores tienen este sitio llamado WordPress Mosquito. Los desarrolladores han instalado una herramienta de software libre llamada Mantis que les permite atender y recordar los problemas reportados. Le sugiero, solamente reportar aquí errores o problemas cuando tenga claro conocimiento de que está ante un bug que requiere modificaciones en el código para solucionarlo.

Consideraciones finales

El equipo de desarrollo de WordPress mantiene una versión de su How do I upgrade ?, aquí solo describo cómo lo hago yo.

WordPress es una herramienta muy avanzada que ha sido alabada en distintos medios, por lo que la recomiendo profundamente para todo aquel que desee entrar al mundo del blogging.

One Reply to “WordPress actualizado desde el CVS”

  1. Shapord

    muy interesante recien acabo de bajare instalr wordpress, pero tengo aun un problema con el style css, al parecer eñ style busca mi localhost en vez de mi dominio :_( ya lo arreglare y pondre en uso tu consejo. gracias

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *