Ruby versions (updating)
>> Switch to Docker to never have to worry about Ruby again<<
Otherwise, read on...
Ruby is a prerequisite to run Easy Redmine. It is a maintained and continuously updated programming language. Which means that once in a while you will need to update your Ruby in order to be able to use new versions of Easy Redmine. The current supported Ruby version is always listed in Software requirements table.
Updating Ruby has consequences, which is why we are presenting you some guidelines, so you don't forget about any related change in your configurations.
The most common problem is that server doesn't start after Ruby update.
This guideline is provided with examples from VMs provided by Easy Software - always verify the steps before performing on your own server.
0/ Create backup
1/ Upgrade ruby (using rvm):
sudo rvm get head
sudo rvm install ruby-3.3.4-railsexpress
rvm use --default ruby-3.3.4-railsexpress
Make sure you are using a compatible version, see our system requirements.
2/ Install bundler:
gem install bundler
3/ Go to application root directory and install gems:
cd APPLICATION_ROOT
bundle update
4/ Install Easy Redmine:
rake easyproject:install RAILS_ENV=production
5/ You may also need to change the ruby version in a startup script.
The configuration should be in paths (depends on version of your VM, OS, etc):
/etc/systemd/system/sidekiq@appname.service.requires/puma@appname.service
/etc/systemd/system/easy.service
Example:
...
[Service]
Type=simple
User=easy
WorkingDirectory=/srv/easyredmine/public_html
Environment=RAILS_ENV=production
PIDFile=/srv/easyredmine/run/application.pid
ExecStart=/bin/bash -lc 'bundle exec puma -C /home/easy/puma.rb -e production'
...
Change the ruby version or use "default", save it and then restart the service.
If it still doesn't work, contact support and send us puma.err (puma's error log) and production.log