Table des matières

Résumé du projet de migration de Chaudron

Quoi ?

L'instance actuelle de chaudron est sur une machine prêtée par un adhérent. De plus, la version installée est ancienne. Elle n'offre notamment pas d'accès à l'API v3.

L'objectif de ce projet est double :

  1. Migrer chaudron sur une VM de l'association
  2. Monter en version d'OpenProject (le logiciel derrière Chaudron)

Combien ça coûte et rapporte ?

Systèmes affectés (modifiés, supprimés, nouveaux)

Personnes nécessairement touchées par les changements

Tous les membres utilisant Chaudron, ce qui pour l'instant représente très peu de monde, voir personne.

Processus modifiés

Cela permettra de développer des outils faisant le lien entre COIN et Chaudron.

L'interface de la dernière version de Chaudron est également plus claire, ceci favorisera peut être l'usage de Chaudron.

Migration de Chaudron

  1. Création d'une VM de test
  2. Installation manuelle d'OpenProject
  3. Tentative de migration des données

Une fois les points précédents validés :

  1. Validation de la configuration avec adminsys@
  2. Validation de la procédure de migration des données avec adminsys@
  3. Création d'une recette ansible pour l'installation
  4. Rédaction de la doc adminsys + doc utilisateurs

Ressources :

Préparation de la VM de test

https://www.openproject.org/system-requirements/

gnt-instance add -s 10G -B maxmem=1G \
    --net 0:ip=89.234.176.153,mode=routed,mac=generate \
    -o debootstrap+default --node mutine.faimaison.net:dramm-hud.faimaison.net \
    tagarin-ale.faimaison.net

Debian 8 (jessie) avec FDE car on pourrait y stocker des informations personnelles.

Installation d'OpenProject (via le dépôt officiel)

https://www.openproject.org/download-and-installation/

Installation

Le projet propose un dépôt tiers pour installer OpenProject.

  1. Import the packager.io repository signing key
    wget -qO - https://deb.packager.io/key | sudo apt-key add -
  2. Install apt-https suppport
    apt-get install apt-transport-https
  3. Add the OpenProject package source in /etc/apt/sources.list.d/openproject.list with the following contents
    deb https://deb.packager.io/gh/opf/openproject-ce jessie stable/6
  4. Install the OpenProject Community Edition package
    apt-get update && apt-get install openproject

Configuration

https://www.openproject.org/download-and-installation/#configuration

Les valeurs par défauts suffisent pour avoir une instance de test en HTTP simple.

Attention si à la configuration, aucune adresse email n'a été renseignée, on ne peut pas changer de mot de passe admin au premier démarrage (avec l'erreur : Email can't be blank.).

La solution :

# grep root_password /etc/openproject/installer.dat
# mysql openproject -p<password>
mysql> UPDATE users SET mail='admin@email' WHERE id = '1';
mysql> commit; # optionnel car l'autocommit est activé par défaut

Après une première utilisation, la VM swap avec 1G de RAM, j'ai donc augmenté à 1.5G. En fait, ça swap car j'avais activé memcached, sans cette option, la VM tourne correctement avec 1G de RAM.

Backup et restauration

https://www.openproject.org/operations/backup/backup-guide-packaged-installation/

openproject run backup

Cette commande crée des backups de la base de données, des fichiers et dépôts attachés, et de la configuration. Les archives sont placées dans /var/db/openproject/backup et il suffit de les placer au bon endroit pour restaurer la configuration, les fichiers et les dépôts.

Pour la base de données, on peut utiliser la commande suivante :

zcat mysql-dump-<date>.sql.gz | mysql -u <dbuser> -h <dbhost> -p <dbname>

On trouve les identifiants grâce à la commande suivante :

# openproject config:get DATABASE_URL
=> e.g.: mysql2://dbusername:dbpassword@dbhost:dbport/dbname

Installation d'OpenProject (manuellement)

https://github.com/opf/openproject/blob/release/6.1/docs/installation/manual/README.md