ChiliProject is not maintained anymore. Please be advised that there will be no more updates.
We do not recommend that you setup new ChiliProject instances and we urge all existing users to migrate their data to a maintained system, e.g. Redmine. We will provide a migration script later. In the meantime, you can use the instructions by Christian Daehn.
If you are looking to upgrade from Redmine to ChiliProject, please read Migrate From Redmine.
Step 1 - Check requirements¶
In order to successfully install and run ChiliProject, make sure you meet the system requirements.
Step 2 - Backup data¶
Always backup you data before any upgrade. You will need to backup:
- File uploads - stored in
files/or another custom directory as defined in your Configuration File.
For major upgrades (1.1.0 to 2.0.0) or migrations from another system it is also recommended that you backup your entire installation directory too.
Step 3 - Update the code¶
The exact process to upgrade the code is different depending on how you have installed the system.
Git clone from the official repository¶
If you have a clone of the official repository, "gitting" the latest code is quite easy.
If you have made code changes to your ChiliProject, you will need to use
git merge in order to keep them.
Upgrade to an official tagged release¶
Assuming you are following the releases and want to get the official 1.1.0 release:
git fetch origin # Grabs the latest official code git checkout origin/v1.1.0 # Checks out the v1.1.0 tag version
Upgrade to an official branch¶
If you want to follow an official branch in order to get updates more often than the official releases, you can just change what version to merge in your git command. Make sure to read ChiliProject Repository to see the branch names, how stable they are, and what you can expect.
git fetch origin # Grabs the latest official code git checkout origin/master # Checks out the master branch, which will become the "next-release"
Zip or Tar archive¶
Step 4 - Configuration¶
ChiliProject has a system configuration file that is used to configure various options for your server. There are good defaults for most of the values but take a look at the Configuration File page to see if you want to change anything.
If you want to setup a new configuration file just copy the example file with a command like:
cp config/configuration.yml.example config/configuration.yml
Next you should generate a session storage file. This is a small bit of code that is used to encrypt ChiliProject's login cookies. To generate it, run the following command. It should save a file in
Step 5 - Database update¶
Next you will need to run the
rake command to upgrade the schema and contents of your database. Go to the directory of your ChiliProject install and run:
rake db:migrate RAILS_ENV=production
Step 6 - Plugin Database update¶
Core and third party plugins may include database updates too so you will want to run the following command to upgrade them also.
rake db:migrate_plugins RAILS_ENV=production
Step 7 - Clean up¶
Now your code and data is upgraded and you are ready to finish the process by loading the new code.
Clear caches and sessions¶
In order to make sure old code isn't running you should clear any old caches and sessions.
rake tmp:cache:clear rake tmp:sessions:clear
Clear logs (optional)¶
If you are not rotating your log files automatically, it would be a good time to clear your log files.
- Backup your existing log files if you want to save them,
cp -a log/*.log /some/safe/archiving_place/
- Run the
rakecommand to clear all of the logs
Application Server restarts¶
Next the application servers should be restarted so the new code is loaded. The application servers are processes like mongrel, thin, or passenger. You do not need to reboot the entire server.
Step 8 - Final check¶
Now your ChiliProject is upgraded and running. You should login as an Administrator and do a few quick checks:
- Visit "Admin > Information"
- Make sure that the version has been updated.
- Make sure that all of the required options are green.
- Visit "Admin > Settings"
- Check all of the tabs for any new options and set them as needed.
- Visit "Admin > Roles & Permisisons"
- Check for any new permissions and configure them for your system