You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Il est possible d'installer l'environnement de développement et d'executer le script sous windows, via le wrapper py
installé par défaut. Il est alors nécessaire de préfixer les commandes qui suivent par py -m.
Initialiser l'environnement virtuel et les dépendances
Les dépendances et l'environnement virtuel sont gérées par pipenv.
La commande suivante permet d'initialiser l'environnement et d'installer les dépendances.
pipenv install --dev --python=3.5
Executer le script à partir des sources
pipenv run python -m synchromoodle -c config/test.yml
Construire les binaires à partir des sources
pipenv run python setup.py clean build bdist bdist_wheel bdist_pex --pex-args="--disable-cache"
Déploiement et exécution
Les packages du script sont disponibles dans l'onglet
Release du github.
Deux formats sont disponibles:
PEX, pour une exécution autonome
Wheel, pour une installation via pip sur un environnement Python existant.
PEX
Le fichier .pex est un executable qui contient l'environnement virtuel, les dépendances et le script. Cela permet de
déployer le script sans avoir à se soucier de l'installation de Python.
./synchromoodle-x.x.x.pex -c config/test.yml
Wheel
Le fichier .whl peut être installé via pip sur un Python système ou dans un virtualenv.
Il est possible d'utiliser pyenv pour installer une version spécifique de Python sous
Linux et créer un virtualenv pour le script.
usage: __main__.py [-h] [-v] [-c CONFIG]
optional arguments:
-h, --help show this help message and exit
-v, --version show program's version number and exit -c CONFIG, --config CONFIG Chemin vers un fichier de configuration. Lorsque cette option est utilisée plusieurs fois, les fichiers de configuration sont alors fusionnés.
Configuration YAML
Le script fonctionne à l'aide d'un fichier de configuration au format YAML. Il est possible de spécifier plusieurs
fichiers de configuration, en utilisant plusieurs fois le flag -c, les configuration de chaque fichier sont alors
fusionnées.
La structure de la configuration est modélisée par les classes situées dans
synchromoodle/config.py
Propriétés
Propriété
Description
Type
constantes
Constantes utilisées par le script
Dictionnaire
database
Informations de connexion à la bdd
Dictionnaire
ldap
Informations de connexion au LDAP
Dictionnaire
logging
Configuration de logging (module standard logging, voir dictConfig)
Dictionnaire
actions
Liste des actions a exécuter avec la configuration associée
Tableau
delete
Informations pour la suppression de données
Dictionnaire
webservice
Informations de connexion au webservice moodle
Dictionnaire
actions
Propriété
Description
Type
id
Identifiant de l'action (libre)
Chaine de caractères
type
Type d'action à éxecuter (nom de la fonction dans actions.py)
Chaine de caractères
timestamp_store
Informations du fichier de stockage des dates de dernières exécution
Dictionnaire
etablissements
Informations générales sur les établissements
Dictionnaire
inter_etablissements
Informations générales sur les inter-établissements
Dictionnaire
inspecteurs
Informations générales sur les inspecteurs
Dictionnaire
constantes
Propriété
Description
Valeur par défaut
Type
default_moodle_theme
Thèmes par défault pour les utilisateurs inter-etabs
"netocentre"
Chaine de caractères
default_mail_display
Par défaut, les mails sont uniquement affichés aux participants du cours
2
Nombre entier
default_mail
Email utilise lorsque les personnes n'ont pas d'email dans le LDAP