Notas sobre la configuracion, instalacion y desarrollo - U

Anuncio
Notas sobre configuración, instalación y desarrollo
Archivos importantes
.htaccess:
Para lograr que funcione correctamente el modulo mod_rewrite de apache y utilizado
por Cake, fue necesario modificar los 3 archivos .htaccess que cake requiere. Esta
modificación sólo es necesaria para que funcione en anakena. En la intranet se deben
usar los .htaccess originales al igual que en la copia local de desarrollo. La modificación
consiste en agregar la linea RewriteBase en los 3 archivos .htaccess del sistema los que
son: root/.htaccess, root/app/.htaccess y root/app/webroot/.htaccess, entonces solo es
necesario borrar o comentar esta línea en cada archivo para la versión a instalar en la
intranet y en el desarrollo local.
app/config/core.php:
Este archivo tiene la configuración básica de cake, en este sólo se debe cambiar la
variable referente a si se esta en debug o no al momento de hace pruebas o instalar. Se
dejó en debug = 0 en la intranet y en 1 la versión de anakena. Al estar en debug >= 1 se
asume que el perfil del usuario es ADMINISTRADOR y no se hace chequeo de login ni
expiración de la sesión.
app/config/core_mas.php:
Este archivo es incluido por el core.php, la idea es que en este archivo se agreguen todas
las definiciones de constantes a utilizar en la aplicación y configuración extras
necesarias. Aquí también se configura la ruta donde se guardan los archivos subidos al
sitio, esta ruta debe ser absoluta y tener permisos de lectura/escritura para el usuario con
el que se ejecuta Apache.
define('PATH_DOCUMENTO','/u/c/p_grado/public_www/dbpostgrado/app/documento
s/');
app/config/database.php:
Este archivo tiene la configuración de la base de datos. Sólo ocupamos la bd “default”.
Se debe modificar para la instalación final y en la copia loca de desarrollo.
app/app_controller.php
Este archivo contiene la clase AppController que es de la cual heredan todos los demás
Controller. Esto es importante por que si se quiere tener una función global, entonces es
mejor definirla aquí. Además en esta clase se prefiere configurar todos los Modelos,
Helpers y Components que serán globales a la aplicación. Como excepción en esta clase
se incluye el modelo Reporte, que es el que permite mostrar los indicadores en la
portada, la forma como se incluyo esta funcionalidad en la portada no es de lo más
puristas, por lo que se sugiere que se mejore su implementación en futuras versiones.
En la linea 26 if(Configure::read() > 0) lo que esta preguntando es el modo de debug
actual, si es mayor a cero implica que estamos en debug.
app/app_model.php
Este archivo contiene la clase AppModel que es de la cual heredan todos los demás
modelos. Idem que AppController sobre la herencia de las funciones.
Copia de desarrollo
Para empezar a desarrollar se debe contar con:
1) Una base de datos postgreSql.
2) Apache + Php4, se recomienda wamp con plugging para php4. La librería
php_postgres no viene activa por defecto, por lo que es necesario activarla a
mano en la configuración de php.
3) Modulo mod_rewrite de apache activado, este no viene activo por defecto por lo
que es necesario activarlo a mano en la configuración de apache.
4) Cliente SVN, se recomienda TortoiseSvn.
Se debe hacer un checkout del trunk de la url: http://anakena.dcc.uchile.cl/svncc51ag1/trunk a una carpeta local. (Suponiendo que alguien ya subió el proyecto)
Luego se debe modificar los archivos:
- app/config/core_mas.php: se debe especificar la ruta real donde se van a guardar los
archivos subidos a la aplicación:
define('PATH_DOCUMENTO','c:/wamp/www/dbpostgrado/app/documentos/');
Se debe poner siempre el slash al final para evitar problemas. En el caso de *nix se debe
dar permisos de lectura al usuario con el que corre apache.
Luego se debe crear la BD usando el script ubicado en:
root/db/entrega_final_modelo_v12_y_data_2007-12-12.sql
- app/config/database.php: se debe especificar la configuración necesaria de la BD
“default”.
- archivos .htaccess: se deben modificar los 3 archivos ubicados en: root/, root/app/ y
root/app/webroot/ sobrescribiéndolos por sus versiones originales disponibles a contar
de la ruta: root/cake/scripts/templates/skel o comentando/borrando la linea RewriteBase.
En este caso root sería “dbpostgrado”.
Finalmente ejecutar apache + php y abrir el navegador apuntado a
http://localhost/dbpostgrado. Si todo salio ok, se debería llegar a la página de
bienvenida idéntica a la ubicada en: http://www.dcc.uchile.cl/~cc51ag1/dbpostgrado/
SVN
La estructura de SVN fue:
/
branches/
tags/
iteracion1/
entrega_final_2007-12-12/
trunk/
…
Que corresponde a la recomendada por las buenas prácticas de SVN.
En la carpeta trunk es donde se realiza todo el desarrollo.
En la carpeta tags se guardan “marcas o fotografías” que permiten guardar una versión
especifica de lo que esta en el trunk, de esta forma cuando se realizo la entrega 1 y
posteriormente la final se generaron sus respectivos tags para guardarlos como
históricos. Los tags son como fotografía de como estaba el desarrollo en ese momento.
En la carpeta branches se guardan ramificaciones del desarrollo principal, se utilizan
mayormente cuando se quiere investigar una forma de hacer las cosas sin afectar al
desarrollo principal, entonces se copia el trunk a un Branco y se sigue el desarrollo en
paralelo, la idea final es que si el Branco dio buen fruto se vuelva a mezclar con el trunk
para aportar al desarrollo principal lo nuevo desarrollado. Esto requiere de mayor
manejo de SVN y también de mejor coordinación del equipo, por lo que no se
recomienda el uso de branches para programadores sin experiencia en SVN.
Final
Espero que esta guía le sea de utilidad a quien la lea. Cualquier duda sobre el software,
Cake, Apache, Php o postgreSql primero pregúntele a san Google y luego a su auxiliar.
Descargar