Www » Historique » Révision 31
Révision 30 (stephane.ligozat, 19/07/2018 19:22) → Révision 31/51 (stephane.ligozat, 19/07/2018 19:23)
# Documentation site aquilenet
Le site est propulsé par django mezzanine (python)
## Site en préprod
Site hébergé sur la vm dédiée hestia.aquilenet.fr
puis aller sur http://aquilenet.fr et https://aquilenet.fr/jechange pour l'admin
## Installation en local pour développement
Détail de l'installation : http://mezzanine.jupo.org/docs/overview.html#installation
Requis : python \>= 2.7 pip et virtualenv
virtualenv créé un environnement python dédié avec virtualenv : https://virtualenv.pypa.io/en/stable/
pip est l'apt-get de python
Si libjpeg8 et libjpeg8-dev ne sont pas installés sur votre système :
$ apt-get install libjpeg8 libjpeg8-dev
$ apt-get build-dep python-imaging
Installation de mezzanine et de ses dépendances
$ apt-get install virtualenv python-pip
$ virtualenv mezz_aquilenet # créé l'environnement virtuel mezz_aquilenet
$ cd mezz_aquilenet
$ . bin/activate # démarrer l'environnement
$(mezz_aquilenet) # vous êtes bien dans l'environnement !
$(mezz_aquilenet) pip install mezzanine # et de ses dépendances
Installation des modules complémentaires qui sont listés dans requirements.txt à la racine du projet
$(mezz_aquilenet) pip install django-reversion django-piwik django-simple-captcha git+https://github.com/mjtorn/mezzanine-captcha.git
## Installer la version de développement du site
Dans le dossier de l'environnement mezz\_aquilenet ou ailleurs, l'important est d'être connecté à l'environnement.
$(mezz_aquilenet) git init
ajouter votre clé ssh publique sur gaia.aquilenet.fr:/home/www-git/.ssh/autorized.keys
ajouter ceci dans votre ~/.ssh/config :
Host gitwww
HostName git.aquilenet.fr
User www-git
Port 55555
vous pouvez maintenant cloner le projet :
$(mezz_aquilenet) git clone ssh://gitwww:/srv/git/www-git/www_aquilenet.git
$(mezz_aquilenet) cd www_aquilenet
$(mezz_aquilenet) python manage.py runserver
Le site de développement est disponible à http://127.0.0.1:8000/
Importez des données dans dev.db depuis le fichier aquilenet\_data\_dev.json avec cette commande :
python manage.py loaddata aquilenet_data_dev.json
## Déploiement vers le serveur
Le projet de production est www_aquilenet, le projet de développement est test_aquilenet. Il est conseillé de déployer sur le test (dev.aquilenet.fr) avant de déployer en production.
### Se connecter sur le hestia.aquilenet.fr
ajouter ceci dans votre ~/.ssh/config :
Host hestia_web
Hostname hestia.aquilenet.fr
User webmaistre
Port 55555
se connecter :
$ ssh hestia_web
### Activer l'environnement virtuel du projet de test
$ cd /srv/www/webmaistre/.virtualenvs/test_aquilenet
$ . bin/activate
Dès lors (test_aquilenet) doit commencer votre ligne de commande.
Aller dans le répertoire du projet :
(test_aquilenet) $ cd /srv/www/test_aquilenet
### Récupérer la dernière version du dépôt
**NOTE :** le développeur a créé une nouvelle branche pour développer une évolution, il la "pousse" sur le dépôt, il prévient ses copains qui testent la branche, si tout est OK, il fusionne sa branche dans la branche master et pousse cette dernière vers le dépôt.
(test_aquilenet) $ git pull
### Mise à jour de la base
Si des 'models.py' de la nouvelle version ont été changés, ajoutés ou supprimés, il faut migrer ces modifications en faisant :
(test_aquilenet) $ python manage.py migrate
### Les staticfiles
Si des css, js ou des images d'interface (logo d'accueil) ont été changés, ajoutés ou supprimés, il faut lancer la commande :
(test_aquilenet) $ python manage.py collectstatic
### Redémarrer le processus
(test_aquilenet) $ supervisorctl update gunicorn_www_aquilenet
Le PID est dans gunicorn.pid, en faisant :
$ ps -aux | grep test_aquilenet
on doit voir que le processus master a ce PID. Il ne peut y avoir qu'un seul master pour test_aquilenet.
### Passage en production
Si tout ce passe bien, alors on peut faire la même chose en passant à l'environnement de production :
$ cd /srv/www/webmaistre/.virtualenvs/www_aquilenet
$ . bin/activate
Dès lors (www_aquilenet) doit commencer votre ligne de commande.
Aller dans le répertoire du projet :
(www_aquilenet) $ cd /srv/www/www_aquilenet
Puis procéder comme pour le projet de test.
## IDE
1\. vim : https://github.com/bling/dotvim
2\. eclipse-pydev (dépôt ubuntu)
3\. pycharm : https://www.jetbrains.com/pycharm/
## Présentation
Pré-requis :
1\. connaissance de django : https://docs.djangoproject.com/fr/1.10/
2\. connaissance de mezzanine http://mezzanine.jupo.org/
**Des tutoriels vidéos sur http://aquilenet.fr/comment-je-change/ (il faut être connecté)**
## Edition du menu situé en haut à droite
Les liens de ce menu sont éditables dans l'admin sous la page "menu annexe en haut à droite"