A "Migráció Atlassian környezetbe?" egy cikksorozat, mely egy tipikus ügyfélprojekt témakörét öleli fel: adat és üzleti logika migráció egy adott megoldásból Atlassian környezetbe. A váltás okai, és a forrás rendszerek, melyből a migrációt elvégeztük nagyon különbözőek lehetek, ezért igyekszünk annyi esettanulmányt összegyűjteni, amennyit csak lehetséges. Olvasson tovább, hogy megismerhesse azokat trükköket, tippeket, melyekkel sokkal egyszerűbbé válhat egy-egy migrációs projekt.
A forrás rendszerről
„A Redmine egy flexibilis projekt menedzsment webalkalmazás, melyet Ruby on Rails keretrendszerben írtak. Platform és adatbázis független.”
Szempont |
Redmine |
---|---|
Felhasználási terület |
Projekt menedzsment |
1. kiadott verzió |
2006.06.25. |
Jelenlegi verzió (kiadás dátuma) |
3.2.0 (2015.12.06) |
Licence |
|
Költségek 500 felhasználóra |
Free |
Keretrendszer |
Ruby on Rails |
Platform |
Felhőben és helyben telepített verzióban is elérhető |
Weboldal |
|
Készítő(k) |
|
Demo oldal |
|
Kiegészítők |
http://www.redmine.org/plugins (729 kiegészítő érhető el) http://www.redmine.org/projects/redmine/wiki/ThirdPartyTools |
A váltás okai
Az ügyfelünk már korábban elkezdte használni a Confluence-t belső tudásbázis építésre, és dokumentum tárolásra. Az integráció lehetősége a JIRA és a Confluence között erős ütőkártyának bizonyult, de az igazi okok a rugalmasság és az extra funkciók voltak, melyek a váltással elérhetővé váltak.
A korábbi, Redmine-os megoldást az alábbi szempontok miatt tartották kényelmetlennek:
- egyre szofisztikáltabb jogosultsági rendszerre volt szükségük
- mely a JIRA-ban a biztonsági és jogosultsági sémákkal könnyen megvalósítható
- e-mail kollaborációt szerettek volna megvalósítani a feladatoknál
- JIRA Email This Issue (JETI) egy nagyon hatékony eszköz, mely sikeresen kielégítette az összes felmerült igényt
- a havi jutalmazási rendszer a lejelentett munkaidő alapján került kiszámításra, ezért egyre komolyabb igényeik merültek fel a munkaidő jelentéssel kapcsolatban
- A JIRA Timesheet and Reports Gadget, és a későbbiekben Tempo termékcsalád gazdag funkciói megfeleltek az elvárásoknak
A migráció folyamata
A migráció jelentős része 6 egyszerű lépéssel volt megvalósítható. A JIRA Importers Plugin (vagyis JIM, ahogy gyakran emlegetik) a JIRA Redmine Importer plugin segítségével egy nagyon hatékony megoldás, kifejezetten egyszerű felhasználói felülettel megtámogatva. (Adatbiztonsági okokból néhány kép az alábbiak közül pusztán minta, nem az ügyfél éles rendszerében készültek)
- A kapcsolati adatok megadása
- Projektek összerendelése
- Egyedi mezők beállításai
- Mezők beállításai
- Értékek összerendelése
- Feladatok közötti kapcsolatok megadása
Nehézségek és megoldások
Több projektről egybe
Ügyfelünk rengeteg projektet használt a Redmine rendszerben, de úgy döntött, hogy az összes migrálandó feladatot egyetlen JIRA projektben szeretné kezelni. Szerencsére a migráció során megadható minden egyes forrás projekt esetében, hogy mi legyen a cél projekt, így ez a kérés könnyen megoldható volt.
Letiltott felhasználók
A teszt migráció során a napló információkban az alábbihoz hasonló bejegyzéseket találtunk:
2015-08-05 10:14:27,489 WARN - Commenter named l***a.o***z not found. Creating issue with currently logged in user instead |
Gyors utánajárás után rájöttünk, hogy a figyelmeztetés oka az volt, hogy a felhasználó a Redmine-ben már le volt tiltva. Az export idejére engedélyeztük, mely szerencsére megoldotta a problémát.
A JIM (JIRA Importers Plugin) napló bejegyzések nagyon részletesek, és hasznos információval szolgálnak egy migrációs projekt során, talán ez a termék egyik nagy erőssége (ahogy az alábbi példában látható).
Az első teszt migráció
2015-08-05 12:56:29,826 INFO - Import started by admin using com.atlassian.jira.plugins.importer.redmine.RedmineDataBean 2015-08-05 12:56:29,850 INFO - ------------------------------ 2015-08-05 12:56:29,850 INFO - Importing: Users 2015-08-05 12:56:29,850 INFO - ------------------------------ 2015-08-05 12:56:29,850 INFO - Only new items will be imported …. 2015-08-05 12:59:00,807 INFO - 48 users associated with import. 47 new users were created and imported as active. 2015-08-05 12:59:00,807 INFO - ------------------------------ 2015-08-05 12:59:00,807 INFO - Finished Importing : Users 2015-08-05 12:59:00,807 INFO - ------------------------------ |
Egy újabb migrációs próbálkozás során, amikor nem töröltük a már létrehozott felhasználókat (pusztán az adatmigráció tesztelésekor)
2015-08-06 16:08:09,563 INFO - Import started by admin using com.atlassian.jira.plugins.importer.redmine.RedmineDataBean 2015-08-06 16:08:09,573 INFO - ------------------------------ 2015-08-06 16:08:09,573 INFO - Importing: Users 2015-08-06 16:08:09,573 INFO - ------------------------------ 2015-08-06 16:08:09,573 INFO - Only new items will be imported 2015-08-06 16:09:54,264 INFO - 48 users associated with import. 0 new users were created and imported as active. 2015-08-06 16:09:54,264 INFO - ------------------------------ 2015-08-06 16:09:54,264 INFO - Finished Importing : Users 2015-08-06 16:09:54,264 INFO - ------------------------------ |
Hiba a többszörös felhasználó választó mező migrálásakor
Volt egy többszörös felhasználó választó mező a Redmine rendszerben, melyet "Résztvevők"-nek neveztek el. Sajnos a migráció során felhasználói nevek vagy azonosítók helyett azonosíthatatlan számsorozatok kerültek a mezőbe. Bejelentettük a hibát az Atlassian felé, akik viszont sajnos nem tudták ezt reprodukálni. Az ügyfelünk viszont - biztonsági szabályok miatt - nem engedélyezte a távoli belépést az Atlassian részére, így nem sikerült megoldani ezt a problémát. A fentiek fényében nem maradt más hátra, mint a migrációt követően kézzel pótolni ezeket a hiányosságokat.
Redmine és kiegészítők frissítése
Ahogy a dokumentációban is olvashatjuk, nagyon fontos a megfelelő verzió számok ellenőrzése mind a Redmine, mind a JIRA migrációs kiegészítők tekintetében.
- Bizonyosodjon meg arról, hogy a Redmine legalább 1.3.0+ vagy 2.0+. verzióval rendelkezik.
- Bizonyosodjon meg arról, hogy legalább az 5.0.2-es JIRA Importers Plugin van telepítve
- Engedélyezze a REST web szolgáltatásokat a Redmine Administration > Settings > Authentication > Enable REST webservice beállításával
Első alkalommal mi elfelejtettük, és tanúsíthatjuk, hogy tényleg nem működött, kénytelenek voltunk frissíteni a Redmine-t még a végső lekapcsolás előtt :)
Tanulságok
- Nagyon hasznos napló információk - a hibakeresés sokkal egyszerűbb a naplóbejegyzések elolvasása után
- Az adatok többsége egyszerű lépésről-lépésre követhető megoldás segítségével migrálható, így nem kell tartani a feladattól
- Nem csak Redmine-ből ilyen könnyű migrálni, (Trac, Rally, Asana, Bugzilla, …), érdemes a lehetőségeket áttekinteni
További részletek
Amennyiben további részletek iránt érdeklődik, az alábbi rövid előadás keretében megismerheti a projektet. A felvétel a 2. Magyar Atlassian Meetupon készült.