Je partage ici quelques pratiques qui ont abouti. Mon témoignage est sûrement moins clair que la doc de Moodle, mais il fournit quelques astuces peut-être bienvenues pour certains d'entre nous.
Moodle 3.3.1 – Theme Boost – Hébergement mutualisé – Accès FTP seulement
Étape 1 : Sauvegarde des cours en lot
Suis allé à : http://mon.domaine.eu/admin/settings.php?section=automated
Paramètres importants :
- Actif : Activée
- Planification : Aujourd’hui
- Lancer à : dans 5 minutes (voir réponse à la question 2 infra)
- Stockage : Dossier spécifié (sinon, les sauvegardes sont placées - quoi qu'en dise la doc - chacune dans un répertoire séparé, correspondant au seul cours concerné ; pas pratique pour une action en lot)
- Enregistrer sous : Chemin d'accès complet du dossier où vous
voulez enregistrer les sauvegardes (voir réponse à la question 1 infra)
Deux questions épineuses se sont posées
au moment de
paramétrer la sauvegarde des cours en lot :
1. Quel est le chemin d’accès complet du dossier-maison où seront
enregistrées les sauvegardes ? Commence-t-il par /home ? par /home2 ? par /var ?
Je l’ai deviné en examinant la valeur attribuée à $CFG->dataroot dans le fichier config.php situé à la racine de mon Moodle.
Sur mon serveur, par exemple, en lisant la ligne :
$CFG->dataroot = '/data/sites/web/monCompte/data/moodledata’;
j’ai décidé de créer un répertoire sauvegardes_cours au même niveau que moodledata. Le chemin d’accès complet du dossier où seraient (provisoirement) enregistrées les sauvegardes a donc été :
/data/sites/web/monCompte/data/sauvegardes_cours
2. Je voulais effectuer la sauvegarde dans les 5 minutes qui viennent mais je ne savais pas quelle heure indiquer : l’heure sur mon serveur était-elle la même que l’heure indiquée sur mon Moodle ?
Suis allé sur : http://mon.domaine.eu/admin/tool/task/schedule_task.php
J’ai lancé n’importe quelle tâche et l’heure du serveur était indiquée dans les premières lignes du rapport qui est apparu :
... started 09:06:25
Suis retourné à : http://mon.domaine.eu/admin/settings.php?section=automated pour y inscrire : 09:10
Le backup a démarré dans les minutes qui ont suivi. Il a duré une douzaine de minutes.
Je pouvais suivre son déroulement d'ici : http://mon.domaine.eu/report/backups/ ou par FTP.
Étape 2 : Restauration des cours en lot
Constitution préalable d’un fichier plat CSV
Dans MyPhpAdmin, j’ai lancé la requête
SELECT `id`,`shortname`,`fullname` FROM `mdl_course` WHERE 1
pour obtenir une liste propre des cours à dupliquer.
J’ai d’abord exporté le résultat dans Word (si on l'exporte en CSV, on perd assez incroyablement l’UTF-8) puis j’ai copié-collé le tableau Word dans Excel.
Dans ce tableau, j'ai ajouté une colonne 'summary' pour pouvoir intégrer dans la description de chaque cours une
même précision importante : Les contenus de ce cours ont été automatiquement
recopiés depuis la version 2016-2017.
J'ai aussi ajouté une colonne 'backupfile' pour indiquer le fameux chemin d'accès complet à chaque sauvegarde de cours. Il
a donc fallu modifier le numéro des cours et (hélas !) l'heure de leur
restauration dans chaque titre de fichier (voir segments en grasses
soulignées dans l'encadré qui suit).
Voici les trois premières lignes du tableau, une fois converti en texte. J’ai préféré le séparateur ‘ ; ’ parce qu’il y avait des virgules dans certains intitulés de cours :
shortname;fullname;category;summary;backupfile
UB018 (2017-2018);Développement des compétences gnagnagna;Les contenus de ce cours ont été automatiquement recopiés depuis la version 2016-2017.;/data/sites/web/monCompte/data/sauvegardes_cours/sauvegarde-moodle2-course-91-20170821-0910.mbz
UB019 (2017-2018);Initiation au gnagnagna;Les contenus de ce cours ont été automatiquement recopiés depuis la version 2016-2017.;/data/sites/web/monCompte/data/sauvegardes_cours/sauvegarde-moodle2-course-92-20170821-0910.mbz
Durée de la constitution du fichier plat CSV : 15 minutes.
Restauration en lot
J’ai ensuite lancé la restauration : http://mon.domaine.eu /admin/tool/uploadcourse/
- Insertion du fichier CSV que je venais de préparer.
- Mode de traitement : Tout créer…
- Prévisualiser
- Lancer
Durée de la restauration : 14 minutes
Il ne nous reste plus qu’à créer d’éventuelles nouvelles sous-catégories et d’y faire glisser les cours : http://mon.domaine.eu/course/management.php
__________
(*) Duplication réalisée pour la facilité des fort nombreux
enseignants, qui expurgent ensuite tout ce qu’ils souhaitent du cours dupliqué.