Crear Ruby Gems fácilmente

Las ruby gems permiten instalar librerías de Ruby con un simple comando desde cualquier máquina que interprete Ruby y tenga ruby gems instalado.

Para crear Ruby gems fácilmente podemos utilizar la librería NewGem

1. Instalación:

gem install newgem


2. Creación del esqueleto de la ruby gem

newgem NOMBRE_DE_LA_NUEVA_GEM


Este script creará varios ficheros y subdirectorios necesarios para automatizar todo lo que habitualmente necesitamos para gestionar la creación y difusión de ruby gems.

3. Copiar el código de nuestra gem

Todo el código que queremos empaquetar en la ruby gem tenemos que copiarlo en el subdirectorio que ha creado el script anterior llamado lib/NOMBRE_DE_LA_NUEVA_GEM

Esto funciona porque en el archivo lib/NOMBRE_DE_LA_NUEVA_GEM.rb incluye automáticamente todos los archivos .rb del subdirectorio lib/NOMBRE_DE_LA_NUEVA_GEM, magia? no, una linea en ruby:

lib/NOMBRE_DE_LA_NUEVA_GEM.rb:
Dir[File.join(File.dirname(__FILE__), 'NOMBRE_DE_LA_NUEVA_GEM/**/*.rb')].sort.each { |lib| require lib }


4. Número de versión

Antes de generar nuestra gem es mejor indicar el número de versión de esta. El fichero lib/NOMBRE_DE_LA_NUEVA_GEM/version.rb contiene las constantes MAYOR, MINOR y TINY. Los valores que demos a estas constantes servirán para definir la versión de la gem.

lib/NOMBRE_DE_LA_NUEVA_GEM/version.rb:
module NOMBRE_DE_LA_NUEVA_GEM #:nodoc:
module VERSION #:nodoc:
MAJOR = 0
MINOR = 0
TINY = 1

STRING = [MAJOR, MINOR, TINY].join(’.')
end
end


5. Crear la gem

rake package


Este comando nos generará la gem con el nombre NOMBRE_DE_LA_NUEVA_GEM-MAYOR.MINOR.TINY.gem en el subdirectorio pkg.

6. Instalar la gem en nuestro sistema

gem install pkg/NOMBRE_DE_LA_NUEVA_GEM-MAYOR.MINOR.TINY.gem


Si queremos que todo el mundo pueda usar nuestra gem con el comando gem install NOMBRE_DE_LA_NUEVA_GEM tenemos que crear un proyecto en RubyForge y crear un fichero con la gem que acabamos de generar.

Etiquetas: , ,


Recommend Me


XING
View Sergio Espeja's profile on LinkedIn