Git. Fantasztikus. Elég nagy szarban lennénk nélküle.
Viszont kell neki valami webes frontend. Összehakkoltam egy elég
kezdetlegeset, egy régebbire alapozva. Viszont ez édeskevés. Egyik legfontosabb eleme egy munkafolyamatnak a konkrét tennivalók, feladatok kezelése, kiosztása, felügyelete, stb.. ehhez meg kezdett nagyon szűkös lenni a Google Spreadsheets.
A
z8.hu kapitányával terveztünk valami szépet, jót, mint a
launchpad, persze git alapon. Aztán nem lett belőle semmi. (Ejnye!)
Nemrég felfedeztem a
Chaw nevű kezdeményezést (igen,
redditen, hol máshol?) De nem tudtam működésre kényszeríteni (még). Pedig ígéretesnek látszik. Főleg, hogy PHP alapú az egész. A CakePHP frameworkre épül, és a ha jól
látom, akkor 4 éven át vezető programozója kezdett bele.
Aztán végül szembejött a
Redmine. Egy Ruby on Rails alapú project manager eszköz. Régebben már találkoztam vele, de elvetettem, mert Ruby. És alapvetően PHP-t akarok, hogy ne kelljen hat dinamikus nyelvű sárkányságokat egy helyre költöztetni. (Mert ugye az alap, hogy egy Apache mögül kuksolnak kifele.)
Redmine viszonylag fájdalommentesen felment. (
Install guide) Kell hozzá Ruby1.8.7, sima ügy,
sudo apt-get install ruby1.8 ruby1.8-dev
(a -dev kell, ha akarunk Ruby/MySQL-gemet fordítani)
sudo apt-get install rails rake
Elvileg lehetne a gem-eket apt-vel menedzselni. De .. valahogy nem babráltam vele.
sudo gem install mysql
Ruby-Webszervernek a
thin tűnik a legjobbnak,
ez alapján nem volt vészes összedobni az apache conf-ba:
ProxyRequests Off
ProxyPass /red balancer://thinservers/red
ProxyPassReverse /red balancer://thinservers/red
ProxyPreserveHost on
<Proxy balancer://thinservers>
BalancerMember http://127.0.0.1:3000
BalancerMember http://127.0.0.1:3001
BalancerMember http://127.0.0.1:3002
</Proxy>
Ehhez kellett mod_proxy-t forgatni gyorsan. (
./config.nice --enable-proxy --enable-proxy-http --enable-proxy-balance) Mivel LTS Ubuntu van a mudkipen, ezért kézzel csinálós rajta az apache. (Nem lenne muszáj, nem ajánlom. Pokol, kínok és szenvedés vár azokra, akik követnek.)
sudo gem install thin
sudo ln -s /var/lib/gems/1.8/bin/thin /usr/bin/thin
Illetve két kis thin scriptet: (start.sh meg stop.sh, a redmine könyvtárából indítva persze):
#!/bin/sh
thin -e production -p 3000 --servers 3 start --prefix=/red
#!/bin/sh
thin --servers 3 stop