Modules personnalisés
Vous pouvez déployer votre module avec votre propre fonctionnalité en utilisant l'API développeur.
Développement
Utilisez le modèle https://github.com/OneEntry/module-example et suivez les instructions sur https://github.com/OneEntry/custom-module-deployment-guide lors du développement.
Construction
- Créez un nouveau jeton de projet avec les droits read-registry. Il est recommandé de créer un jeton à durée indéterminée.
- Créez un nouveau tag dans git (à chaque nouvelle version du module)
- Attendez la fin du pipeline, après quoi l'image docker du module sera téléchargée dans le registre et disponible pour le déploiement.
Déploiement
Allez dans les paramètres, onglet Modules, et faites défiler vers le bas jusqu'à la carte Créer un nouveau module.
-
Indiquez le nom (Name) et le marqueur (Marker) du module.
-
Dans le bloc Image Docker, dans le champ Image URL, indiquez le chemin vers l'image docker précédemment construite au format
host/user/repo:version.Où
host- le nom de l'hôte du registre docker, par exempleregistry.gitlab.com,user- l'id de l'utilisateur ou de l'organisation, par exempleoneentry,repo- le nom du dépôt, par exemplemy-moduleversion- le nom du tag (version du module)Exemple complet :
registry.gitlab.com/oneentry/my-module:v1.0.0 -
Dans le champ Registry host, indiquez l'hôte du registre docker, qui répète la partie host du chemin vers l'image docker, par exemple
registry.gitlab.com. -
Dans les champs Token ID et Token, indiquez le nom du jeton (indiqué lors de la création) et le jeton lui-même (qui commence généralement par
glpat) respectivement. -
Sous les champs Token ID et Token, cliquez sur Ajouter et indiquez les variables d'environnement requises pour le fonctionnement du module (peuvent être modifiées ultérieurement).
Cliquez sur Créer.
Après la création du module, il apparaîtra dans le tableau. Vous pouvez maintenant le déployer en cliquant sur (cela prendra un certain temps).
Statuts du conteneur
- Non déployé — le module a été créé, mais n'a pas encore été déployé.
- Déploiement — le module est en cours de déploiement.
- En cours d'exécution — le module fonctionne.
- Suspendu — le module est déployé, mais n'est pas en cours d'exécution.
- Erreur — la dernière action avec le module a échoué, voir la section «Débogage des erreurs».
Tant qu'une action est en cours avec le module, la colonne de statut affiche son avancement : Déploiement, Suspension, Reprise ou Suppression. Un statut qui n'a pas pu être récupéré est affiché comme Inconnu. Les statuts sont mis à jour automatiquement.
Actions sur le module
Suspendre le module. Arrête le processus, mais les données restent.
Reprendre le fonctionnement du module. Lance le processus.
Supprimer le module. Arrête le processus, supprime le conteneur et les données associées.
Débogage des erreurs
Si le module n'a pas pu être déployé ou si le processus échoue systématiquement, le module obtiendra le statut Erreur, et une icône apparaîtra dans la ligne avec l'info-bulle «La dernière action avec ce module a échoué».
Un module avec le statut Erreur, tout comme un module non déployé, a à nouveau le bouton de déploiement
: corrigez la cause et déployez à nouveau le module.
Problèmes possibles
- Image docker mal configurée.
- Jeton invalide ou incorrect.
- Le processus échoue. Le processus interne ne doit pas échouer tant que le module est actif.
Journalisation
D'autres problèmes avec le module peuvent être débogués à l'aide des journaux affichés dans les paramètres du module.
Mise à jour/édition du module
Si vous devez déployer une nouvelle version du module ou modifier les variables d'environnement, vous devez mettre à jour le tag et/ou les variables dans les paramètres. Le processus sera redémarré.