Avant une MAJ
Annoncez la maj aux utilisateurs
Dans l'administration de Pod, (https://VOTRE_SERVEUR/admin/main/configuration/), vous trouverez :
- Le champ "maintenance_text_sheduled" vous permet de définir un message de maintenance personnalisé.
- Le champ "maintenance_sheduled" vous permet d'afficher/masquer (=1 / 0) ce message sur Pod.
Le jour J
Basculez en mode maintenance (maintenance_mode = 1), cela va désactiver certaines fonctionnalités, et afficher un bandeau "Maintenance en cours. Certaines fonctionnalités sont indisponibles".
Commandes générales de mise à jour
Via le makefile
pod@pod:~$ cd django_projects/podv3/
pod@pod:~/django_projects/podv3$ workon django_pod3
(django_pod3) pod@pod:~/django_projects/podv3$ make upgrade
(django_pod3) pod@pod:~/django_projects/podv3$ sudo systemctl restart uwsgi-pod
Via les commandes
pod@pod:~$ cd django_projects/podv3/
pod@pod:~/django_projects/podv3$ workon django_pod3
(django_pod3) pod@pod:~/django_projects/podv3$ git status
(django_pod3) pod@pod:~/django_projects/podv3$ git pull origin master
(django_pod3) pod@pod:~/django_projects/podv3$ pip3 install -r requirements.txt
(django_pod3) pod@pod:~/django_projects/podv3$ python manage.py makemigrations
(django_pod3) pod@pod:~/django_projects/podv3$ python manage.py migrate
# mise à jour des composants js/css via yarn
(django_pod3) pod@pod:~/django_projects/podv3$ cd pod; yarn upgrade; cd ..
# Attention : avant de lancer collectstatic --clear, assurez-vous d'avoir sauvegardé le dossier static/custom si vous y avez mis des fichiers personnalisés.
(django_pod3) pod@pod:~/django_projects/podv3$ python manage.py collectstatic --no-input --clear
(django_pod3) pod@pod:~/django_projects/podv3$ sudo systemctl restart uwsgi-pod
Serveur d'encodage
Attention à bien faire la mise à jour sur vos serveurs d'encodages !
pod@pod-encodage:~$ cd django_projects/podv3/
pod@pod-encodage:~/django_projects/podv3$ workon django_pod3
(django_pod3) pod@pod-encodage:~/django_projects/podv3$ git status
(django_pod3) pod@pod-encodage:~/django_projects/podv3$ git pull origin master
(django_pod3) pod@pod-encodage:~/django_projects/podv3$ pip3 install -r requirements.txt
(django_pod3) pod@pod-encodage:~/django_projects/podv3$ sudo /etc/init.d/celeryd restart
Optionnel - Mise à jour d'Opencast Studio
Pour mettre à jour le studio d'Opencast dans votre instance de Esup-Pod, voici les étapes à suivre :
- Rendez-vous dans le dossier opencast-studio/
Récupérer la dernière version d'Opencast Studio via la commande suivante :
# Choisir un tag récent car la branche master est sur la version 2.0 qui est un redesign complet # la liste des tags: https://github.com/elan-ev/opencast-studio/tags git checkout tags/2023-09-14 git pull
Régénérez l'Opencast Studio avec la bonne configuration pour Pod via les commandes suivantes :
export
PUBLIC_URL=
/studio
npm
install
npm run build
Le répertoire build est alors mis à jour. Renommez-le en studio, puis copier le dans le répertoire pod/custom/static/opencast/
mkdir
-p pod
/custom/static/opencast/studio
cp
-r build/* pod
/custom/static/opencast/studio
Finalement, n'oubliez pas de collecter vos fichiers statiques pour la mise en production via la commande :
(django_pod) [userpod@video][
/data/www/userpod/django_projects/podv2
] python manage.py collectstatic