Deadlock Theia projet basé sur notre propre image de Theia https://git.e-biz.fr/deadlock-public/theia. Plusieurs éléments ajoutés à l'image de base : 1. Deadlock plugins (deadlock-plugins/) 2. Outil d'enregistrment, qui permet d'enregistrer le code quand un utilisateur exécute du code (deadlock(plugins/recorder)) 3. Gestion du CORS (*.deadlock.io) dans `server.js` Deux images de `deadlock-theia` sont build ici, *code* et *kube*. ## Construire les plugins : `./build-plugins.sh` Tous les plugins qui se trouvent dans `deadlock-public` vont être construit en `.vsix` puis placés dans `plugins/` (ex: deadlock-plugins/deadlock-extension). Il est aussi possible d'ajouter directement des plugins `.vsix` en ajoutant le fichier dans `plugins/` ## Recorder : Le recorder permet de sauvegarder régulièrement le code de l'utilisateur. Pour se faire il écoute les commandes exécutées par l'utilisateur et si une contient `java|npm|yarn` alors un snapshot du code est réalisé. ### Build `./build-recorder.sh` ## Construire l'image Deadlock Theia avec le recorder et les plugins `./build.sh $TAG (code|kube)` # Requirements: 1. NodeJS > ^14.X 2. Vscode ou Vscodium 3. Docker Ce projet contient le minimum pour construire une image Docker Theia avec Blueprint (https://theia-ide.org/docs/composing_applications/)