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.


Version 2 (Eric Davis, 2013-01-09 12:15 am) → Version 3/23 (Eric Davis, 2013-01-09 12:15 am)

h1. Upgrade

p(info). If you are looking to upgrade from Redmine to ChiliProject, please read [[Migrate From Redmine]].

h2. 1 Check requirements

In order to successfully install and run ChiliProject, make sure you meet the system [[requirements]].

h2. 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]].
* Database

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.

h2. 3 Update the code

The exact process to upgrade the code is different depending on how you have installed the system.

h3. Git clone from the official repository


h3. Zip or Tar archive

h2. 4 Configuration

h3. Server 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.

To change the values, just copy the example file with a command like:

<pre><code>cp <pre><code>
config/configuration.yml.example config/configuration.yml</code></pre> config/configuration.yml

h3. Session storage

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 @config/initializers/session_store.rb@.

<pre><code>rake generate_session_store</code></pre> <pre><code>
rake generate_session_store

h2. 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:

<pre><code>rake <pre><code>
db:migrate RAILS_ENV=production</code></pre> RAILS_ENV=production

h2. 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.

<pre><code>rake <pre><code>
db:migrate_plugins RAILS_ENV=production</code></pre> RAILS_ENV=production

h2. 7 Clean up

Now your code and data is upgraded and you are ready to finish the process by loading the new code.

h3. Clear caches and sessions

In order to make sure old code isn't running you should clear any old caches and sessions.

<pre><code>rake <pre><code>
rake tmp:sessions:clear

h3. 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 @rake@ command to clear all of the logs @rake log:clear@

h3. 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.

h2. 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