lunes, 7 de abril de 2008

Caminando con Pier #2 - Instalación

Como había prometido, aquí esta la primer entrega de la mini-guía de pier. Me colgué un poco y tardé en empezar, pero a partir de hoy, me comprometo a poner una parte por día (y no son tantas partes, por ahora cuento 4).
En esta primer entrega, haré la parte mas simple: la instalación. Aunque sea un paso un poco trivial,  espero que les sea de alguna utilidad. Además, el primer paso para empezar a usar un programa es tenerlo instalado :)

Instalar Pier desde una imágen 3.10 es bastante simple, requiere seguir estos pasos:
  1. Bajarse una imágen 3.10: Squeak3.10-7159-basic.zip
  2. En la imágen seleccionar el “Package Universe Browser”.
  3. Actualizar los packages, seleccionando "Update list from network"
  4. Seleccionar e instalar “Pier version current” (esta en la sección "Web Development")
  5. La instalación pregunta por un usuario y password de administración, para este ejemplo yo puse admin/admin. 
  6. La instalación pregunta si quiero crear una aplicación de Seaside para Pier, le digo que sí.
  7. Nombre del kernel: “Smallworks”
  8. Entry Point: “smallworks”
  9. Puerto: 8080
¡Listo!

La instalación estándar de pier me deja una aplicación corriendo, en este caso en http://localhost:8080/seaside/smallworks

Así se ve una instalación default de Pier

Alternativa: Instalando desde monticello
El metapackage “Pier version current” instala un montón de cosas, aunque a veces no las más nuevas. Esto es particularmente crítico porque tanto Seaside como Pier se actualizan muy frecuentemente, y a veces nos conviene -o simplemente queremos- tener versiones más nuevas.
El siguiente es un script que hace lo mismo que el metapackage que instalamos, pero con las últimas versiones (a la fecha):

"******************************"
"Level Playing Field (LPF)"
"Esta línea se baja de internet la última version del LPF, es necesario para poder instalar los últimos packages."
"******************************"
(HTTPSocket httpGet: 'installer.pbwiki.com/f/LPF.st') readStream fileIn.

"******************************"
"Comanche"
"Comanche es el servidor web default de Seaside.
Lo instalo de Universe, porque es bastante estable y no ha cambiado en los últimos tiempos"
"******************************"
Installer universe
addPackage: 'KomHttpServer(7.0.30)';
addPackage: 'KomServices(1.12)';
install.

"******************************"
"Seaside con Scriptaculous"
"Instalo la última versión estable de Seaside 2.8 y de Scriptaculous.
Las últimas versiones son distintas de las del universo, así que instalo las que estan en
el SqueakSource"
"Este paso pedirá el nombre y contraseña para el usuario administrador de Seaside"
"******************************"
"Seaside + Scriptaculous"
Installer ss project: 'Seaside';
install: 'Seaside2.8a1-tbn.539.mcz';
install: 'Scriptaculous-mb.239.mcz'.

"******************************"
"Magritte"
"Pier utiliza Magritte para describir los componentes, las versiones se encuentran en el
repositorio de lukas renggli (creador de magritte, además de pier)
"******************************"
Installer lukas project: 'magritte';
install: 'Magritte-All-lr.261.mcz'.

"******************************"
"Pier"
"Pier también esta en el repositorio de lukas
Como curiosidad: Pier-All no instala el componente de blog, ni el de persistencia,
así que los instalamos explicitamente"
"Este paso preguntará si se desea publicar una apliación pier, y los datos correspondientes"
"******************************"
Installer lukas project: 'pier';
install: 'Pier-All-lr.282.mcz';
install: 'Pier-Blog-lr.72.mcz';
install: 'Pier-Squeak-Persistency-lr.1.mcz'.

"******************************"
"Limpieza"
"Esto limpia los cachés de monticello, que engordan bastante la imágen, y luego de
la instalación son inútiles"
"******************************"
MCFileBasedRepository flushAllCaches.
Smalltalk garbageCollect.
Este proceso deja algunas cosas sin instalar que el paquete del Universe instala: el Pier-OmniBrowser y sus dependencias, pero como en esta guía no lo voy a usar, los dejé a fuera.

Eso es todo por ahora, el paso de mañana es "Configuración de usuarios y derechos de acceso"

¡Hasta luego!
 

 

5 comentarios:

Giuseppe Luigi Punzi Ruiz dijo...

Interesante guía. Vais a tratar también el tema de cambio de diseño y demás?

Espero impaciente la segunda parte.

Esteban dijo...

Hola, Giuseppe
Si, pienso tocar los básicos del cambio de diseño... pero eso viene en la última parte. Lo dejé para el final porque no es "mi area", así que es lo que más me va a costar :)

Anónimo dijo...

Buenos días, Esteban.

Estoy siguiendo tu tutorial y agradezco tu diligencia por el. En mi caso tengo una imagen que viene con el Seaside y el Pier, ¿Cómo hago para nombrar la swiki como "smallworks", según tus instrucciones, si cuando corro el pier tengo una dirección http://localhost:8080/seaside/pier y no http://localhost:8080/seaside/smallworks.?

Por lo otro he seguido las instrucciones hasta la lección dos y voy bien, lo único raro es lo anterior.

De antemano, gracias.

Saludos a todos.

Esteban dijo...

Hola, Sandor
El problema es que aceptaste la instancia default, cuando instalaste pier, y el te crea una aplicación con esos nombres.
Para crear una instancia con tu propio nombre, tenés que ejecutar en el código algo como esto esto:

PRKernel reset. "Esto borra todos los kernels creados"
PRPierFrame
registerAsApplication: 'miApp'
kernel: (PRKernel named: 'miApp').


cualquier cosa no dudes en seguir preguntando

Saludos,
Esteban

Anónimo dijo...

Hola, Esteban.

Entendido, gracias.

Sandore