Introducción

Para desarrollar el sitio de encuentro por los chicos estamos utilizando una herramienta para crear portales llamada PostNuke.

Esta herramienta esta desarrollada en PHP y utiliza MySQL para persistir los datos del portal. Esto significa que para el desarrollo es necesario tener instaladas estas herramientas. Este documento es una guía rápida de como instalar estas herramientas localmente (en una maquina con Windows) y de como utilizar los "scripts de build" incluidos junto con el código fuente.

Instalación de las herramientas necesarias

Requerimientos

Para crear el "entorno de desarrollo" y utilizar el sitio localmente, es necesario contar con las siguientes herramientas:

  • Un web server con soporte para PHP.
  • Una base de datos compatible con PostNuke
  • PostNuke
  • AutoTheme (framework para facilitar la creación de themes de PostNuke, es utilizado por el theme del sitio)
  • Maven (para ejecutar los scripts de build).
  • Java JDK 1.4.x (para poder utilizar Maven).
  • Algún cliente de CVS (para poder hacer checkout del código fuente).

Si bien no es un requerimiento usar Apache y MySQL, por que en teoría con cualquier webserver y base de datos en los que funcione PHP y PostNuke alcanza. El entorno típico para desarrollo (y el explicado acá) es Apache y MySQL en Windows.

Instalar MySQL

La instalación de MySQL en Windows es muy sencilla, un simple setup con siguiente...siguiente... siguiente.

Una vez instalado MySQL solo será necesario acordarnos en que directorio lo instalamos, ya que nos referiremos a él más tarde como MYSQL_HOME.

Instalar Apache y PHP

La siguiente es una explicación muy (pero muy!) corta, para más información leer la documentación de Apache y PHP.

Bajar la versión Windows en (.zip ó .tar.gz) de PHP (no es conveniente bajar la versión que viene con un instalador, pues no trae las .dll necesarias para utilizar PHP como módulo de Apache 2). Descomprimir PHP en un directorio, de ahora en más nos referiremos a este directorio con el nombre de PHP_HOME.

Copiar la .dll PHP_HOME/php4ts.dll al directorio PHP_HOME/sapi. (el módulo de Apache 2 necesita de esta .dll para funcionar, otra posibilidad es asegurarse de que esta .dll este en el PATH, aunque la forma más facil y rápida es simplemente copiarla al directorio donde se encuentra el módulo de Apache 2 de PHP, o sea PHP_HOME/sapi).

Instalar Apache 2 (la instalación de la versión en Windows es muy, sencilla, un simple siguiente... siguiente... siguiente). Nos referiremos al directorio donde se instaló Apache 2 con el nombre de APACHE_HOME.

Editar el archivo de configuración de Apache, que se encuentra en APACHE_HOME/conf/httpd.conf y agregar las siguientes líneas después de las líneas que dicen "LoadModule".

LoadModule php4_module "PHP_HOME/sapi/php4apache2.dll"
AddType application/x-httpd-php .php
		

¿Cómo puedo testear la instalación?

Para testear la instalación crear un archivo .php (por ejemplo test.php) en APACHE_HOME/htdocs con el siguiente código:

<?php phpinfo(); >

Y luego probar de ejecutar esta página desde un browser. En la mayoría de los casos esto debería dar una página con información sobre la instalción de PHP. Si esto no funciona referirse a la documentación de PHP.

Instalar PostNuke y AutoTheme

Como primer paso para crear el entorno es necesario bajar PostNuke y descomprimirlo a una carpeta. El resto de este documento hará referencia a esta carpeta con el nombre de POSTNUKE_HOME.

Luego bajar AutoTheme y descomprimirlo en POSTNUKE_HOME/html.

Instalar el JDK y Maven

Para poder utilizar los scripts de build es necesario instalar el Java JDK 1.4.x y Maven.

La instalación de Maven es sencilla:

  1. Descomprimir Maven en una carpeta (el resto de este documento hará referencia a esta carpeta con el nombre de MAVEN_HOME).
  2. Crear una variable de entorno llamada JAVA_HOME que apunte al directorio donde fue instalado el JDK.
  3. Agregar el directorio MAVEN_HOME\bin en el PATH

Checkout

Traer el módulo encuentroporloschicos

Ya tenemos Apache, PHP, MySQL, PostNuke, AutoTheme y Maven (ufff! cuantas cosas)... hagamos el checkout del código del sitio.

Para esto es necesario indicarle al cliente de CVS cual es el repositorio el CVSROOT), la página de CVS en SourceForge indica como hacerlo, con más detalle. Para hacer un checkout anónimo (no se pueden comitear cambios), se puede utilizar el siguiente CVSROOT: :pserver:anonymous@cvs.sourceforge.net:/cvsroot/porloschicos

Luego solo hay que hacer checkout del módulo encuentroporloschicos.

Configurar el build

Para que funcionen los scripts de build, es necesario establecer algunos valores de configuración que dependen de la instalación de las herramientas en cada maquina.

Para realizar esta configuración editar el archivo build.properties.sample y guardarlo como build.properties.

Inicialización de la base de datos

Para inicializar la base de datos, simplemente ejecutar Maven con el goal epc:overwrite-database.

Cuidado! el script de epc:overwrite-database borra la base de datos encuentroporloschicos si es que existe (el script deja un backup en el directorio db-backups), ver la referencia del script de build, para más información sobre los targets disponibles en el maven.xml.