Installer le logiciel

Mettre à jour le logiciel

Installer le logiciel

Le logiciel Collec-Science nécessite un serveur Apache, une base de données Postgresql, et pour certaines fonctions (récupération de mot de passe notamment), un relais de messagerie activé.

Voici les différentes opérations que vous devrez réaliser pour installer le logiciel :

  • installer un serveur dédié (de préférence, mais ce n’est pas obligatoire) ;
  • configurer Apache, PHP ;
  • télécharger le logiciel ;
  • créer la base de données PostgreSQL ;
  • paramétrer le logiciel.

Installation en mode mono-instance

Si vous désirez installer l’application dans un serveur dédié, qui comprendra à la fois la base de données et le code de l’application, vous pouvez utiliser un script qui réalisera quasi-automatiquement l’ensemble des opérations nécessaires.

Dans un premier temps, installez un serveur Linux (testé avec Debian 9, devrait fonctionner avec Ubuntu 16 ou 18) puis, dans la console, tapez les commandes suivantes :

wget https://github.com/Irstea/collec/raw/master/install/deploy_new_instance.sh
sudo -s
./deploy_new_instance.sh

Le script installera l’ensemble des paquets nécessaires, téléchargera le logiciel et préparera la configuration.

Installation différente

Vous désirez déporter la base de données dans un serveur dédié, l’application est hébergée (ou non) dans un serveur web mutualisé : vous pouvez vous inspirer du script :

wget https://github.com/Irstea/collec/raw/master/install/deploy_new_instance.sh

en adaptant la configuration à votre situation. Pour le paramétrage des connexions à la base de données et les différentes stratégies à appliquer, consultez la documentation complète :

wget https://github.com/Irstea/collec/raw/master/database/documentation/collec_installation_configuration.pdf

Mettre à jour le logiciel vers la version 2.3.1

Plusieurs stratégies sont possibles, selon que votre installation a été réalisée avec le script de déploiement automatique (cf. ci-dessus) ou non.

Précautions d’usage

  • vérifiez que vous disposez bien d’une sauvegarde récente et stockée dans un autre support de votre base de données
  • le fichier param/param.inc.php, qui contient vos paramètres locaux, doit avoir également été sauvegardé
  • après installation et vérification que tout fonctionne, supprimez le dossier install de la nouvelle version.

Cas n°1

Collec-Science est installé dans un serveur dédié, qui comprend à la fois l’application et la base de données
le compte de connexion à la base de données n’a pas été modifié par rapport à la configuration par défaut
l’application est stockée dans le dossier /var/www/html/collec-science/xxxx, le lien /var/www/html/collec-science/collec pointe vers xxxx, et le site virtuel (dans /etc/apache2/sites-available) comprend la ligne : DocumentRoot /var/www/html/collec-science/collec
Selon votre version, identifiez le fichier qui correspond à la mise à jour à appliquer (la première série de chiffres correspond à votre version actuelle) :

  • upgrade-1.2-2.3.1.sh
  • upgrade-1.2.3-2.3.1.sh
  • upgrade-2.0-2.3.1.sh
  • upgrade-2.1-2.3.1.sh
  • upgrade-2.2-2.3.1.sh
  • upgrade-2.2.1-2.3.1.sh
  • upgrade-2.2.2-2.3.1.sh
  • upgrade-2.2.3-2.3.1.sh
  • upgrade-2.3-2.3.1.sh

Connectez-vous à votre serveur, puis :

sudo -s

Téléchargez, puis exécutez le script de mise à jour que vous avez sélectionné :

wget https://github.com/Irstea/collec/raw/master/install/nom_du_script
chmod +x nom_du_script
./nom_du_script

Le programme va télécharger la nouvelle version et réaliser l’installation.

Cas n° 2

Vous ne répondez pas exactement au cas n° 1, et vous êtes déjà en version 1.2 :

Connectez-vous à votre serveur, puis :

Etape 1

sudo -s

Positionnez-vous dans le dossier d’installation du programme :

cd /var/www/xxxx

Récupérez le code de l’application :

wget https://github.com/Irstea/collec/archive/master.zip
unzip master.zip
mv collec-master collec-2.3.1

Etape 2 : mise à jour de la base de données

cd collec-2.3.1/install

Si vous utilisez des schémas qui ne sont pas « col » et « gacl », éditez également les fichiers pour mettre les bonnes valeurs :

pgsql/col_alter_1.2-1.2.3.sql
pgsql/col_alter_1.2.3-2.0.sql
pgsql/col_alter_2.0-2.1.sql
pgsql/col_alter_2.1-2.2.sql
pgsql/col_alter_2.2-2.3.sql
pgsql/gacl_alter_2.2-2.3.sql

Étape 2.1 : si la base de données est hébergée dans le même serveur :

Selon le niveau de votre version actuelle, éditez les fichiers :

upgrade-1.2-1.2.3.sql
upgrade-1.2.3-2.0.sql
upgrade-2.0-2.1.sql
upgrade-2.1-2.2.sql
upgrade-2.2-2.3.sql

et vérifiez/adaptez les paramètres de connexion à la base de données.

Exécutez les scripts « upgrade » avec la commande :

su postgres -c "psql -f upgrade-xx-yy.sql"

de manière à mettre à niveau votre base de données vers la version actuelle

Étape 2.2 : si la base de données est hébergée dans un autre serveur :

exécutez chaque script de mise à jour, en fonction de votre version, avec la commande :

psql -h serveur -U username -W -d database -c "col_alter_xx-yy.sql"

Etape 3 : basculer vers la nouvelle version

Recopiez la version précédente de param/param.inc.php et les clés de chiffrement pour les jetons d’identification :

cd ../..
cp ancien_dossier/param/param.inc.php collec-2.3.1/param/
cp ancien_dossier/param/id_collec* collec-2.3.1/param/

Mettez à jour les droits :

collec-2.3.1/install/apache2/upgrade_rights.sh collec-2.3.1

supprimez le lien symbolique (si c’est le mécanisme que vous avez utilisé), et recréez le :

rm collec
ln -s collec-2.3.1 collec

Cas n° 3

Votre instance est dans une version antérieure à la version 1.2.
Il s’agit d’une adaptation du cas n° 2, vous devrez mettre à niveau votre base de données pour qu’elle puisse arriver à la version 1.2.

Réalisez l’étape 1 du cas n° 3 : le code de l’application est maintenant téléchargé
Dans le dossier collec-2.3.1/install/pgsql, vous retrouvez tous les scripts correspondants aux différentes mises à jour nécessaires.

éditez chaque fichier à exécuter, et vérifiez le nom des schémas
exécutez chaque script jusqu’à atteindre la version 1.2, avec la commande suivante :

psql -h serveur -U username -W -d database -c "col_alter_1.1-1.2.sql"

pour mettre à jour depuis la version 1.1 vers la version 1.2

Réalisez alors les étapes 2 et 3 du cas n°2.


Documentation complète

Retrouvez la documentation complète au format PDF dans GITHUB.