Nell'articolo precedente abbiamo visto come procedere all'installazione di redmine su apache, abbiamo visto come integrare git e gitosis per la gestione delle credenziali degli utenti.. ma alla fine avevamo specificato che c'era ancora qualche problema da risolver. Di seguito vediamo come correggere alcune delle problematiche indicate.
Innanzitutto la versione presente nei repository di ubuntu 10.10 è la versione 1.0.0, purtroppo questa ha qualche bug (di troppo) sopratutto nella gestione dei repository di git, pertanto dobbiamo procedere con l'aggiornamento alla versione 1.0.5 (l'ultima rilasciata) per poter correggere questi problemi.
Per fare questo utilizzeremo il pacchetto gentilmente messo a disposizione da Michael Kuhn, per fare questo inseriamo il sorgente del repository sl server:
sudo nano /etc/apt/source.list.d/redmine.listed inseriamoci le seguenti righe di codice:
deb http://ppa.launchpad.net/suraia/server/ubuntu maverick main
deb-src http://ppa.launchpad.net/suraia/server/ubuntu maverick maininstalliamo anche la chiave del repository:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 1D9D38E5a questo punto andiamo ad installare la versione aggiornata di redmine:
sudo apt-get update
sudo apt-get install redminee quindi riavviamo apache:
sudo service apache2 restartA questo punto andando nell'interfaccia di amministrazione dovremmo verificare che la versione di redmine è la 1.0.5:
come sempre inserite il nome del server corretto.
Purtroppo i nostri repository non sono ancora visitabili utilizzando l'interfaccia di redmine, vediamo quindi di risolvere questo problema! Il tutto è dovuto al fatto che il repository è dell'utente git, mentre redmiine gira con l'utente www-data. Per fare questo facciamo in modo che il comando git venga eseguito dall'utente git.
Per fare questo iniziamo a dare i permessi all'utente www-data di sudare con l'utente git senza password (solo per lanciare il comando git):
sudo nano /etc/sudoersed inseriamo (sotto la direttiva # User privilege specification) la riga:
www-data ALL=(git) NOPASSWD: /usr/bin/gita questo punto proviamo ad eseguire un comando come utente www-data per visualizzare i dati di uno dei repository creati:
sudo -u www-data git --git-dir /opt/git/repositories/NOMEREPOSITORY.git branch --no-colorse tutto va bene dovremmo avere i permessi per visualizzare i branch attivi sul repository.
A questo punto facciamo si che i comandi di git vengano eseguito con il comando sudo andano a modificare il file:
sudo nano /usr/share/redmine/lib/redmine/scm/adapters/git_adapter.rbe sostituiamo la riga:
GIT_BIN="git"con:
GIT_BIN="sudo -u git git"a questo punto andando all'interno della pagina di visualizzazione dei repository potremmo vedere i sorgenti del nostro codice dall'interfaccia web.
Effettivamente andando ad utilizzare Drupal, l'evidenziazione della sintassi per i file module, install e inc non è quella che dovrebbe essere, vengono interpretati come file plain text, anziché come file PHP. Per correggere è sufficiente andare a modificare il file:
sudo nano /usr/share/redmine/vendor/plugins/coderay-0.9.2/lib/coderay/helpers/file_type.rbandando ad aggiungere, all'interno della dichiarazione del della costante TypeFromExt anche le seguenti associazioni:
'module' => :php,
'install' => :php,
'inc' => :php,In questo modo anche l'evidenziazione della sintassi per file module, installa e inc sarà attiva.
Questo è quanto... poterete sbizzarrirvi con gli altri plugin!
Commenti
Invia nuovo commento