Arborescence des pages

Vous regardez une version antérieure (v. /wiki/display/ES/Migration+en+Pod+V3+depuis+une+installation+en+Pod+V2) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 11) afficher la version suivante »

Installation sur un nouveau serveur

Pour faire la migration depuis la V2, j'ai (Joshua) fait une installation sur un nouveau serveur. J'ai donc rapatrié les données (hors média) ainsi que la bdd.

$> cd /usr/local/django_projects/
$> tar --exclude='./pod/static' --exclude='./pod/media' -zcvf podv2.tgz ./podv2
$> mysqldump -h bdd.univ.fr -u pod2 -pXXXXXXXXXX pod2 > dumpfile.sql

J'ai rapatrié ces 2 fichiers sur mon nouveau serveur et j'ai déployé les données.

$> cd /usr/local/django_projects
$> tar -xvzf podv2.tgz .
$> mysql -h bdd.univ.fr -u pod2 -pXXXXXXXXXXX  pod3 < dumpfile.sql


→ Ne pas oublier de modifier le fichier de settings_local pour diriger vers la nouvelle BDD

Pour ceux qui utilisaient encore les vidéos interactives :

il faut remonter un environnement virtuel v2 : $> mkvirtualenv --system-site-packages --python=/usr/bin/python3 django_pod2

Ensuite, installer les dépendances qui vont bien : 

$> python3 -m pip install -r requirements.txt

$> pip3 install mysqlclient==2.0.3

Il faut supprimer l'application de la base de données:

$> python manage.py migrate interactive zero

l'application tierce "interactive" n'est plus présente dans le code de Pod3, il faut donc penser à la retirer dans le settings_local (THIRD_PARTY_APPS = ["enrichment", "live"])

J'ai ensuite créé un nouvel environnement virtuel pour pod3

$> mkvirtualenv --system-site-packages --python=/usr/bin/python3 django_pod3

et j'ai récupéré la dernière version de Pod:

(django_pod3) pod@pod3:/usr/local/django_projects/podv3$ git pull origin master

Un MakeFile est maintenant fourni pour simplifier les commandes

(django_pod3) pod@pod3:/usr/local/django_projects/podv3$ cat Makefile

Vous pouvez donc l'utiliser pour finaliser votre installation. Il y a une commande pour tout mettre à jour : $> make upgrade, toutefois, je préfère détailler ici les étapes:

Je commence à installer les lib python :

$> python3 -m pip install -r requirements.txt

Ensuite, je prépare les commandes de mis à jour de la bdd.

Attention, il se peut qu'une dépendance avec l'application flatpage soit nécessaire, il faut donc aller récupérer le fichier sur l'ancien serveur dans ce répertoire :
pod@pod2:~/.virtualenvs/django_pod/lib/python3.7/site-packages/django/contrib/flatpages/migrations

$> make updatedb

Si vous rencontrez l'erreur ImportError: cannot import name 'FieldDoesNotExist' from 'django.db.models.fields' alors il faut mettre à jour django_select2_forms via la commande

$> pip3 install django_select2_forms --upgrade

Une fois la préparation de la migration effectuée, je peux migrer ma base de données:

$> make migrate

Enfin, si tout est ok, vous pouvez respirer et collecter les fichiers statics pour Pod.

Attention : Le mode de gestion des composants tiers pour le frontal de Pod à changé en podv3, nous ne les embarquons plus dans le code mais utilisons un gestionnaire de paquets pour cela.

Nous avons fait le choix de Yarn qu'il vous faut donc installer sur votre environnement. Vous pouvez suivre la documentation suivante pour cela : https://yarnpkg.com/getting-started/install

Il suffit donc de lancer cette commande :

$> make statics


Nouveauté :

Dans cette version il faut installer un serveur Redis pour la gestion du cache :

Voir la partie Installation de Redis de Installation de Pod V3 ou la doc officielle https://redis.io/docs/getting-started/


That's all folks !



  • Aucune étiquette