localg.hosthttps://localg.host/2019-07-31T00:00:00+02:00Watchghost version 0.3.02019-07-31T00:00:00+02:002019-07-31T00:00:00+02:00Arthur Vuillardtag:localg.host,2019-07-31:/2019-07-31-version-0.3.0.html<p>La version 0.3.0 de watchghost est disponible depuis quelques minutes sur <a class="reference external" href="https://pypi.org/project/watchghost/">PyPI</a>.</p>
<p>Il y a eu deux gros changements dans cette version : le remplacement de Tornado par AioHttp et le remplacement du format JSON par le format TOML pour les fichiers de configuration.</p>
<p>Le remplacement de Tornado par …</p><p>La version 0.3.0 de watchghost est disponible depuis quelques minutes sur <a class="reference external" href="https://pypi.org/project/watchghost/">PyPI</a>.</p>
<p>Il y a eu deux gros changements dans cette version : le remplacement de Tornado par AioHttp et le remplacement du format JSON par le format TOML pour les fichiers de configuration.</p>
<p>Le remplacement de Tornado par AioHttp se justifie par les différences dans la boucle événementielle asynchrone entre celle de Tornado et celle d'AioHttp. Ce changement nous permet de n'avoir plus qu'une boucle événementielle, sans perdre de fonctionnalités.</p>
<p>Nous avons souhaité remplacé JSON par TOML car JSON n'est pas très lisible (pour un·e humain·e), et ne permet pas de commenter son fichier de configuration, ce qui peut s'avérer intéressant. Nous avons profité de ce changement pour ne plus rendre obligatoire la présence des 4 fichiers de configuration : si l'un n'est pas présent, la configuration est considérée comme si le fichier était vide. Nous avons créé un outil permettant de réaliser ce changement de format automatiquement (voir <a class="reference external" href="https://watchghost.readthedocs.io/en/latest/changelog.html#backward-incompatible-changes">les notes de sortie</a>).</p>
<p>Dans les autres changements :</p>
<ul class="simple">
<li>l'ajout d'un code de conduite pour les participant·e·s au projet</li>
<li>la possibilité de recharger l'application (avec le signal HUP)</li>
<li>l'ajout d'un logger InfluxDB qui permet d'historiser les événements (et qui est utilisé par <a class="reference external" href="https://gitlab.com/localg-host/broghost/">BroGhost</a>, notre application qui publie l'historique d'accès à un service)</li>
<li>l'ajout d'une option get_info au service Http. Cette option get_info permet de lire le contenu JSON d'une réponse HTTP et d'afficher ce résultat dans l'interface web</li>
<li>l'ajout d'un service Whois, qui permet de vérifier la date de renouvellement des noms de domaines</li>
<li>l'utilisation de fichiers Javascript et CSS minifiés</li>
<li>l'ajout d'une favicon dans le tableau de bord</li>
<li>la possibilité de ne pas afficher les services à l'état INFO dans le tableau de bord, ce qui permet d'accéder rapidement aux services problématiques</li>
<li>la possibilité de grouper les services par tags et non par hôtes dans le tableau de bord, ce qui permet de visualiser des informations sur un service réparti sur plusieurs hôtes</li>
<li>l'amélioration de l'affichage des résultats dans la page détail d'un service</li>
<li>l'utilisation de timezone dans la représentation des dates et heures</li>
</ul>
<p>Merci aux 6 contributeurs et contributrices pour le travail réalisé.</p>
<p>➡️ plus d'information dans la <a class="reference external" href="http://watchghost.readthedocs.io">documentation</a>, et merci de nous faire part de vos bugs ou envies sur <a class="reference external" href="https://gitlab.com/localg-host/watchghost/issues">notre forge logicielle</a></p>
Watchghost version 0.2.12018-11-07T00:00:00+01:002018-11-07T00:00:00+01:00Samtag:localg.host,2018-11-07:/2018-11-07-version-0.2.1.html<p>La version 0.2.1 est disponible sur <a class="reference external" href="https://pypi.org/project/watchghost/">PyPI</a>.</p>
<p>Parmi les nouveautés, la console web s'offre un relooking (aperçu lors de la <a class="reference external" href="https://www.youtube.com/watch?v=arJhcm1_fiQ">PyConFR 2018</a>). La console web a été réécrite avec le framework javascript <a class="reference external" href="https://vuejs.org/">Vue.js</a> et la bibliothèque CSS <a class="reference external" href="http://getbootstrap.com/">Bootstrap 4</a>.</p>
<p>Afin de réaliser cette nouvelle console web, nous …</p><p>La version 0.2.1 est disponible sur <a class="reference external" href="https://pypi.org/project/watchghost/">PyPI</a>.</p>
<p>Parmi les nouveautés, la console web s'offre un relooking (aperçu lors de la <a class="reference external" href="https://www.youtube.com/watch?v=arJhcm1_fiQ">PyConFR 2018</a>). La console web a été réécrite avec le framework javascript <a class="reference external" href="https://vuejs.org/">Vue.js</a> et la bibliothèque CSS <a class="reference external" href="http://getbootstrap.com/">Bootstrap 4</a>.</p>
<p>Afin de réaliser cette nouvelle console web, nous avons réalisé plusieurs URLs permettant de lister les différentes ressources définies dans WatchGhost.</p>
<p>La documentation a été corrigée : les exemples de configuration étaient du Python alors qu'ils auraient dû être au format JSON.</p>
<p>Une correction a été apportée aux éléments nécessitant une configuration TLS afin d'être compatible avec les changements réalisés en Python 3.7.</p>
<p>Enfin, l'empaquetage Python a été mis à jour afin de tirer profit de la configuration via le fichier setup.cfg. En outre toutes les configurations des outils Python ont été centralisées dans ce fichier. Une erreur dans cette configuration nous a amené à sortir une version 0.2.1 très rapidement après la sortie de la version 0.2.0 : le champ <tt class="docutils literal">license</tt> est destiné à recevoir le nom de la licence mais pas son contenu complet. Il semble qu'un champ <tt class="docutils literal">license_file</tt> soit en préparation pour les prochaines versions de <a class="reference external" href="https://pypi.org/project/setuptools/">setuptools</a> (cf <a class="reference external" href="https://github.com/pypa/setuptools/pull/1536">la pull request 1536 de setuptools</a>).</p>
<p>La commande pour lancer WatchGhost a également évolué :</p>
<div class="highlight"><pre><span></span>pip install watchghost
watchghost
</pre></div>
<p>En développement, on peut lancer l'application grâce à la commande <tt class="docutils literal">python <span class="pre">-m</span> watchghost</tt>.</p>
<p>➡️ plus d'information dans la <a class="reference external" href="http://watchghost.readthedocs.io">documentation</a>.</p>
Version 0.1.02018-05-17T00:00:00+02:002018-05-17T00:00:00+02:00Guillaume Ayoubtag:localg.host,2018-05-17:/2018-05-17-version-0.1.0.html<p>Grande nouvelle !</p>
<p><tt class="docutils literal">pip install watchghost</tt></p>
<p>Après des mois et des mois de dur labeur, la première version de WatchGhost est
enfin disponible sur PyPI. Nous avons également mis en ligne de <a class="reference external" href="http://watchghost.readthedocs.io">la
documentation</a> pour que vous puissiez
installer et configurer le gentil fantôme chez vous.</p>
<p>N'hésitez pas à participer sur …</p><p>Grande nouvelle !</p>
<p><tt class="docutils literal">pip install watchghost</tt></p>
<p>Après des mois et des mois de dur labeur, la première version de WatchGhost est
enfin disponible sur PyPI. Nous avons également mis en ligne de <a class="reference external" href="http://watchghost.readthedocs.io">la
documentation</a> pour que vous puissiez
installer et configurer le gentil fantôme chez vous.</p>
<p>N'hésitez pas à participer sur <a class="reference external" href="https://gitlab.com/localg-host/watchghost">GitLab</a> !</p>
Réunion de l'équipe2016-11-30T00:00:00+01:002016-11-30T00:00:00+01:00Arthur Vuillardtag:localg.host,2016-11-30:/2016-11-30-reunion-equipe.html<p>Les membres de l'équipe Localghost vont se réunir le lundi 5 décembre à partir de 20h chez GRAP (3 grande rue des feuillants, Lyon 1er).</p>
<p>Nous discuterons des sondes SSH pour Watchghost et de la capacité à mutualiser plusieurs instances de Watchghost sur un serveur.</p>
<p>Si jamais le projet vous …</p><p>Les membres de l'équipe Localghost vont se réunir le lundi 5 décembre à partir de 20h chez GRAP (3 grande rue des feuillants, Lyon 1er).</p>
<p>Nous discuterons des sondes SSH pour Watchghost et de la capacité à mutualiser plusieurs instances de Watchghost sur un serveur.</p>
<p>Si jamais le projet vous intéresse, n'hésitez pas à nous rendre visite pendant cette réunion ou à nous faire signe sur <a class="reference external" href="mailto:contact@localg.host">contact@localg.host</a> !</p>
À propos de Localghost2016-09-17T00:00:00+02:002016-09-17T00:00:00+02:00Arthur Vuillardtag:localg.host,2016-09-17:/2016-09-17-a-propos.html<p>Localghost est un regroupement de développeu·rs·ses s'occupant également de l'administration système des applications qu'ils·elles développent.</p>
<p>Localghost est né de l'envie de <strong>mieux</strong> faire dans l'exploitation d'applications informatiques. Cette envie se traduit par <strong>le développement d'outils</strong>, <strong>la mise en place de techniques</strong> et <strong>le partage de ces éléments …</strong></p><p>Localghost est un regroupement de développeu·rs·ses s'occupant également de l'administration système des applications qu'ils·elles développent.</p>
<p>Localghost est né de l'envie de <strong>mieux</strong> faire dans l'exploitation d'applications informatiques. Cette envie se traduit par <strong>le développement d'outils</strong>, <strong>la mise en place de techniques</strong> et <strong>le partage de ces éléments</strong> au sein du groupe mais aussi au plus grand nombre.</p>
<div class="section" id="notre-proposition">
<h2>Notre proposition</h2>
<p>Notre premier champ d'action est <strong>la surveillance du fonctionnement de nos applications</strong>. Il s'agit là de mettre en place des sondes permettant de détecter automatiquement les dysfonctionnements et leurs résolutions, et d'alerter un humain en cas de problème.</p>
<p>Nous nous intéressons également à la <strong>reproductibilité des déploiements</strong>. C'est-à-dire faire en sorte que le déploiement d'une application soit facilement réalisable d'un serveur à un autre. Il s'agit de formaliser la description de ces déploiements pour pouvoir les relancer aisément.</p>
<p>Enfin, nous souhaitons assurer la mise en place de <strong>Plans de Reprise d'Activité</strong> (PRA). Un PRA définit les étapes pour remonter un service si le déploiement initial n'est plus disponible. Pour ce faire, la reproductibilité des déploiements dont nous avons parlé au paragraphe précédent est nécessaire tout comme l'instauration de bonnes pratiques au niveau des sauvegardes et de leur restauration.</p>
</div>
<div class="section" id="nos-valeurs">
<h2>Nos valeurs</h2>
<p>Nous sommes issus de la communauté du <strong>Logiciel Libre</strong>. Il est important que nos productions soient diffusées le plus largement possible et puissent être utiles au plus grand nombre de personnes.</p>
<p>Le partage est un élément fondateur de notre regroupement. Nous sommes issus de 3 entreprises différentes et nous nous sommes regroupés de manière informelle pour discuter et échanger sur nos pratiques respectives.</p>
</div>
<div class="section" id="nos-membres">
<h2>Nos membres</h2>
<p>Nos membres fondateurs sont principalement issus de la communauté Python de Lyon, mais nous ne nous limitons ni au langage de programmation ni à la position géographique de chaque personne.</p>
<p>Vous pouvez retrouver nos membres sur <a class="reference external" href="https://gitlab.com/groups/localg-host/group_members">notre groupe Gitlab</a>.</p>
</div>
<div class="section" id="notre-nom">
<h2>Notre nom</h2>
<p>Il est rigolo (notre hostname aussi).</p>
</div>
<div class="section" id="notre-logo">
<h2>Notre logo</h2>
<p>Il est trop mignon.</p>
</div>
<div class="section" id="participer">
<h2>Participer ?</h2>
<p>Si vous souhaitez participer, <a class="reference external" href="https://gitlab.com/localg-host/">rejoignez nous sur Gitlab</a> ou écrivez nous à l'adresse <a class="reference external" href="mailto:contact@localg.host">contact@localg.host</a>.</p>
</div>