Lancer une image Gladys de test?

Désolé je te renvoie le message;
J’étais aussi sur Gladys 3 et j’arrivais tant que mal a chercher le pourquoi du commentaire avec putty quand quelque chose ne tournait pas rond, mais là avec Gladys 4, je suis un peu dépassé. je t’en avais touché deux mots en commentaire sur une vidéo que tu avais réalisé, mais j’ai vu que gaetanb76 , avait demandé " Comment faire concrètement pour pouvoir tester ?
Je pense qu’il faut récupérer l’image ici Images :baleine:pour tester des services en développement
Mais après… ?" c’était en juin, (mais restait sans réponse)
et j’aimerai bien aussi tester les images mais comment faire?
En tout cas , Merci pour tout le boulot abattu par la communauté et surtout par toi
Merci pour tout

Ce sont des images docker donc si tu na pas les bases ( c’est pas un reproche) je te déconseille de te lancer sans avoir un peu de connaissances sur le sujet.

Si tu nous dit quelle image tu veux tester on peut te donner la commande à exécuter.

J’ai splitté le sujet car ça n’avait pas trop de rapport avec le problème initial à l’autre endroit :slight_smile:

Bonsoir VonOx ,
pas de probleme, effectivement je n’ai pas les bases de Docker.
Pour l’image j’avais un RFlink sur Gladys 3 pour commander mes devices 433Mhz et je voulais le réutiliser, donc je voulais tester l’image Arduino
merci pour tes réponses :grinning:

Pierre Gilles:
j’essaie de mettre les réponses sur les sujets qui vont bien, mais bon, ça marche pas toujours,
merci pour la gestion des messages :grinning:

L’image arduino n’a pas l’air d’être en développement actif, et la PR n’a pas trop de rapport avec le Rflink donc ça va pas t’aider :slight_smile:

En revanche, il y a une PR Rflink qui est plutôt bien avancée (voir quasiment finie), je t’invite à aller voir ce post:

Après, comme disait @VonOx, la on parle d’un service en cours de développement donc si tu veux être capable de lancer ça il faut avoir quelques compétences.

Bonjour PierreGilles,
C’est ce que j’aimerai faire , tester des PR, j’ai installé tout environnement de Dev windows , après je ne sais pas allez plus loin( je ne sais pas si c’est avec ça que l’on teste les PR?), je devais tester la Pr sur les sonoff eWeling, mais ne je connais pas le cheminement pour y arriver. Je pense qu’avec une petite description comme " développer un service Gladys", je pourrais approfondir ce que je ne connais pas , et j’aurai un modèle a suivre (comme au bon vieux temps de la V3 :blush:)
merci encore de prendre du temps pour nous .

Alors si c’est dans un but uniquement de test (pas pour développer), il vaut mieux lancer une image Docker « en condition réelle » plutôt que de faire ça dans un environnement de développement (ce qui ne reflète pas vraiment la réalité et n’est pas forcément facile à mettre en place)

Pour lancer une image Docker, c’est le même process que décrit sur la page d’installation de Gladys via Docker ( Installation avec Docker | Gladys Assistant ), à savoir lancer un container Docker sur la machine ou tu veux tester Gladys (le plus proche de ce que tu as en prod, un Raspberry Pi par exemple)

La seule différence c’est qu’il faut changer le nom de l’image dans le docker run (pour lancer une image générée par un autre développeur), et mettre des volumes qui correspondent à ton environnement de test.

Disséquons la commande docker run du site:

docker run -d \
--log-opt max-size=10m \
--restart=always \
--privileged \
--network=host \
--name gladys \
-e NODE_ENV=production \
-e SERVER_PORT=80 \
-e TZ=Europe/Paris \
-e SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production.db \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/gladysassistant:/var/lib/gladysassistant \
-v /dev:/dev \
-v /run/udev:/run/udev:ro \
gladysassistant/gladys:v4

Ici tu remarque qu’à la fin, on spécifie qu’on veut lancer un container à partir de l’image gladysassistant/gladys:v4, c’est l’image « officielle » qu’on distribue :slight_smile:

Dans le cas d’un scénario de test, par exemple dans le cas de la PR RFLink, @ProtZ a partagé une image Docker sur son compte Docker Hub perso, et l’image a comme nom ngeissel/gladys:rflinkdev

Si tu veux lancer une image de test RFLink sur ton Pi, je peux te proposer la commande suivante:

docker run -d \
--log-opt max-size=10m \
--restart=always \
--privileged \
--network=host \
--name gladys-test-rflink \
-e NODE_ENV=production \
-e SERVER_PORT=8001 \
-e TZ=Europe/Paris \
-e SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production.db \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/gladysassistant_test_rflink:/var/lib/gladysassistant \
-v /dev:/dev \
-v /run/udev:/run/udev:ro \
ngeissel/gladys:rflinkdev

