Why Redmine ?
When starting a new project, it's alway useful to have a way of taking notes, keeping track of tasks to be done and having of way of prioritising them. In that respect, Redmine is an ideal tool in that it is :
- Very user friendly: I've already deployed it in multiple organisations and users have been able to start using it with litteraly no training.
- Easily customised: Redmine allows each project to have it's own workflows, types of tasks or data fields to be filled in
- A full set of tools: out of the box, Redmine allows tasks & files management, Wiki pages & GANTT setup, time tracking and repository integration on a per project basis
- Plugins: having existed for so long, many usefull plugins exist in the "Official plugin directory"
- Interconnectivity: API allow users to set up their own automation or use existing plugins available from other tools such as Zabbix for monitoring or Gitlab. Check the official supported "Third party Tools" page for more information.
- Official website: https://redmine.org/
- Repositories: https://www.redmine.org/projects/redmine/repository
- Docker images: https://hub.docker.com/_/redmine/
We’ve got the pros, what are the cons?
It's a Ruby on Rails based application with makes it very flexible but also very tricky to customise using plugins since each plugin will have it's own requirements in Ruby, Rails or GEM versions.
When setting up Redmine 4.1.1 in late 2020, the latest Ruby version was 3.1.3 but the default version packaged for Ubuntu was 3.0.5 and neither were properly supported by Redmine in my configuration, forcing me to downgrade to Ruby 2.7.X.
Fair enough: Ruby 2.7.7 had been release along 3.0.5 and 3.1.3 so no issue, right ?
Wrong : 2.7.7 had bugs, making it unusable and forcing an extra downgrade to 2.7.6. and adding an extra day of work
This also makes the version upgrade process delicate seeing as upgrading 1 brick of the system might require upgrading the others or not. And once setup and in use, it is quite likely plugins will be used and you will find that there are errors due to plugins requiring different versions of the same GEM. Most issues can be sorted pretty simply but it does make for longer maintenance.