Aller au contenu principal

Plugins

L'écran Plugins vous permet de lister les plugins enregistrés par manifeste, de les installer ou les désinstaller et de lire leur état de déploiement. Chemin dans le portail : /capabilities/plugins. Les développeurs enregistrent les plugins ; les administrateurs du tenant les installent et les désinstallent. L'écran est dessiné par portal/src/screens/capabilities.tsx.

Ce que montre l'écran​

  • Tableau Plugins, lu par GET /v1/plugins (tous les plugins en un appel, par nom). Colonnes : Nom, Version, Vérifié, Statut, Installé le. Vide : Aucun plugin, aide Appliquez un manifeste Plugin ci-dessous.
  • Le menu de ligne Voir le détail affiche tous les champs de la ligne dans un panneau latéral.
  • Panneau Appliquer un manifeste prérempli avec un exemple de manifeste Plugin (portal/src/samples/plugin-manifest.json), avec Rétablir l'exemple et Appliquer.

Actions​

Bouton ou actionCe qu'il faitAppel d'APIRôles
Actualiser (icône)Recharge la liste.GET /v1/pluginsTout membre du tenant
Menu Voir le détailAffiche la ligne.AucunTout membre du tenant
Menu Installer (pas de date Installé le)Vérifie la signature de l'artefact, produit le déploiement et sa politique réseau, puis marque le plugin installé (ou en échec).POST /v1/plugins/{name}/installtenant_admin et relation owner
Menu Désinstaller (une date Installé le existe)Ouvre Confirmer une action destructive ; saisissez le nom du plugin, puis Confirmer.GET /v1/lineage/graph, puis POST /v1/plugins/{name}/uninstalltenant_admin et relation owner
Menu StatutAffiche le plugin, la version, le statut, l'indicateur de vérification, l'empreinte, la date d'installation, la classe de runtime, applied (applied sur Kubernetes, rendered sinon), le déploiement, la politique réseau et l'erreur.GET /v1/plugins/{name}/statusRelation viewer sur le plugin
Rétablir l'exemple / AppliquerRemet l'exemple / applique le manifeste Plugin.POST /v1/manifests/applytenant_admin, developer
Réessayer (état d'erreur)Relance la lecture qui a échoué.Même appelMêmes rôles
remarque

Un manifeste avec spec.format: pack est refusé avec pack_requires_marketplace : un pack complet se publie et s'installe par la Marketplace, voir Installations.

Rôles​

Le portail ne masque aucun bouton. Dans services/control-plane/src/eai/domains/plugins/routes.py : l'installation et la désinstallation demandent tenant_admin et la relation owner ; le statut et le détail demandent la relation viewer ; la liste demande un tenant. L'enregistrement d'un plugin par manifeste demande tenant_admin ou developer. platform_admin passe tous les contrôles de rôle.

Tâches courantes​

Installer un plugin​

  1. Appliquer le manifeste. Le manifeste désigne l'artefact OCI signé, son empreinte et son bac à sable. Dans Appliquer un manifeste, collez votre manifeste Plugin, puis cliquez sur Appliquer. Résultat attendu : Manifeste appliqué et le plugin dans le tableau après Actualiser. En cas d'échec : invalid_manifest indique le champ en cause (par exemple sandbox.egress_allowlist obligatoire avec network: egress_allowlist).
  2. L'installer. L'installation contrôle de nouveau la signature. Dans le menu de ligne, cliquez sur Installer. Résultat attendu : le message Terminé, le statut installed et une date Installé le. En cas d'échec : plugin_unsigned (403) signifie que la signature n'est pas valide ; plugin_blocked (403) signifie que le plugin est bloqué.
  3. Lire le statut. Le statut montre ce qui a été déployé. Cliquez sur Statut. Résultat attendu : applied (ou rendered quand le Control Plane n'a pas accès à Kubernetes), le déploiement et la politique réseau, sans error. En cas d'échec : lisez error et corrigez la section bac à sable du manifeste.

Mettre à jour un plugin installé​

  1. Le désinstaller. Un plugin installé ne peut pas être remplacé. Cliquez sur Désinstaller, saisissez le nom, puis Confirmer. Résultat attendu : le message Terminé et le statut uninstalled ; le déploiement est retiré. En cas d'échec : plugin_not_installed (409) signifie qu'il est déjà désinstallé ; upstream_error (502) signifie que Kubernetes a refusé la suppression.
  2. Appliquer la nouvelle version. Appliquez le nouveau manifeste dans Appliquer un manifeste. Résultat attendu : Manifeste appliqué et le statut Enregistré. En cas d'échec : plugin_installed (409) signifie que le plugin est encore installé.
  3. L'installer de nouveau. La date Installé le de la première installation reste sur la ligne : le menu garde Désinstaller et masque Installer. Envoyez POST /v1/plugins/{name}/install depuis le SDK ou l'API. Résultat attendu : le statut installed après Actualiser. En cas d'échec : lisez le code d'erreur de la réponse (plugin_unsigned, plugin_blocked).

Dépannage​

SymptômeCauseCorrection
plugin_unsigned (403) : « L'extension ... n'a pas de signature valide. »La signature de l'artefact ne se vérifie pas.Signez l'artefact et appliquez de nouveau le manifeste.
plugin_blocked (403)Le plugin est bloqué.Adressez-vous à un responsable sécurité.
plugin_installed (409) : « L'extension ... est installée : désinstallez-la d'abord. »Vous avez appliqué un manifeste sur un plugin installé.Désinstallez, appliquez, puis installez.
plugin_not_installed (409)Désinstaller sur un plugin qui n'est pas installé (la ligne garde sa date Installé le après une désinstallation).Lisez la colonne Statut ; rien à faire quand elle affiche uninstalled.
pack_requires_marketplace (422)Le manifeste décrit un pack complet.Publiez-le et installez-le par la Marketplace.
forbidden (403)Vous n'êtes pas tenant_admin ou pas propriétaire du plugin.Adressez-vous à un administrateur du tenant.
Statut Échoué après InstallerLa production ou le déploiement a échoué.Lisez error avec Statut.

Pages liées​