Capistrano: il deployment Rails diventa facile

27 maggio 2008

Capistrano è un tool molto potente che facilita molto la vita, spesso tediosa, del sistemista, eseguendo al suo posto alcuni task (operazioni più o meno semplici) in modo automatico.

Il compito per cui Capistrano si è subito distinto è il deployment delle applicazioni Rails, ovvero la sua “messa in produzione”. Ma la sua potenza non si ferma certo al deployment, infatti nel corso della sua storia si è sempre più generalizzato, fino ad eseguire i compiti più disparati, come ad esempio, il monitoraggio di sistemi, la migrazione di intere piattaforme hosting da apache a lighttpd… tanto per rendere l’idea.

In questo articolo esaminiamo alcune principali caratteristiche di Capistrano, per poi fare un semplice esempio di integrazione con Rails.

Prerequisiti e installazione

Per lavorare con Capistrano e seguire gli esempi di questo articolo occorrerà avere installato:

  • Ruby (1.8 o superiori)
  • Rubygems (non è indispensabile ma è fortemente consigliato)
  • un server POSIX compatibile (GNU/Linux, FreeBSD, etc) con accesso SSH. Se si utilizzano delle password per accedere ai vari server, queste devono essere tutte uguali. È consigliabile usare chiavi pubbliche per aggirare il problema e per sentirsi un po’ più sicuri.

Per sfruttare al meglio Capistrano è consigliabile avere un minimo di conoscenza di Ruby, il linguaggio con il quale è scritto, e dell’ambiente dei sistemi UNIX-like

Detto questo possiamo procedere all’installazione:

# gem install Capistrano

Nota: la versione 1.8.6 di Ruby ha dei bug sull’implementazione dei thread, che possono creare problemi a Capistrano. In questo caso è lo stesso programma che ci suggerisce di usare gem install fastthread.

Una volta installato tutto l’occorrente passiamo alle caratteristiche.

Capfile

Capistrano (similmente a Make e Rake) utilizza un file di configurazione che definisce tutti i task destinati ai vari server, e in generale tutta la sua logica. Questo file è chiamato Capfile, ed è il file che Capistrano cerca nella directory principale del progetto, per poi caricarlo.

Se vuoi aggiornamenti su Capistrano: il deployment Rails diventa facile inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su Capistrano: il deployment Rails diventa facile

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy