Projet

Général

Profil

Actions

Wiki » Historique » Révision 36

« Précédent | Révision 36/279 (diff) | Suivant »
Patrice Nadeau, 2014-08-19 20:58


%{font-size:18pt}Redmine%

Merge du fichier PDF : #13


{{toc}}

h1. Redmine

Logiciel de gestion de projets, sources, bugs et timeline.
Contient un module de Wiki, de fichiers.
Supporte aussi les systèmes de version de fichier (Git, SVN entre autre).
Disponible à http://www.redmine.org/projects/redmine/wiki/Download

De base, ne fonctionne pas avec Apache
Pour une solution possible, voir : http://www.redmine.org/projects/redmine/wiki/HowTo_configure_Apache_to_run_Redmine

Sa principale difficulté d’installation et sa dépendance à Ruby. D’où le but de ce guide.
Voir aussi :

h1. Installation

Ce guide documente une installation GNU/Linux avec les version suivantes :

  • openSUSE 13.1
  • Redmine 2.4.2

h2. Prérequis

Un serveur LAMP openSUSE

Les logiciels suivants :

  • libmysqlclient-devel
  • mysql-community-server
  • ruby-2.0
  • ruby20-devel
  • rubygem-bundler
  • rubygem-mysql2
  • rubygem-pg
  • ImageMagick
  • ImageMagick-devel
  • git
  • gcc
  • make

h2. MySQL

Ajout au démarrage automatique et démarrage du service :


chkconfig -a mysql
rcmysql start

Création de la base de donnés.
Substituer les items suivants à votre choix :

  • redmine : Usager pour la base de donnés.
  • password : Mot de passe de la base de donnees.
  • db : Nom de la base de donnés.

Lancer MySQL :


mysql -u root -p

Commandes MySQL :


create database db character set utf8;
create user 'redmine'@'localhost' identified by 'password';
grant all privileges on db.* to 'redmine'@'localhost';
commit;
quit;

h2. Redmine

L’installation sera faite dans \srv\redmine


cd /srv/
svn co http://svn.redmine.org/redmine/branches/2.4-stable redmine
cd redmine
cp config/database.yml.example config/database.yml
cp config/configuration.yml.example config/configuration.yml
mkdir public/plugin_assets

Si un usager MySQL autre que root ou mot de passe diffèrent est utilisé :
Éditer le fichier config/database.yml, section Production et modifier les lignes :

  • username
  • password

Éditer le fichier config/configuration.yml et modifier la configuration SMTP.

h2. Ruby

Installation des gems de Ruby


cd redmine
gem install bundler
gem install activerecord-mysql2-adapter
bundle install --without development test

h2. Initialisation

Création de la cryptographie, de la structure et des donnés de base :


cd /srv/redmine
rake generate_secret_token
RAILS_ENV=production rake db:migrate
RAILS_ENV=production rake redmine:load_default_data

Ouvrir dans le pare-feu :

  • TCP : 3000

Lancer le serveur web (test)


cd /srv/redmine
ruby script/rails server webrick -e production

A partir d’un navigateur web, se brancher à http://server:3000.
Utiliser l’usager admin avec le mot de passe admin.
Vérifier la configuration dans Administration, Information.

h2. Transformation en daemon

Le script original vient de http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_on_openSUSE
Copier le script dans le fichier /etc/init.d/redmine

Le modifier de la manière suivante :

  • REDMINE_BIN=/srv/redmine/current/script/rails
  • REDMINE_USER=user
  • Corriger le «typo» à la ligne 73 : $REDMI-NE_BIN -> $REDMINE_BIN
  • Dans la section stop, après la ligne killproc, ajouter rm $PIDFILE

Rendre le fichier exécutable, l’ajouter aux services SUSE et l’exécuter au démarrage :


chmod 0755 /etc/init.d/redmine
cp -s /etc/init.d/redmine /usr/bin/rcredmine
chkconfig -a redmine

h1. Personnalisation

h2. Ajout d’un logo

Les informations viennent de : http://www.redmine.org/projects/redmine/wiki/Howto_add_a_logo_to_your_Redmine_banner

Copier le logo dans /srv/redmine/public/images/logo.png
Modifier le fichier /srv/redmine/app/views/layout/base.rhtml.erb

Si on ne veux plus afficher le titre, mettre en commentaire :



h2. Plugins

h3. Redmine Rouge

Permet le support de langage supplémentaire pour l'affichage de la syntaxe d'un code source.

"Langage supporté":http://rouge.jayferd.us/demo

https://github.com/ngyuki/redmine_rouge


cd /srv/redmine/plugins
git clone https://github.com/ngyuki/redmine_rouge.git
cd ..
bundle install
# Relancer redmine
rcredmine restart

h3. Code Highlight

http://www.redmine.org/plugins/codehightlight_button

Bouton permettant de sélectionner du code et d'activer la syntaxe selon un langage.

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

Installation


cd /srv/redmine/plugins
git clone https://github.com/mediatainment/redmine_codebutton.git
cd ..
rake redmine:plugins
rake redmine:plugins:migrate RAILS_ENV=production
# Relancer Redmine
rcredmine restart

h3. Redmine Issue Checklist

Extends issues to store checklist items

http://redminecrm.com/projects/checklist

Installation


cd /srv/redmine/plugins
wget http://redminecrm.com/license_manager/4200/redmine_issue_checklist-2_0_5.zip
unzip redmine_issue_checklist-2_0_5.zip
bundle exec rake redmine:plugins NAME=redmine_issue_checklist RAILS_ENV=production
# Relancer Redmine
rcredmine restart

Configuration
Dans Administration

  • Plugins
    ** Choisir les options voulues
  • Roles and permissions
    ** Choisir le rôle
    Donner les droits voulus sur :
    *** Done checklist items
    *** Edit checklist items
    *** View checklist

h3. Redmine People

A faire

h3. WikiNG

Personnalisation des items dans le wiki.
Ajoute des boutons et des icônes comme FIXME et TODO.

« Écrase » le bouton installé par Code Highlight

Installation


cd /srv/redmine
wget http://projects.andriylesyuk.com/attachments/download/564/wiking-1.0.0b.tar.bz2
tar xvf wiking-1.0.0b.tar.bz2
mv wiking plugins
rake redmine:plugins:migrate RAILS_ENV=production
# restart Redmine
rcredmine restart

h1. Mise à jour

S’assurer d'avoir les dernières versions des plugins.

h1. Copie de sécurité

 
#!/bin/bash
#
# backup_redmine.sh
# Backup of a Redmine setup
# Last Changes: 2013-02-23
# Maintainer: Patrice Nadeau  

# TODO Verify the results (folder exist, enough disk pace , etc..)

## The only variable needed to be changed
# Directory of the Redmine install
declare -r RAIL_ROOT='/srv/redmine'
# MySQL database
declare -r MYSQL_DB=''
# MySQL username for the Redemine db
declare -r MYSQL_USER=''
# MySQL password for the Redemine db
declare -r MYSQL_PASSWORD=''
# Directory for the backup (must exist and with no space in the name)
declare -r DIR='/root'
## end

# Exit level
declare -ir EXIT_OK=0
declare -ir EXIT_WARNING=1
declare -ir EXIT_ERROR=2

declare -i STATUS=$EXIT_OK

# The directory inside the archive 
declare -r REDMINE='redmine'
TMP_DIR=$DIR/$REDMINE

# This will be used for the archive file 
declare -r DST=$DIR/redmine_$(date +%Y%m%d_%H%M%S).tar.gz

# The temporary sql file
declare -r TMP_MYSQL=$TMP_DIR/$MYSQL_DB.mysql

echo "Backup in progress in $DST"

#### Create the temp directory ####
mkdir $TMP_DIR

#### backup MySQL ####
if [ $STATUS -eq $EXIT_OK ] 
then
	STEP='Creating MySQL backup'
	mysqldump --user=$MYSQL_USER --password=$MYSQL_PASSWORD $MYSQL_DB \
		> $TMP_MYSQL
	STATUS=$?
fi

#### backup the Redmine folder ####
if [ $STATUS -eq $EXIT_OK ] 
then
	STEP='Creating Redmine'"'"' files backup'
	cp --recursive $RAIL_ROOT $TMP_DIR
	STATUS=$?
fi

#### create the archive file ####
if [ $STATUS -eq $EXIT_OK ] 
then
	STEP="Creating archive"
	tar --create --gzip --file $DST --directory=$DIR $REDMINE
	STATUS=$?
fi

#### cleanup ####
if [ $STATUS -eq $EXIT_OK ] 
then
	STEP='Cleaning up'
	rm --recursive --force $TMP_DIR
	STATUS=$?
fi

#### exit ####
if [ $STATUS -eq $EXIT_OK ] 
then
	echo "Backup done"
else
	echo "Bakup failed with error code $STATUS in step $STEP"
fi


exit $STATUS

Mis à jour par Patrice Nadeau il y a plus de 10 ans · 36 révisions