Ceci est une ancienne révision du document !
Table des matières
Preuve de concept fonctionnelle https://slvtv.fr/scrabble
trivabble https://trivabble.1s.fr/ + yunohost
https://linuxfr.org/news/trivabble-continue-a-evoluer
le fonctionnement de trivabble est simple :
côté client du javascript : trivabble.js qui discute avec le serveur en sse ou en websocket
côté serveur un script nodejs ( javascript serveurs ) : trivabble-server.js qui écoute sur le port 3000
en service http/s : un apache ou un nginx
ce qui manque : un paquet yunohost
page git pour l'intégration initiale :
https://github.com/artlog/trivabble_ynh
Comment créer un paquet yunohost ?
Tout reste à faire
https://yunohost.org/#/packaging_apps
Contenu
Un paquet YunoHost est composé :
d’un manifest.json d’un dossier scripts, composé de six scripts Shell install, remove, upgrade, backup, change_url et restore de dossiers optionnels, contenant les sources ou de la conf d’un fichier LICENSE contenant la licence du paquet d’une page de présentation du paquet contenu dans un fichier README.md
https://github.com/YunoHost/example_ynh
LICENSE Affero General Public License (AGPL)
environnement de développement
https://github.com/yunohost/ynh-dev
utilisation de LXC , difficulté : le certificat est soit autosigné soit letsencrypt, il faudrait une solution manuelle pour avoir une autorité de certification privée pour le dev. https://yunohost.org/#/certificate_custom
utilisation des scripts du ldap serveur interne pour créer un ca privé et un certificat pour ynh.dev
fail2ban yunohost … un peu agressif pour le ssh…
projet source à intégrer :
git clone https://gitlab.com/raphj/trivabble.git
ça ne marche pas (tm)
trivabble@ynh:/var/www/trivabble$ nodejs --version v4.8.2
le nodejs fourni en standard dans la distro est très ancien… trop. adapté pour utiliser la version 10
le point d'entrée de l'url de l'api serveur n'est pas confiugrable :
créé un dépôt fils gitlab https://gitlab.com/artlog/trivabble pour ajouter cette possiblité
ça marchotte
les droits /var/www/trivabble ne sont pas corrects ? ( root:root ) la sauvegarde des parties ne peut pas avoir lieu
le déploiement initial utilise directement git, il devrait utiliser les script de mise en prod
mettre à jour les demandes d'inclusion
qu'est-ce qui me bloque ?
Connaître la procédure canonique correcte pour
- obtenir le 'paquet' source destiné à la prod depuis gitlab ( pour l'instant on utilise git clone directement )
échanges sur le canal irc de #yunohost sur freenode chat.freenode.net ⇒ sous gitlab une archive est créé pour chacun des tags :
https://gitlab.com/raphj/trivabble/-/archive/prod-v20200517.2/trivabble-prod-v20200517.2.zip
ou tar.gz :
https://gitlab.com/raphj/trivabble/-/archive/prod-v20200517.2/trivabble-prod-v20200517.2.tar.gz
utilisation de app.src
Comment tester une application yunhost de dev sans passer par github ?
j'ai installé un yunohost de dev mais je ne sais pas comment pointer sur autre chose que github pour obtenir le paquet…