5.3. Gestion des Plugins

La gestion de plugins est utile afin de gérer rapidement les plugins à partir de l”interface en ligne de commande. Cela utilise la même fonction que l’interface web est à donc le même comportement.

Lister les fonctionnalités

$ lisa-cli plugin --help
Usage: /home/alivelisa/.virtualenvs/lisa/bin/lisa-cli plugin [options] <plugin_name>

Manage the plugins

Options:
  --list                List all plugins and show their status
  --create              Create a template plugin with a given name
  --enable              Enable a plugin
  --disable             Disable a plugin
  --install             Install a plugin
  --dev                 Dev mode
  --uninstall           Uninstall a plugin
  --upgrade             Upgrade a plugin
  -h, --help            show this help message and exit
list:

Cette option n’a pas besoin d’être appellé par un nom de plugin.

$ lisa-cli plugin --list
ChatterBot => [Installed] [Enabled]
BBox => [Installed] [Enabled]
ProgrammeTV => [Installed] [Enabled]
Cinema => [Not installed] [Not enabled]
Meteo => [Not installed] [Not enabled]
SNCF => [Not installed] [Not enabled]
Shopping => [Not installed] [Not enabled]
Wifiledlamps => [Not installed] [Not enabled]
create:

Cette option va créer un plugin dans votre répertoire des plugins. Quelques questions vous seront demandés afin de configurer automatiquement le plugin.

$ lisa-cli plugin --create PLUGINNAME
What is your full name ? : Lisa
What is your email ? : lisa@lisa-project.net
[OK] Plugin created
enable / disable:
 

Cette option va activé ou désactivé un plugin. Cela signifie que le plugin est toujours présent dans la base de donnée and sur le système de fichier mais ne sera pas chargé par le gestionnaire de plugin.

$ lisa-cli plugin --enable PLUGINNAME
[OK] Plugin enabled
$ lisa-cli plugin --disable PLUGINNAME
[OK] Plugin disabled
dev:

Cette option vous permet de spécifier ce que vous écrivez dans l’extension. Cela ne le télécharge pas dans Python Package Index mais utilise plutôt l’extension local. Elle ne fait rien dans les fichiers système mais essentiellement dans la base de données. Utilisée principalement pour installer et désinstaller une fonction. Quand elle est utilisée pour l’installation, elle actualise tout les champs dans la base de données selon vos fichiers d’extension local. Si vous l’utilisez afin de désinstaller avec le mode développeur, elle ne désinstalle pas le fichier json, mais seulement les enregistrements de votre base de données.

install:

Cette option installe l’extension. Par défaut elle télécharge le paquet depuis Python Package Index puis lis le fichier json et installe tout les composants (règles, crons, intension, configuration de l’extension) dans la base de données.

$ lisa-cli plugin --install PLUGINNAME
[OK] Plugin installed
uninstall:

Cette option désinstalle l’extension. Par défaut cela supprime le paquet et tout les fichiers relatif à l’extension et supprime les entrées relatif à l’extension dans la base de données.

$ lisa-cli plugin --uninstall PLUGINNAME
[OK] Plugin uninstalled
upgrade:

Cette option n’est pas encore implémentée.

$ lisa-cli plugin --upgrade PLUGINNAME
[OK] Plugin upgraded