Logo Redmine

Redmine – správa projektu

Redmine je pravděpodobně jeden z nejlepších volně dostupných nástrojů pro správu projektů. Svými vlastnostmi se hodí spíš do menších a středních firem. Umožňuje snadno spravovat úkoly na projektech, evidovat a také vykazovat spotřebovaný čas jednotlivých pracovníků. Aplikace je přístupná přes webové rozhraní.

Ukázka webového rozhraní – log aktivit na projektu:

Webove rozhrani Redmine

Výpis úkolů evidovaných k projektu:

Ukoly

Instalace a nastavení Redmine

Redmine jsem instaloval na server s Linuxem – distribuce CentOS 5 a později i verze 6. Také jsem prováděl instalaci na MacOS X 10.7 na kterém jsem prováděl vývoj pro Redmine.

Přímo na webu www.redmine.org je k dispozici podrobný návod jak nastavit Phusion Passenger a Apache 2 pro běh Redmine. Rozcestník návodů je na adrese http://www.redmine.org/projects/redmine/wiki/HowTos

Po dokončení instalace probíhá nastavení Redmine přes webové administrátorské rozhraní. Ukázka nastavení oprávnění pro roli Vývojář, kterou používáme pro snadnější přidělení práv uživatelům na projektech:

Admin rozhrani

Zajímavou vlastnotí Redmine je i možnost propojení s verzovacím systémem. Přímo v admin rozhraní uvidíte co je na vašem serveru podporované (tj. který nástroj je nainstalován v operačním systému):

Nastaveni repo

Připojení GIT repozitáře do Redmine

SVN repozitory můžete k projektu naklikat přes webové rozhraní, ale u GITu to chce trošku zapracovat v konzoli. Proto sem hodím stručný postup jak na to (a jak to používáme i my).

GIT máme na stejném serveru jako je Redmine, ale každý běží pod jiným uživatelem. Redmine tak nemůže sám sáhnout do repozitory gitu, protože mu v tom brání nastavení práv. Klonuji tedy git repo jen pro účely Redmine tak aby se k souborům Redmine dostal po každém pushnutí na server.

Aby vše fungovalo je vhodné nastavit správně SUDO – uživatel gitolite může spouštět skript /usr/local/sbin/redmine-git-fetch jako uživatel redmine bez nutnosti zadávat heslo.

Konfigurace v /etc/sudoers:

Cmnd_Alias REDMINECMD = /usr/local/sbin/redmine-git-fetch
User_Alias GITUSER = gitolite
GITUSER ALL = (redmine:weby) NOPASSWD: REDMINECMD

Vytvořil jsem adresář kam budu klonovat repozitory pro Redmine /data/redminerepos s vlastníkem redmine:weby.

Naklonoval jsem repository, které chci zpřístupnit v Redmine:

# cd /data/redminerepos
# git clone --bare gitolite@localhost:czechidm.git
# cd czechidm.git
# git remote rm origin
# git remote add origin gitolite@localhost:czechidm.git
# chown -R redmine:weby czechidm.git

V repository GITu ze kterého jsem klonoval data jsem přidal post-receive hook:

sudo -u redmine /usr/local/sbin/redmine-git-fetch /data/redminerepos/czechidm.git
/usr/bin/wget --no-check-certificate "https://localhost/sys/fetch_changesets?key=NEJAKEIDZREDMINE&id=czechidm" -O /dev/null 1>/dev/null 2>&1

Daný skript (post-receive hook) spustí nejdřív skriptík občerstvující data v repozitáři pro Redmine a následně zavolá Redmine aby si načetl změny. Vaše ID pro volání webové služby občerstvující údaje v Redmine najdete v administračním rozhraní.

Skript /usr/local/sbin/redmine-git-fetch:

#!/bin/bash
cd $1 && /usr/bin/git fetch >/dev/null 2>&1 && /usr/bin/git reset --soft refs/remotes/origin/master >/dev/null 2>&1

Pluginy, které musíte mít

Redmine se snadno rozšiřuje o nové funkce – stačí nainstalovat a případně lehce nakonfigurovat plugin. Adresář pluginů je k nalezení na webu Redmine Plugins Directory. Postup jak nainstalovat plugin je popsán v Redmine wiki.

Timesheet Plugin

Timesheet plugin přidává do Redmine přehled o vyčerpaném čase na všech projektech. Výsledkný report umožňuje seskupit podle projektů, uživatelů nebo úkolů.

Spolu s Budget pluginem je to pro nás jeden z nejdůležitějších pluginů v Redmine. Ke stažení je na webu https://projects.littlestreamsoftware.com/projects/redmine-timesheet

Timesheet

Rate

Plugin pro nastavení hodinové sazby u každého uživatele Redmine, je možné nastavit sazbu i pro konkrétní projekt. Plugin drží historii, takže změna sazby nezmění již vykázané částky u starších prací.

Plugin je ke stažení na webu https://projects.littlestreamsoftware.com/projects/redmine-rate

 

Budget

Budget plugin usnadňuje sledování čerpání peněz na projektu. Projekt lze rozdělit na samostatné části, dejme tomu, že je nazveme „dodávkami“. Každý ticket je možné přiřadit konkrétní dodávce zákazníkovi (přiřazení lze provést i hromadně „importem“ úkolů zařazených ke konkrétní verzi).

Ke screenshotu – pro Budget plugin zatím nemáme nasazenou českou lokalizaci.

Zdroj pluginu: https://projects.littlestreamsoftware.com/projects/redmine-budget

Budget

Redmine ChangeAutor Plugin

Pokud někdo přijímá hlášení od zákazníka o chybě telefonicky, tak ho rovnou zapíše do Redmine. V takovém případě se hodí aby se autorem záznamu (ticketu) stal zákazník. Tento plugin umožňuje snadno změnit vlastníka ticketu.

Zdroj pluginu: https://github.com/fragtom/Redmine-Changeauthor-Plugin

Changeautor

Redmine Auto Done 100%

Docela často se stane, že někdo zavře ticket s tím, že je vyřešen, ale nevyplní správně procenta na kolik je vyřešen (když je zavřen tak už na 100%), tento plugin to dělá automaticky.

Zdroj pluginu: https://github.com/wadewomersley/redmine-auto-percent

Tip na závěr

Pokud používáte RSS čtečku, tak je možné odebírat log aktivit a některé další generované výpisy přes Atom feed. Na stránce s výpisem najdete odkaz na Atom feed, který funguje i bez nutnosti přihlášení uživatele k Redmine (obsahuje pro daného uživatele vygenerované autorizační id). Odběrem získáte snadný přehled o důležitých událostech na projektu aniž byste museli číst každý email nebo se přihlašovat do Redmine.