Redmine - це вільна (free as freedom) система для управління проектами та відстеження помилок. Написаний на Ruby on Rails Вихідний код поширюється під GNU GPL ліцензією.
Ми використовуємо Redmine для управління проектами більше двох років. За цей час в системі набралося 80ть проектів і півсотні користувачів.
Установка Redmine на Ubuntu 10.04 Server
Ставимо необхідні пакети:
Інсталяційні скрипти пропонують налаштувати пакет:
Вибираємо з якою СУБД буде працювати Redmine:
Вводимо пароль адміністратора MySQL і пароль доступу до БД самого Redmine:
Якщо після цього порівняння таблиць виставляється в latin1_swedish_ci (або в будь-яку іншу систему кодування відмінну від utf8_general_ci) додаємо в /etc/mysql/my.cfg в секцію mysqld директиву collation-server = utf8_general_ci і character-set-server = utf8. Після чого видаляємо повністю БД і створюємо нову базу Redmine з порівнянням utf8_general_ci. Тепер розгортаємо нову базу Redmine:
Після чого у нас будуть всі таблиці в utf8_general_ci і з кирилицею не буде ніяких проблем.
Налаштування mod-passenger
Mod Passenger використовується для зв'язки веб сервера Apache і додатків написаних на Ruby On Rails.
З його допомогою Apache може працювати як веб сервер для ROR додатків.
Завантажуємо модуль Apache:
Налаштовуємо vhost для Redmine:
Налаштування SVN сховищ і їх інтеграція з Redmine
Redmine здатний відображати зміни в сховище, вести лог активності, малювати графіки за кількістю комита в сховище. Так само Redmine може керувати правами доступу до сховищ на основі своїх користувачів і їх підписок до проектів, автоматично створювати сховища для нових проектів.
Встановимо необхідні пакети:
Завантажимо всі необхідні модулі Apache:
Далі додамо один рядок в конфіг модуля:
Налаштуємо vhost для svn:
Автоматичне створення SVN сховищ для проектів
Для цього завдання є скрипт /usr/share/redmine/extra/svn/reposman.rb. Він при запуску звіряє створені проекти в Redmine і існуючі svn сховища. І якщо є проект для якого немає сховища - він створить його. Для того щоб це запрацювало потрібно прописати запуск reposman.rb в crontab:
Опис аргументів скрипта: