FrRedmineUpgrade » History » Version 11

Pierre Labrie, 2012-09-21 21:12

1 1 Fabrice Phung
h1. Mise à jour
2 1 Fabrice Phung
3 5 yannick quenec'hdu
{{>toc}}
4 2 yannick quenec'hdu
5 5 yannick quenec'hdu
h2. Étape 1 - Vérifier les pré-requis
6 1 Fabrice Phung
7 7 yannick quenec'hdu
La première étape pour la mise à jour de Redmine est de vérifier que vous remplissez les [[FrRedmineInstall#Exigence|exigences]] de la version que vous vous apprêtez à installer.
8 1 Fabrice Phung
9 5 yannick quenec'hdu
h2. Étape 2 - Sauvegarde
10 1 Fabrice Phung
11 8 yannick quenec'hdu
Il est recommandé de [[FrRedmineInstall#Sauvegarde|sauvegarder]] vos données et vos fichiers. La plupart des mises à jour sont sans danger, mais il est toujours prudent de réaliser une sauvegarde dans le cas contraire.
12 1 Fabrice Phung
13 5 yannick quenec'hdu
h2. Étape 3 - réaliser la mise à jour
14 5 yannick quenec'hdu
15 5 yannick quenec'hdu
Le processus de mise à jour est dépendant de la manière que vous avez téléchargé Redmine. Vous avez besoin de réaliser seulement une des options suivantes :
16 5 yannick quenec'hdu
17 5 yannick quenec'hdu
h3. Option 1 - Mettre à jour depuis une version téléchargée (fichier tar.gz ou zip)
18 5 yannick quenec'hdu
19 5 yannick quenec'hdu
1. Décompresser la nouvelle archive du programme dans un nouveau répertoire.
20 5 yannick quenec'hdu
21 9 Pierre Labrie
2. Copiez vos paramètres de base @config/database.yml@ dans le nouveau répertoire de configuration @config@. Si vous utilisez Redmine >=1.4 avec MySql et Ruby 1.9, changez l'adapteur pour _mysql2_.
22 5 yannick quenec'hdu
23 9 Pierre Labrie
3a. Copiez vos paramètres de configuration @config/configuration.yml@ dans le nouveau répertoire de configuration @config@.
24 5 yannick quenec'hdu
25 9 Pierre Labrie
3b. Si vous migrez depuis une version plus vielle qe 1.2.0, copiez vos configurations de courriel de votre @config/email.yml@ dans le nouveau @config/configuration.yml@ dont l'exemple peut être copié du fichier @configuration.yml.example@.
26 1 Fabrice Phung
27 9 Pierre Labrie
4. Copiez le contenu de @RAILS_ROOT/files@ dans le répertoire de votre nouvelle installation
28 1 Fabrice Phung
29 9 Pierre Labrie
5. Copiez le répertoire contenant vos plugin personnalisé de votre répertoire @vendor/plugins@ dans le répertoire @plugins@ de votre nouvelle installation ( si vous migrez d'une version antérieure à 2.0.0 vers une version >= 2.0.0). Assurez-vous de ne copier que les plugins différents de l'installation originale de Remine de votre précdente installation.
30 9 Pierre Labrie
31 1 Fabrice Phung
6. Exécturer les commandes suivantes depuis le répertoire Redmine de votre nouvelle installation
32 5 yannick quenec'hdu
33 9 Pierre Labrie
<pre>
34 9 Pierre Labrie
rake config/initializers/session_store.rb
35 9 Pierre Labrie
</pre>
36 5 yannick quenec'hdu
37 9 Pierre Labrie
Si vous utilisez une nouvelle version de Redmine, les fichiers indiqués au dessous n'existent pas encore. Pour ces versions, exécuter :<pre>
38 9 Pierre Labrie
rake generate_session_store
39 9 Pierre Labrie
</pre>
40 5 yannick quenec'hdu
41 5 yannick quenec'hdu
Cette commande va générer un fichier (@config/initializers/session_store.rb@) avec un secret aléatoire utilisé pour sécuriser les données de session.
42 5 yannick quenec'hdu
43 5 yannick quenec'hdu
7. Vérifier pour tous les thèmes que vous possédez que vous pouvez les installer dans le répertoire "public/themes". Vous pouvez les copier, mais il est préférable de vérifier qu'il y a une version mise à jour.
44 5 yannick quenec'hdu
45 6 yannick quenec'hdu
TRÈS IMPORTANT : Ne pas écraser le fichier config/settings.yml avec l'ancienne version
46 5 yannick quenec'hdu
47 1 Fabrice Phung
h3. Option 2 - Mettre à jour depuis un checkout SVN  [[FrRedmineRepositories|Dépot]]
48 1 Fabrice Phung
49 5 yannick quenec'hdu
1. Allez dans le répertoire racine de Redmine et exécutez la commande suivante:
50 5 yannick quenec'hdu
51 5 yannick quenec'hdu
  <pre>
52 1 Fabrice Phung
svn update
53 1 Fabrice Phung
</pre>
54 5 yannick quenec'hdu
55 1 Fabrice Phung
56 10 Pierre Labrie
2. Si vous faites une mise à jour depuis une ancienne version vers la 0.8.7 ou supérieur (depuis une version du trunk jusqu'à r2493 ou plus), vous devez générer un secret pour le stockage des cookies. Voyez la note à la fin pour la génération de l'entrepot de session.
57 7 yannick quenec'hdu
58 5 yannick quenec'hdu
h2. Étape 4 - Mise à jour de la base de données
59 5 yannick quenec'hdu
60 1 Fabrice Phung
Cette étape va modifier le contenu de la base de données. Allez dans le répertoire de votre nouvelle installation de Redmine et effectuez la commande suivante :
61 5 yannick quenec'hdu
62 1 Fabrice Phung
<pre>
63 1 Fabrice Phung
rake db:migrate RAILS_ENV=production 
64 5 yannick quenec'hdu
</pre>
65 1 Fabrice Phung
66 11 Pierre Labrie
Si vous avez installé des plugin, vous devrez effectuer une migration de la base de données. Effectuer la commande suivante :
67 1 Fabrice Phung
68 5 yannick quenec'hdu
<pre>
69 11 Pierre Labrie
rake redmine:plugins:migrate RAILS_ENV=production 
70 1 Fabrice Phung
</pre>
71 1 Fabrice Phung
72 11 Pierre Labrie
Ou pour Windows:
73 11 Pierre Labrie
74 1 Fabrice Phung
<pre>
75 11 Pierre Labrie
set RAILS_ENV=production
76 11 Pierre Labrie
rake db:migrate  
77 11 Pierre Labrie
</pre>
78 11 Pierre Labrie
79 11 Pierre Labrie
<pre>
80 11 Pierre Labrie
set RAILS_ENV=production
81 11 Pierre Labrie
rake redmine:plugins:migrate  
82 5 yannick quenec'hdu
</pre>
83 1 Fabrice Phung
84 5 yannick quenec'hdu
h2. Étape 5 - Nettoyage 
85 1 Fabrice Phung
86 5 yannick quenec'hdu
1. Vous devez nettoyer le cache et les sessions existantes, pour ce faire, exécuter les commandes suivantes :
87 5 yannick quenec'hdu
88 5 yannick quenec'hdu
<pre>
89 5 yannick quenec'hdu
rake tmp:cache:clear
90 1 Fabrice Phung
rake tmp:sessions:clear
91 5 yannick quenec'hdu
</pre>
92 1 Fabrice Phung
93 5 yannick quenec'hdu
2. Redémarrez l'application (ex : mongrel, thin, passenger) 
94 1 Fabrice Phung
95 1 Fabrice Phung
3. Finalement, lancez votre navigateur et allez dans_"Administration -> Rôles & permissions"_ pour vérifier et/ou paramétrer les permissions sur les nouvelles fonctionnalités, s'il y en a.