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.

Upgrade

Version 4 (Holger Just, 2013-01-09 12:15 am)

1 4 Holger Just
{{>toc}}
2 1
3 4 Holger Just
h1. Upgrading ChiliProject
4 4 Holger Just
5 1
p(info). If you are looking to upgrade from Redmine to ChiliProject, please read [[Migrate From Redmine]].
6 1
7 4 Holger Just
h2. Step 1 - Check requirements
8 1
9 2 Holger Just
In order to successfully install and run ChiliProject, make sure you meet the system [[requirements]].
10 2 Holger Just
11 4 Holger Just
h2. Step 2 - Backup data
12 2 Holger Just
13 2 Holger Just
Always backup you data before any upgrade. You will need to backup:
14 2 Holger Just
15 2 Holger Just
* File uploads - stored in @files/@ or another custom directory as defined in your [[Configuration File]].
16 1
* Database
17 2 Holger Just
18 2 Holger Just
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.
19 2 Holger Just
20 4 Holger Just
h2. Step 3 - Update the code
21 2 Holger Just
22 2 Holger Just
The exact process to upgrade the code is different depending on how you have installed the system.
23 2 Holger Just
24 2 Holger Just
h3. Git clone from the official repository
25 1
26 2 Holger Just
TODO
27 2 Holger Just
28 2 Holger Just
h3. Zip or Tar archive
29 2 Holger Just
30 4 Holger Just
h2. Step 4 - Configuration
31 2 Holger Just
32 2 Holger Just
h3. Server configuration
33 2 Holger Just
34 2 Holger Just
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.
35 2 Holger Just
36 2 Holger Just
To change the values, just copy the example file with a command like:
37 2 Holger Just
38 3 Holger Just
<pre><code>cp config/configuration.yml.example config/configuration.yml</code></pre>
39 2 Holger Just
40 1
h3. Session storage
41 1
42 2 Holger Just
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@.
43 2 Holger Just
44 2 Holger Just
<pre><code>rake generate_session_store</code></pre>
45 1
46 4 Holger Just
h2. Step 5 - Database update
47 2 Holger Just
48 2 Holger Just
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:
49 3 Holger Just
50 1
<pre><code>rake db:migrate RAILS_ENV=production</code></pre>
51 2 Holger Just
52 4 Holger Just
h2. Step 6 - Plugin Database update
53 2 Holger Just
54 1
Core and third party plugins may include database updates too so you will want to run the following command to upgrade them also. 
55 2 Holger Just
56 3 Holger Just
<pre><code>rake db:migrate_plugins RAILS_ENV=production</code></pre> 
57 2 Holger Just
58 4 Holger Just
h2. Step 7 - Clean up
59 2 Holger Just
60 2 Holger Just
Now your code and data is upgraded and you are ready to finish the process by loading the new code.
61 2 Holger Just
62 2 Holger Just
h3. Clear caches and sessions
63 2 Holger Just
64 2 Holger Just
In order to make sure old code isn't running you should clear any old caches and sessions.
65 2 Holger Just
66 3 Holger Just
<pre><code>rake tmp:cache:clear
67 2 Holger Just
rake tmp:sessions:clear
68 2 Holger Just
</code></pre>
69 2 Holger Just
70 2 Holger Just
h3. Clear logs (optional)
71 2 Holger Just
72 1
If you are not rotating your log files automatically, it would be a good time to clear your log files.
73 2 Holger Just
74 2 Holger Just
# Backup your existing log files if you want to save them, @cp -a log/*.log /some/safe/archiving_place/@
75 2 Holger Just
# Run the @rake@ command to clear all of the logs @rake log:clear@
76 2 Holger Just
77 2 Holger Just
h3. Application Server restarts
78 2 Holger Just
79 2 Holger Just
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.
80 2 Holger Just
81 4 Holger Just
h2. Step 8 - Final check
82 2 Holger Just
83 2 Holger Just
Now your ChiliProject is upgraded and running. You should login as an Administrator and do a few quick checks:
84 2 Holger Just
85 2 Holger Just
* Visit "Admin > Information"
86 2 Holger Just
** Make sure that the version has been updated.
87 2 Holger Just
** Make sure that all of the required options are green.
88 2 Holger Just
* Visit "Admin > Settings"
89 2 Holger Just
** Check all of the tabs for any new options and set them as needed.
90 2 Holger Just
* Visit "Admin > Roles & Permisisons"
91 2 Holger Just
** Check for any new permissions and configure them for your system