Buscar en el blog de Andrés Cifuentes

jueves, 1 de mayo de 2008

Primeros pasos con Google App Engine (Configurar Ambiente)


Eforcers como socio de Google en el programa empresarial (GEP - Google Enterprise Partner) tiene acceso a algunas de las nuevas tecnologías y productos de forma preferencial, en este caso nos invitaron a conocer y "jugar" con el nuevo servicio de Google App Engine, herramienta que promete cambiar el paradigma del desarrollo de las aplicaciones web.

En este blog les describiré los primeros pasos que seguimos para desarrollar nuestra primera aplicación con David y así en cierta forma dejar documentado el proceso y los puntos claves a tener en cuenta en esta primera aproximación con este ambiente de desarrollo y publicación de aplicaciones web.


Pre-requisitos

Antes de siquiera empezar a descargar el SDK lo primero que debemos hacer es instalar o actualizar la versión de Python que tengamos en nuestro ambiente de desarrollo, en este caso yo había instalado python para un proyecto, pero no tenia la ultima versión (2.5) así que en mi Mac ejecute fink commander para actualizarla, proceso que se toma su tiempo pues compila los paquetes y sus dependencias a partir del codigo fuente, unix old style (configure, make, make install).



Instalación

Ahora si podemos descargar el App Engine SDK de acuerdo al sistema operacional en que tengamos nuestro ambiente de desarrollo, actualmente esta para plataforma Win, Mac Os X y Linux. Una vez instalado el SDK nos deja dos comandos, uno para cargar el ambiente de desarrollo y otro para realizar el despliegue de la aplicación.



Los comandos tal como lo describe el readme del SDK se ejecutan asi: /usr/local/bin/dev_appserver [options] application root="", creo que por ahora el que nos debemos aprender es como sacar la ayuda.

/usr/local/bin/dev_appserver -h

Como buen sysadmin me voy a ahorrar la tarea de tener que escribir todos los parámetros que se necesitan cada vez que vaya a levantar el ambiente de desarrollo, así que crearé un script en shell para ejecutar rápidamente, en principio veo que solo debe recibir por parámetro el directorio raíz de la aplicación así que ese será mi $1.

Configuración

Casi listo, ahora tengo que configurar mi IDE para desarrollar en Python, afortunadamente Eclipse soporta varios lenguajes usando plug-ins entre ellos hay uno para codificar en Python se llama PyDev, entonces no solo tenemos que instalarlo.

Usando la opción en el menu: Help > Software Install > Find and Install, la URL del proyecto para que nos realice las actualizaciones es :

http://pydev.sourceforge.net/updates/

Buscar la ultima versión e instalar.

Finalmente configurar el modulo instalado definiendo la ruta de pyhton y aceptando las librerías por defecto que instala.



Eventualmente alguien desarrollará o adicionará a la lista de servidores que se pueden levantar, manejar y monitorear desde el modulo de servidores en Eclipse el ambiente de desarrollo de Google App Engine, mientras tanto ejecutar un scriptsito no sera una molestia.

Bien creo que estamos listos para hacer el hola mundo.

Andrés Cifuentes
Mayo 1, 2008

3 comentarios:

  1. Muy importante tener documentado este proceso, uno se da cuenta de lo importante cuando cambia de equipo o tiene que explicarle a alguien. Sí, sería chevere que el plugin "servers" de eclipse tuviera en el futuro la publicación y sincronización al app engine pero más chevere sería un driver para ver los contenidos de "bigtable" en el plugin de database development.

    ResponderBorrar
  2. Encontré una forma de no tener que salir de Eclipse para ejecutar el dev_appserver.py

    En el menu Run -> Open Run Dialog...->Python Run
    Adicionar ruta del proyecto, ruta al archivo dev_appserver.py local y en el tab de argumentos poner algo así

    ${project_loc}
    --port=9999

    Listo, te queda guardado el perfil y cuando le des run arranca el servidor usando la consola de eclipse para ver los errores y encadenarlos directamente a la ocurrencia en el código python.

    ResponderBorrar
  3. Tomo casi un año, dos versiones de eclipse, un lenguaje nuevo en el app engine, pero ya esta el plug-in para no tener que salir del IDE para trabajar con Google App Engine.

    http://code.google.com/eclipse/

    ResponderBorrar