LE BLOG DE RICK Chasseurs de succès Linux Random WU

Par Équipe CDS dans Chasseurs de succès le 09/09/2023.


La rentrée de Krikbi

Deuxième billet après presque un an d'absence. Petit point sur la rentrée, notamment avec les quelques maintenances qu'il y a eu. Un futur billet sera écrit pour donner la feuille de route de cette rentrée 2023 pour le développement de notre bot !

Encore une migration ? Et deux en plus !

Et oui, on a encore déplacé la base. Mais pas que ! On a aussi déplacé les bots, pour des raisons de sécurités et d'indépendance. Pourquoi "les" ? Parce que le bot permettant de vous avertir des nouveaux succès (dans le salon #steam-feed) a aussi été développé par nos soins (Kekwel).

Nous avons tout "conteneurisé". Avant, si vous connaissiez l'URL et les identifiants de la base, vous pouviez accéder d'un claquement de doigts. Maintenant, elle n'est plus que visible par les bots et personne d'autre. On utilise Docker pour cela. Vous pouvez retrouver tous les fichiers de configuration sur les dépôts respectifs.

Mais pourquoi avoir dû faire deux maintenances ? La première était pour migrer la base de données ainsi que le bot classique. La deuxième a permis de bouger le deuxième bot tout en changeant drastiquement l'architecture mise en place lors de la migration, afin de faciliter le déploiement des prochaines mises à jour et ce de manière sécurisée.

Des changements plus profonds

Par rapport aux coupures

Ces deux coupures sont le fruit de beaucoup de flemmardise. C'était en projet depuis bientôt un an, mais par manque de temps ou de volonté, elles ont été repoussées plusieurs fois. Comme indiqué plus haut, ces changements sont tout simplement la conteneurisation de l'application et la création d'un environnement Docker de manière plus globale pour y intégrer la base de données. Avant, n'importe qui pouvait se connecter à la base, tant qu'il avait les identifiants. Il y avait un risque de fuite.

architecture avant modification

Maintenant, il faut se connecter à la machine pour pouvoir manipuler la base de données, ce qui réduit drastiquement le risque, vu que cette connexion se faire de manière plus sécurisée. La base n'est visible que dans un réseau interne au serveur.

architecture après modification

Lors de la première maintenance, seuls le bot et la base ont été mis en place. La deuxième maintenance a permis d'intégrer le feed.

Autre avantage non négligeable de cette architecture : cela permet aux développeurs de lancer facilement un environnement sans devoir tout mettre en place. Une commande et c'est bon, on peut commencer à développer !

Et dernier avantage, tout aussi non négligeable, le coût d'hébergement du bot et de la base de données !

Nous sommes passés par plusieurs hébergeurs (en local, des hébergeurs gratuit mais très limité, à AWS (Amazon)) et cela provoquait des soucis majeurs comme des coupures involontaires et des coûts..

Maintenant, le bot et la base de données se situe sur un serveur que je partage avec 2 autres personnes. On a une plus grande liberté sur ce que l'on peut faire mais aussi une réduction des coûts d'hébergement !

Github

Nous hébergeons notre code sur Github. Cela nous permet d'utiliser les actions Github, outils qui automatisent des actions. Nous avons mis en place un workflow pour ça qui va construire tout seul les images Docker avant de les pousser dans un registre. Lors du déploiement, il ne nous reste plus qu'à pull les images ainsi faites, même pas besoin de cloner un gros dépôt !

Je veux contribuer !

Si vous souhaitez contribuer, envoyez-nous votre proposition avant, cela vous évitera de recevoir un refus lors de la PR.

Vous souhaitez contribuer pour cette rentrée ? Pas de soucis ! Comme les dépôts commencent à être nombreux, nous avons tout regroupé sous une organisation Github. Vous pourrez y retrouver tous les codes développés sous licence AGPL 3.0. Il vous suffit alors de forker, modifier le code et faire une Pull Request sur la branche dev du dépôt.

Et le site ?

Le site devait avoir une bêta en fin d'année dernière. Elle n'a cependant pas eu lieu à cause de divers problèmes. Bien que plusieurs éléments de conceptions (tel que l'architecture de l'API et des conteneurs) ont été réalisés, d'avoir une base solide, le manque de temps et la non préparation de l'interface a eu raison des ambitions du projet.

En attendant un regain de motivation, le site restera au point mort dans son avancement.

Si jamais vous savez designer des sites et que vous voulez aider à la conception, n'hésitez pas à nous envoyer un message !

Pour finir

Vous savez maintenant tout sur ce qui attend le bot avec cette rentrée ! Ces modifications propres au développement vont permettre des mises à jours plus fluides et ouvrent la porte aux nouveaux contributeurs.

Bonne chasse !