application-amicale-serveur/README.md
2021-05-09 11:46:35 +02:00

2.8 KiB

Serveur pour l'application de l'Amicale (Campus)

Partie serveur pour l'application de l'amicale, publiée sous licence GPLv3.

Le serveur est programmé avec python 3.6 en utilisant des venv.

Structure

Pour des raisons de compatibilité, 2 versions sont en ligne sur le serveur: une dans publich_html et une autre dans public_html/v2. La première version est à ignorer et à supprimer dans le futur. La v2 est celle actuellement utilisée.

Installation

Tout d'abord, clonez ce dépot dans le dossier désiré et déplacez vous dedans.

git clone https://git.etud.insa-toulouse.fr/vergnet/application-amicale-serveur.git
cd application-amicale-serveur

Ensuite, créez le venv:

python3 -m venv tutorial-env

Et enfin, installez les dépendances:

pip install -r requirements.txt

Mettre à jour les dépendances

Ouvrez le fichier requirements.txt et écrivez la nouvelle version de la librairie à utiliser. Ensuite, chargez le venv dans votre terminal:

source .venv/bin/activate

Cette commande permet d'utiliser le python installé dans le venv au lieu de celui du système. Il ne reste plus qu'à installer les nouvelles versions référencées dans requirements.txt:

pip install -r requirements.txt

Envoyer les mises à jour sur le serveur

Le serveur est synchronisé avec git, il suffit donc de se connecter sur l'espace web, de se déplacer dans le dossier v2 et de récupérer les derniers changements:

ssh amicale_app@etud.insa-toulouse.fr
cd public_html/v2
git pull

Si vous avez modifié les versions des librairies dans requirements.txt, pensez à les mettre à jour sur le serveur avec la commande suivante:

pip install -r requirements.txt

Mises à jour 'BREAKING'

Si une mise à jour casse la compatibilité avec la version actuelle de l'application, il est nécessaire de garder l'ancienne version du logiciel serveur le temps que tout le monde mette l'application à jour (plusieurs mois).

Pour cela, créez un nouveau dossier pour la nouvelle version dans public_html. Par exemple, pour passer de la version 2 (installée dans public_html/v2), il faut installer la nouvelle version dans le dossier public_html/v3.

Pour cela, il faut tout réinstaller dans ce dossier comme suit:

ssh amicale_app@etud.insa-toulouse.fr
cd public_html
git clone https://git.etud.insa-toulouse.fr/vergnet/application-amicale-serveur.git v<NUMERO_DE_VERSION>
cd v<NUMERO_DE_VERSION>

Ensuite, créez le venv:

python3 -m venv tutorial-env

Et enfin, installez les dépendances:

pip install -r requirements.txt

Pensez ensuite à rediriger l'application vers cette nouvelle version.