Tu noteras plusieurs changements:

  • J’ai changé le nom du container qui devient « gladys-test-rflink », pour éviter un conflit si tu as déjà un Gladys qui tourne
  • J’ai changé le port sur lequel écoute Gladys pour mettre 8001, pour éviter un conflit si tu as déjà un Gladys qui tourne
  • J’ai changé le volume des data Gladys (dossier dans lequel seront montés les données Gladys sur le disque), ici pour mettre « /var/lib/gladysassistant_test_rflink » (Ainsi, si tu veux clean ton pi après avoir fait tourner ce fichier, tu dois juste supprimer ce dossier)
  • J’ai changé l’image pour mettre « ngeissel/gladys:rflinkdev »

Une fois que ton container tourne, tu pourras accéder à Gladys en tapant « IP_RASPBERRY_PI:8001 ».

Si tu veux stopper ce container:

docker stop gladys-test-rflink

Si tu veux supprimer ce container:

docker rm gladys-test-rflink

Si tu veux aller chercher une nouvelle version de l’image

(si le dev a avancé sur son intégration):

docker pull ngeissel/gladys:rflinkdev

A savoir qu’un container Docker est immutable: si jamais tu a pull une nouvelle image, il faut stopper le container, supprimer le container puis docker run un nouveau container :slight_smile:

Conclusion

Voilà un exemple dans le cas du RFLink, mais tu peux changer le nom de l’image par ce que tu veux.

C’est peut-être du chinois si tu ne connais pas Docker, à mon avis ça vaut le coup de lire les bases de Docker si tu ne connais pas trop :slight_smile:

Le Sonoff Ewelink est déjà mergé et dispo dans Gladys 4 depuis un bout de temps! :slight_smile:

1 « J'aime »

Bonjour Pierre Gilles

je te remercie beaucoup pour cette explication détaillée, je vais pouvoir essayer de tester, maintenant que j’ai un fil conducteur.

Je suis déjà entrain de démystifier docker, en suivant des tutos sur youtube.

Oui je sais, et maintenant ça fonctionne tres bien et sans latence pour moi, mais tester c’était il y a quelque mois sur une PR de Ptit-Nico, après les modifs qu’il y avait apporté.
En tout cas merci, à toi et à la communauté, pour tout le travail effectué et le support que vous nous apportez,

1 « J'aime »

Pas de soucis :slight_smile: N’hésite pas si tu as des soucis lors de tes tests!

@pierre-gilles Je réactive cette discussion pour poser sensiblement la même question que Psoy : à savoir comment tester une PR en cours de développement, dans le cas où il n’y a pas d’image complète intégrant cette PR ?

@jparbel Deux possibilités :

  • Demander au dev de mettre en place une image, ou mettre en place une image toi même (C’est du clic dans Github, pas de commandes à faire…). C’est la solution la plus simple, ça met 30 secondes à cliquer sur un bouton sur Github pour lancer un build, et ensuite environ 1h pour faire un build initial, puis 5 minutes les prochains build grâce au cache Docker :slight_smile:

  • Mettre en place un environnement de développement Gladys, mais c’est destiné à un public avancé qui sait déjà développer sur une Stack Node.js / React ( Tuto sur le site sous MacOS/Linux => Mettre en place un environnement de développement sous Mac/Linux | Gladys Assistant ou Windows => Mettre en place un environnement de développement sous Windows | Gladys Assistant ). Je ne conseille pas de se lancer dans cette voie si tu n’as jamais dev sur cette stack ( après ça s’apprend, mais bon pas en 5 minutes c’est un métier :smiley: )

Pour rebondir sur le dernier message, savez vous comment bien configurer la création d’une image docker de test ?
Voilà ce que j’ai fait pour configurer les builds
1 - création d’un compte docker hub + un repo pour recevoir les images de tests bertrandda/gladys
2 - sur mon fork dans Github j’ai ajouté 3 secrets DOCKERHUB_USER “bertrandda”, DOCKERHUB_PASSWORD l’access token généré depuis mon compte docker et DOCKERHUB_REPO “gladys”
3 - lancement de la création de l’image depuis “Actions” → “Build gladys dev images”

Mais à chaque fois ça rate vers la fin savez vous pourquoi ? Build Gladys dev images · bertrandda/Gladys@ed30395 · GitHub

On voit authorization failed dans le log

User /password incorrect?

Edit: repo tu dois mettre bertrandda/gladys

1 « J'aime »

Pour l’utilisateur/mot de passe ça doit être bon, la partie Login to DockerHub est bien Succeeded.
Je viens de relancer avec bertrandda/gladys dans le repo je te dis si ça marche

Merci @VonOx ça fonctionne maintenant

2 « J'aime »

Bonjour,
Quand on teste, doit-on Créer un compte local avec notre e-mail ou peut-on Restaurer une sauvegarde Gladys Plus ?
Si on choisi de Créer un compte local, peut-on utiliser la même adresse e-mail ou doit-on en prendre une autre ?

Créer un compte local, je te déconseille de restaurer une sauvegarde Gladys Plus, car ça va connecter ce build de test à ton compte Gladys Plus de production (et donc déconnecter ta vrai instance)

Peu importe, met toto@toto.fr, ça change rien :slight_smile: L’email n’est pas utilisé, c’est juste un identifiant purement local pour le login