Wiki » Historique » Version 38
  Patrice Nadeau, 2014-08-19 21:03 
  
| 1 | 13 | Patrice Nadeau | %{font-size:18pt}Redmine% | 
|---|---|---|---|
| 2 | |||
| 3 | 30 | Patrice Nadeau | > Merge du fichier PDF : issue:#13  | 
| 4 | 25 | Patrice Nadeau | |
| 5 | 13 | Patrice Nadeau | ---  | 
| 6 | |||
| 7 | 1 | Patrice Nadeau | {{toc}} | 
| 8 | |||
| 9 | 13 | Patrice Nadeau | h1. Redmine  | 
| 10 | 6 | Patrice Nadeau | |
| 11 | 31 | Patrice Nadeau | Logiciel de gestion de projets, sources, bugs et timeline.  | 
| 12 | Contient un module de Wiki, de fichiers.  | 
||
| 13 | Supporte aussi les systèmes de version de fichier (Git, SVN entre autre).  | 
||
| 14 | Disponible à http://www.redmine.org/projects/redmine/wiki/Download  | 
||
| 15 | |||
| 16 | De base, ne fonctionne pas avec Apache  | 
||
| 17 | Pour une solution possible, voir : http://www.redmine.org/projects/redmine/wiki/HowTo_configure_Apache_to_run_Redmine  | 
||
| 18 | |||
| 19 | Sa principale difficulté d’installation et sa dépendance à Ruby. D’où le but de ce guide.  | 
||
| 20 | Voir aussi :  | 
||
| 21 | * http://bitnami.com/stack/redmine  | 
||
| 22 | * http://www.turnkeylinux.org/redmine  | 
||
| 23 | |||
| 24 | 6 | Patrice Nadeau | h1. Installation  | 
| 25 | |||
| 26 | 32 | Patrice Nadeau | Ce guide documente une installation GNU/Linux avec les version suivantes :  | 
| 27 | * openSUSE 13.1  | 
||
| 28 | * Redmine 2.4.2  | 
||
| 29 | |||
| 30 | 1 | Patrice Nadeau | h2. Prérequis  | 
| 31 | |||
| 32 | 32 | Patrice Nadeau | Un serveur LAMP openSUSE  | 
| 33 | |||
| 34 | Les logiciels suivants :  | 
||
| 35 | |||
| 36 | * libmysqlclient-devel  | 
||
| 37 | * mysql-community-server  | 
||
| 38 | * ruby-2.0  | 
||
| 39 | * ruby20-devel  | 
||
| 40 | * rubygem-bundler  | 
||
| 41 | * rubygem-mysql2  | 
||
| 42 | * rubygem-pg  | 
||
| 43 | * ImageMagick  | 
||
| 44 | * ImageMagick-devel  | 
||
| 45 | * git  | 
||
| 46 | * gcc  | 
||
| 47 | * make  | 
||
| 48 | |||
| 49 | h2. MySQL  | 
||
| 50 | |||
| 51 | Ajout au démarrage automatique et démarrage du service :  | 
||
| 52 | <pre><code class="bash">  | 
||
| 53 | chkconfig -a mysql  | 
||
| 54 | rcmysql start  | 
||
| 55 | </code></pre>  | 
||
| 56 | |||
| 57 | Création de la base de donnés.  | 
||
| 58 | Substituer les items suivants à votre choix :  | 
||
| 59 | * redmine : Usager pour la base de donnés.  | 
||
| 60 | * password : Mot de passe de la base de donnees.  | 
||
| 61 | * db : Nom de la base de donnés.  | 
||
| 62 | |||
| 63 | Lancer MySQL :  | 
||
| 64 | <pre><code class="bash">  | 
||
| 65 | mysql -u root -p  | 
||
| 66 | </code></pre>  | 
||
| 67 | |||
| 68 | Commandes MySQL :  | 
||
| 69 | <pre><code class="sql">  | 
||
| 70 | create database db character set utf8;  | 
||
| 71 | create user 'redmine'@'localhost' identified by 'password';  | 
||
| 72 | grant all privileges on db.* to 'redmine'@'localhost';  | 
||
| 73 | commit;  | 
||
| 74 | quit;  | 
||
| 75 | </code></pre>  | 
||
| 76 | |||
| 77 | 33 | Patrice Nadeau | h2. Redmine  | 
| 78 | 13 | Patrice Nadeau | |
| 79 | 33 | Patrice Nadeau | L’installation sera faite dans _\srv\redmine_  | 
| 80 | <pre><code class="bash">  | 
||
| 81 | cd /srv/  | 
||
| 82 | svn co http://svn.redmine.org/redmine/branches/2.4-stable redmine  | 
||
| 83 | cd redmine  | 
||
| 84 | cp config/database.yml.example config/database.yml  | 
||
| 85 | cp config/configuration.yml.example config/configuration.yml  | 
||
| 86 | mkdir public/plugin_assets  | 
||
| 87 | </code></pre>  | 
||
| 88 | |||
| 89 | Si un usager MySQL autre que _root_ ou mot de passe diffèrent est utilisé :  | 
||
| 90 | Éditer le fichier *config/database.yml*, section *Production* et modifier les lignes :  | 
||
| 91 | * *username*  | 
||
| 92 | * *password*  | 
||
| 93 | |||
| 94 | Éditer le fichier _config/configuration.yml_ et modifier la configuration SMTP.  | 
||
| 95 | |||
| 96 | h2. Ruby  | 
||
| 97 | |||
| 98 | 34 | Patrice Nadeau | Installation des gems de Ruby  | 
| 99 | 1 | Patrice Nadeau | <pre><code class="bash">  | 
| 100 | 34 | Patrice Nadeau | cd redmine  | 
| 101 | gem install bundler  | 
||
| 102 | gem install activerecord-mysql2-adapter  | 
||
| 103 | bundle install --without development test  | 
||
| 104 | 1 | Patrice Nadeau | </code></pre>  | 
| 105 | 34 | Patrice Nadeau | |
| 106 | h2. Initialisation  | 
||
| 107 | |||
| 108 | Création de la cryptographie, de la structure et des donnés de base :  | 
||
| 109 | <pre><code class="bash">  | 
||
| 110 | cd /srv/redmine  | 
||
| 111 | rake generate_secret_token  | 
||
| 112 | RAILS_ENV=production rake db:migrate  | 
||
| 113 | RAILS_ENV=production rake redmine:load_default_data  | 
||
| 114 | </code></pre>  | 
||
| 115 | |||
| 116 | Ouvrir dans le pare-feu :  | 
||
| 117 | * TCP : 3000  | 
||
| 118 | |||
| 119 | Lancer le serveur web (test)  | 
||
| 120 | <pre><code class="bash">  | 
||
| 121 | cd /srv/redmine  | 
||
| 122 | ruby script/rails server webrick -e production  | 
||
| 123 | </code></pre>  | 
||
| 124 | |||
| 125 | A partir d’un navigateur web, se brancher à http://server:3000.  | 
||
| 126 | Utiliser l’usager *admin* avec le mot de passe *admin*.  | 
||
| 127 | Vérifier la configuration dans *Administration*, *Information*.  | 
||
| 128 | 16 | Patrice Nadeau | |
| 129 | 35 | Patrice Nadeau | h2. Transformation en daemon  | 
| 130 | |||
| 131 | Le script original vient de http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_on_openSUSE  | 
||
| 132 | Copier le script dans le fichier */etc/init.d/redmine*  | 
||
| 133 | |||
| 134 | Le modifier de la manière suivante :  | 
||
| 135 | * REDMINE_BIN=/srv/redmine/current/script/rails  | 
||
| 136 | * REDMINE_USER=user  | 
||
| 137 | * Corriger le «typo» à la ligne 73 : $REDMI-NE_BIN -> $REDMINE_BIN  | 
||
| 138 | * Dans la section stop, après la ligne killproc, ajouter *rm $PIDFILE*  | 
||
| 139 | |||
| 140 | Rendre le fichier exécutable, l’ajouter aux services SUSE et l’exécuter au démarrage :  | 
||
| 141 | <pre><code class="bash">  | 
||
| 142 | chmod 0755 /etc/init.d/redmine  | 
||
| 143 | cp -s /etc/init.d/redmine /usr/bin/rcredmine  | 
||
| 144 | chkconfig -a redmine  | 
||
| 145 | </code></pre>  | 
||
| 146 | |||
| 147 | 29 | Patrice Nadeau | h1. Personnalisation  | 
| 148 | 8 | Patrice Nadeau | |
| 149 | 36 | Patrice Nadeau | h2. Ajout d’un logo  | 
| 150 | |||
| 151 | Les informations viennent de : http://www.redmine.org/projects/redmine/wiki/Howto_add_a_logo_to_your_Redmine_banner  | 
||
| 152 | |||
| 153 | Copier le logo dans _/srv/redmine/public/images/logo.png_  | 
||
| 154 | 1 | Patrice Nadeau | |
| 155 | 37 | Patrice Nadeau | Modifier le fichier _/srv/redmine/app/views/layout/base.rhtml.erb_  | 
| 156 | * Ajouter la ligne  | 
||
| 157 | 1 | Patrice Nadeau | <pre><code class="ruby">  | 
| 158 | 37 | Patrice Nadeau | <img src="<%= Redmine::Utils.relative_url_root %>/images/logo.png" style="top-margin: 15px; left-margin: 15px;"/>  | 
| 159 | </code></pre>  | 
||
| 160 | * Si on ne veux plus afficher le titre, mettre en commentaire :  | 
||
| 161 | <pre><code class="ruby">  | 
||
| 162 | 1 | Patrice Nadeau | <!--<h1><%= page_header_title %></h1>-->  | 
| 163 | 37 | Patrice Nadeau | </code></pre>  | 
| 164 | |||
| 165 | Redémarrer Redmine  | 
||
| 166 | <pre><code class="bash">  | 
||
| 167 | rcredmine restart  | 
||
| 168 | 36 | Patrice Nadeau | </code></pre>  | 
| 169 | |||
| 170 | 1 | Patrice Nadeau | h2. Plugins  | 
| 171 | |||
| 172 | 38 | Patrice Nadeau | h3. Extended Fields  | 
| 173 | |||
| 174 | Permet de créer de nouveau champ dans la basse de donnés.  | 
||
| 175 | |||
| 176 | http://www.redmine.org/plugins/extended_fields  | 
||
| 177 | |||
| 178 | Installation :  | 
||
| 179 | <pre><code class="bash">  | 
||
| 180 | cd /srv/redmine  | 
||
| 181 | svn co http://svn.s-andy.com/extended-fields plugins/extended_fields  | 
||
| 182 | rake redmine:plugins:migrate RAILS_ENV=production  | 
||
| 183 | rcredmine restart  | 
||
| 184 | </code></pre>  | 
||
| 185 | |||
| 186 | 4 | Patrice Nadeau | h3. Redmine Rouge  | 
| 187 | 12 | Patrice Nadeau | |
| 188 | 1 | Patrice Nadeau | Permet le support de langage supplémentaire pour l'affichage de la syntaxe d'un code source.  | 
| 189 | 4 | Patrice Nadeau | |
| 190 | 13 | Patrice Nadeau | "Langage supporté":http://rouge.jayferd.us/demo  | 
| 191 | 1 | Patrice Nadeau | |
| 192 | https://github.com/ngyuki/redmine_rouge  | 
||
| 193 | |||
| 194 | <pre>  | 
||
| 195 | <code class="bash">  | 
||
| 196 | cd /srv/redmine/plugins  | 
||
| 197 | git clone https://github.com/ngyuki/redmine_rouge.git  | 
||
| 198 | cd ..  | 
||
| 199 | bundle install  | 
||
| 200 | 2 | Patrice Nadeau | # Relancer redmine  | 
| 201 | rcredmine restart  | 
||
| 202 | 1 | Patrice Nadeau | </code>  | 
| 203 | </pre>  | 
||
| 204 | 5 | Patrice Nadeau | |
| 205 | 22 | Patrice Nadeau | h3. Code Highlight  | 
| 206 | 9 | Patrice Nadeau | |
| 207 | 10 | Patrice Nadeau | http://www.redmine.org/plugins/codehightlight_button  | 
| 208 | 9 | Patrice Nadeau | |
| 209 | Bouton permettant de sélectionner du code et d'activer la syntaxe selon un langage.  | 
||
| 210 | 11 | Patrice Nadeau | >Ne fonctionne pas pour les langages supplémentaires supportées par le « plug-in » _Redmine Rouge_. Voir "ici":https://github.com/mediatainment/redmine_codebutton/issues/2  | 
| 211 | 9 | Patrice Nadeau | |
| 212 | 1 | Patrice Nadeau | Installation  | 
| 213 | <pre><code class="bash">  | 
||
| 214 | 10 | Patrice Nadeau | cd /srv/redmine/plugins  | 
| 215 | git clone https://github.com/mediatainment/redmine_codebutton.git  | 
||
| 216 | cd ..  | 
||
| 217 | rake redmine:plugins  | 
||
| 218 | 9 | Patrice Nadeau | rake redmine:plugins:migrate RAILS_ENV=production  | 
| 219 | 10 | Patrice Nadeau | # Relancer Redmine  | 
| 220 | 1 | Patrice Nadeau | rcredmine restart  | 
| 221 | </code></pre>  | 
||
| 222 | 11 | Patrice Nadeau | |
| 223 | 23 | Patrice Nadeau | h3. Redmine Issue Checklist  | 
| 224 | 11 | Patrice Nadeau | |
| 225 | Extends issues to store checklist items  | 
||
| 226 | |||
| 227 | http://redminecrm.com/projects/checklist  | 
||
| 228 | |||
| 229 | Installation  | 
||
| 230 | <pre><code class="bash">  | 
||
| 231 | cd /srv/redmine/plugins  | 
||
| 232 | wget http://redminecrm.com/license_manager/4200/redmine_issue_checklist-2_0_5.zip  | 
||
| 233 | unzip redmine_issue_checklist-2_0_5.zip  | 
||
| 234 | bundle exec rake redmine:plugins NAME=redmine_issue_checklist RAILS_ENV=production  | 
||
| 235 | # Relancer Redmine  | 
||
| 236 | rcredmine restart  | 
||
| 237 | </code></pre>  | 
||
| 238 | |||
| 239 | Configuration  | 
||
| 240 | Dans *Administration*  | 
||
| 241 | * *Plugins*  | 
||
| 242 | ** Choisir les options voulues  | 
||
| 243 | * *Roles and permissions*  | 
||
| 244 | ** Choisir le rôle  | 
||
| 245 | Donner les droits voulus sur :  | 
||
| 246 | *** Done checklist items  | 
||
| 247 | *** Edit checklist items  | 
||
| 248 | 14 | Patrice Nadeau | *** View checklist  | 
| 249 | 1 | Patrice Nadeau | |
| 250 | 24 | Patrice Nadeau | h3. Redmine People  | 
| 251 | |||
| 252 | 29 | Patrice Nadeau | > A faire  | 
| 253 | 24 | Patrice Nadeau | |
| 254 | 20 | Patrice Nadeau | h3. WikiNG  | 
| 255 | 1 | Patrice Nadeau | |
| 256 | 20 | Patrice Nadeau | Personnalisation des items dans le wiki.  | 
| 257 | 28 | Patrice Nadeau | Ajoute des boutons et des icônes comme FIXME et TODO.  | 
| 258 | 29 | Patrice Nadeau | > « Écrase » le bouton installé par _Code Highlight_  | 
| 259 | 21 | Patrice Nadeau | |
| 260 | Installation  | 
||
| 261 | 27 | Patrice Nadeau | <pre><code class="bash">  | 
| 262 | 26 | Patrice Nadeau | cd /srv/redmine  | 
| 263 | wget http://projects.andriylesyuk.com/attachments/download/564/wiking-1.0.0b.tar.bz2  | 
||
| 264 | tar xvf wiking-1.0.0b.tar.bz2  | 
||
| 265 | mv wiking plugins  | 
||
| 266 | rake redmine:plugins:migrate RAILS_ENV=production  | 
||
| 267 | # restart Redmine  | 
||
| 268 | rcredmine restart  | 
||
| 269 | </code></pre>  | 
||
| 270 | 20 | Patrice Nadeau | |
| 271 | 14 | Patrice Nadeau | h1. Mise à jour  | 
| 272 | 1 | Patrice Nadeau | |
| 273 | 14 | Patrice Nadeau | S’assurer d'avoir les dernières versions des plugins.  | 
| 274 | 9 | Patrice Nadeau | |
| 275 | 14 | Patrice Nadeau | h1. Copie de sécurité  | 
| 276 | 5 | Patrice Nadeau | |
| 277 | <pre> <code class="bash">  | 
||
| 278 | #!/bin/bash  | 
||
| 279 | #  | 
||
| 280 | # backup_redmine.sh  | 
||
| 281 | # Backup of a Redmine setup  | 
||
| 282 | # Last Changes: 2013-02-23  | 
||
| 283 | # Maintainer: Patrice Nadeau <patricen@telwarwick.net>  | 
||
| 284 | |||
| 285 | # TODO Verify the results (folder exist, enough disk pace , etc..)  | 
||
| 286 | |||
| 287 | ## The only variable needed to be changed  | 
||
| 288 | # Directory of the Redmine install  | 
||
| 289 | declare -r RAIL_ROOT='/srv/redmine'  | 
||
| 290 | # MySQL database  | 
||
| 291 | declare -r MYSQL_DB=''  | 
||
| 292 | # MySQL username for the Redemine db  | 
||
| 293 | declare -r MYSQL_USER=''  | 
||
| 294 | # MySQL password for the Redemine db  | 
||
| 295 | declare -r MYSQL_PASSWORD=''  | 
||
| 296 | # Directory for the backup (must exist and with no space in the name)  | 
||
| 297 | declare -r DIR='/root'  | 
||
| 298 | ## end  | 
||
| 299 | |||
| 300 | # Exit level  | 
||
| 301 | declare -ir EXIT_OK=0  | 
||
| 302 | declare -ir EXIT_WARNING=1  | 
||
| 303 | declare -ir EXIT_ERROR=2  | 
||
| 304 | |||
| 305 | declare -i STATUS=$EXIT_OK  | 
||
| 306 | |||
| 307 | # The directory inside the archive  | 
||
| 308 | declare -r REDMINE='redmine'  | 
||
| 309 | TMP_DIR=$DIR/$REDMINE  | 
||
| 310 | |||
| 311 | # This will be used for the archive file  | 
||
| 312 | declare -r DST=$DIR/redmine_$(date +%Y%m%d_%H%M%S).tar.gz  | 
||
| 313 | |||
| 314 | # The temporary sql file  | 
||
| 315 | declare -r TMP_MYSQL=$TMP_DIR/$MYSQL_DB.mysql  | 
||
| 316 | |||
| 317 | echo "Backup in progress in $DST"  | 
||
| 318 | |||
| 319 | #### Create the temp directory ####  | 
||
| 320 | mkdir $TMP_DIR  | 
||
| 321 | |||
| 322 | #### backup MySQL ####  | 
||
| 323 | if [ $STATUS -eq $EXIT_OK ]  | 
||
| 324 | then  | 
||
| 325 | STEP='Creating MySQL backup'  | 
||
| 326 | mysqldump --user=$MYSQL_USER --password=$MYSQL_PASSWORD $MYSQL_DB \  | 
||
| 327 | > $TMP_MYSQL  | 
||
| 328 | STATUS=$?  | 
||
| 329 | fi  | 
||
| 330 | |||
| 331 | #### backup the Redmine folder ####  | 
||
| 332 | if [ $STATUS -eq $EXIT_OK ]  | 
||
| 333 | then  | 
||
| 334 | STEP='Creating Redmine'"'"' files backup'  | 
||
| 335 | cp --recursive $RAIL_ROOT $TMP_DIR  | 
||
| 336 | STATUS=$?  | 
||
| 337 | fi  | 
||
| 338 | |||
| 339 | #### create the archive file ####  | 
||
| 340 | if [ $STATUS -eq $EXIT_OK ]  | 
||
| 341 | then  | 
||
| 342 | STEP="Creating archive"  | 
||
| 343 | tar --create --gzip --file $DST --directory=$DIR $REDMINE  | 
||
| 344 | STATUS=$?  | 
||
| 345 | fi  | 
||
| 346 | |||
| 347 | #### cleanup ####  | 
||
| 348 | if [ $STATUS -eq $EXIT_OK ]  | 
||
| 349 | then  | 
||
| 350 | STEP='Cleaning up'  | 
||
| 351 | rm --recursive --force $TMP_DIR  | 
||
| 352 | STATUS=$?  | 
||
| 353 | fi  | 
||
| 354 | |||
| 355 | #### exit ####  | 
||
| 356 | if [ $STATUS -eq $EXIT_OK ]  | 
||
| 357 | then  | 
||
| 358 | echo "Backup done"  | 
||
| 359 | else  | 
||
| 360 | echo "Bakup failed with error code $STATUS in step $STEP"  | 
||
| 361 | fi  | 
||
| 362 | |||
| 363 | |||
| 364 | exit $STATUS  | 
||
| 365 | |||
| 366 | </code></pre>  |