
GemRailsApp: Simplificar el acceso a nuestra App
El usuario final debería encontrar fácil instalar y crear instancias de nuestra aplicación, configurarlas y ejecutarlas.
También podríamos ofrecer capacidades de upgrade/downgrade entre versiones (gracias a migration) o ejecutar versiones específicas gracias a ser nuestra aplicación una gema.
Una línea de comandos centralizada para nuestra aplicación cumpliría con este proceso de simplificación.
Se incluye un script con la siguiente funcionalidad:- Crear una instancia vacía.
- Ejecutar nuestra aplicación mediante webrick (en modo producción por defecto).
- Previamente validar el directorio actual como una instancia.
- Un “configurador” para
database.yml. - Upgrade/downgrade de nuestra aplicación usando rake migrations.
- Instalación y control en modo servicios para win32.
Configuración y ejecución
En nuestro script, ubicado en bin/, agregaremos todos los pasos para configurar y ejecutar nuestra aplicación.
Ejemplos:
Para crear una nueva instancia de nuestra aplicación, usamos:
myrailsapp create --type=adapter --instance=instance_path
Esto creará la estructura necesaria para nuestra instancia y copiará dentro de db/ el archivo SQL necesario para crear la estructura inicial de nuestra aplicación y la configuración inicial de database.yml.
El adaptador por defecto es sqlite.
Nuestra aplicación deberá proveer los archivos db-adapter_name.sql, uno por cada modelo con el cuál nuestra aplicación está diseñada para trabajar.
Luego de la creación de la instancia, se deberá hacer la importación del .sql a la base de datos.
Ejecutar el servidor
También en nuestro script básico se provee la ejecución en modo servidor (mediante webrick) de nuestra aplicación.
Esta parte solo difiere de script/server en que permitimos especificar INSTANCE como un parámetro adicional a las otras opciones (por defecto toma el directorio desde el cual llamamos a este script).
myrailsapp server --webrick_params=value ... --instance=
Por defecto ejecutamos nuestra aplicación en modo
production.