Développement

Python

Python

Un langage de programmation interprété multi-paradigme.

Nextcloud prometheus textfile exporter

Cela fait un petit moment que j’utilise Prometheus et Grafana pour mon NAS. Mais Fedora-Fr ainsi que ce blog tournaient encore sous une stack TIC (Telegraf, InfluxDB, Chronograf). C’est chose à présent corrigée. Bien qu’il existe déjà des exporter pour Nextcloud, je n’avais pas la volonté d’installer un nouveau service pour aller récupérer des logs déjà existants. J’ai donc entrepris de coder en python un parseur, qui va, récupérer les infos de Nextcloud en JSON pour les transformer en fichier texte compatible textfile. Les métriques de Nextcloud sont donc récupérées depuis Nextcloud puis rajoutées naturellement aux données exportées par node_expoter. Pour le moment ça donne ça : Métriques de…

SeedBoxSync

seedboxsync

Script for sync operations between your NAS and your seedbox.

SeedboxSync v3.0.1

Je viens de publier la version 3.0.1 de SeedboxSync. Pour ceux qui auraient loupé la communication précédente, la branche 3 correspond à une refonte totale de cet outil basé sur le framework Python Cement. La version 3.0.1 est une version de maintenance permettant notamment de mettre à jour la version de Cement en 3.0.6. Pour ceux qui veulent savoir ce qu’est SeedboxSync, vous pouvez le voir ici. Pour les autres, vous pouvez voir la liste des changements directement sur Github. Vous pouvez également télécharger ou mettre à jour votre version directement à partir de Pypi.

SeedBoxSync

seedboxsync

Script for sync operations between your NAS and your seedbox.

SeedboxSync v3 réécriture complète !

Je viens de publier une nouvelle version de SeedboxSync, la v3 ! Et cette version est une version majeure avec un grand « M ». En effet, si la v1 était la première version de mon script sous Python 2 (pour des raisons de dépendances Debian), la v2 était alors une adaptation plus qu’une réécriture en Python 3. Pour la v3, afin de faciliter les évolutions sur le programme, j’ai donc entrepris de le réécrire complètement. Pour cela je suis parti d’un micro framework de ligne de commande en Python : Cement. Pour la persistance des données, j’ai utilisé un micro ORM : peewee. Le résultat est un code plus propre et bien plus modulable. En effet,…

jQuery async Gravatar

jQuery async Gravatar

An asynchronous loading method for Gravatar images.

Sortie de jquery-async-gravatar v1.1.2

Je viens de mettre à jour mon plugins jQuery pour gérer de façon asynchrone le chargement de Gravatars. Au programme : Migration de grunt-qunit vers Karma. La raison est simple: grunt-qunit n’offrait pas de couverture de code ! Et lorsqu’on frôle les 95% c’est dommage de ne pas l’afficher !Côté CI/CD, je poursuis la migration de mes projets de Travis vers GitHub Actions et de CodeClimate vers SonarCloud. A noter que pour la partie GitHub Actions je vais bien plus loin qu’avant en allant jusqu’à la publication sur NPMJS à partir d’un tag GIT.Mise à jour des dépendances pour raisons de sécurités. Disponible sur GitHub et sur NPMJS.

Les GitHub Actions

GitHub Actions

Les GitHub Actions en action

GitHub Actions pour déployer son WordPress avec Deployer

GitHub a depuis quelques semaines mis à disposition pour tous son système de pipelines : les GitHub Actions. Dans un précédent article je vous avais décrit comment je déploie ce blog via Deployer. Jusqu’à présent, même si mon code était bien hébergé chez GitHub, je poussais encore en prod’ en lançant la commande depuis mon poste : php vendor/bin/dep deploy production -v J’ai profité de la fonctionnalité de pipeline intégrée à GitHub, pour remédier à cela et avoir un système 100% automatisé avec déploiement automatique de mon code poussé sur GitHub. WordPress & Composer Tout d’abord rappelons que mon blog a quelques particularités comme par exemple celle de gérer les dépendances depuis composer (sauf…

Deployer

Deployer: A deployment tool for PHP

Deployer: un outil de déploiement pour PHP.

Déployer votre application php avec Deployer

Cela va maintenant faire un peu plus d’1 an que ce blog est motorisé par WordPress et non plus par Dotclear. Pour rappel, lors de cette migration vers WordPress, afin d’avoir quelque chose d’un minimum industrialisé, de propre mais surtout qui me satisfasse, j’ai fait plusieurs choix techniques : Utiliser Timber pour gérer mon thème. Derrière ce choix, la raison était simple: je ne pouvais me faire à l’idée d’utiliser le (non-)moteur de template par…

SeedBoxSync

seedboxsync

Script for sync operations between your NAS and your seedbox.

SeedboxSync 2.0.1, synchronisation de votre seedbox et de votre NAS

Je viens de publier une nouvelle version de SeedboxSync. Pas de gros changements comme ça avait pu être le cas avec le v2.0.0. En effet, l’essentiel des changements concerne : Migration vers les pages GitHub et mise en place d’une nouvelle documentation. Les fichiers avec une taille de 0 octet provoquaient un exit, c’est à présent chose corrigé. La version applicative est à présent portée dans le code et on peu faire un seedboxsync --version. Pour ceux qui veulent savoir ce…

PyPI: Python Package Index

Uploader un package sur PyPi

Histoire de garder ça sous le coude et de le partager, voici un pense bête sur comment uploader un package sur PyPi.org. Les prérequis Se créer un compte sur PyPi, mais également sur l’index de test. L’index de test permet de tester avant de pousser en production… Personnellement j’y ai le même login mais pas le même mot de passe. Avoir les bons outils d’installés : sudo dnf install python3-wheel python3-setuptools Suivre les guidelines de packaging de PyPa, notamment la rédaction du setup.py en se basant sur le projet d’exemple de PyPa :…

SeedBoxSync

seedboxsync

Script for sync operations between your NAS and your seedbox.

SeedboxSync 2.0.0, synchronisation de votre seedbox et de votre NAS

La version 2.0.0 de SeedboxSync vient d’être libérée ! C’est quoi SeedboxSync ? Imaginez que vous téléchargiez des fichiers via le protocole BitTorrent, des fichiers libres de droit, ça va de soi. Imaginez que pour une raison X ou Y vous ne puissiez pas le faire à partir de votre connexion (et donc votre IP) et que pour télécharger vous passiez par un prestataire tiers (on est toujours dans de pures spéculations bien entendu). Vous vous retrouvez donc avec des fichiers non pas sur votre…

atom.io

atom

A hackable text editor for the 21st Century.

Atom pour remplacer Netbeans

J’avais, par le passé, fait un article sur mon passage d’Eclipse vers Netbeans. Je dois dire qu’au fil du temps, cet IDE m’a déçu : Cycle de vie assez long. Plugin Python qui n’est plus maintenu depuis près de 3 ans. Lourd (qui a dit Java ?). Oracle, qui via sa politique de rachat se retrouvait propriétaire à la fois d’Eclipse et de Netbeans. Il a depuis fait le choix d’Eclipse en lâchant…