Catégories
Non classé

Premiers pas

Et c’est parti ! …ou pas. Avant de commencer à coder quoi que ce soit, quelques règles s’imposent.

Organisation

Même si Sylvain et moi ne sommes que deux, nous nous sommes mis d’accord sur quelques règles pour ne pas nous marcher sur les pieds.

Git, Gitlab, etc.

Première règle absolue : ce qui est sur main est considéré comme étant du code en production. Cela implique que tout code en cours de développement est mis sur une branche à part tant qu’il n’est pas prêt pour la mise en production. On essaiera de faire idéalement une branche par fonctionnalité développée.

Lorsqu’une fonctionnalité est prête à être fusionnée dans main, on fera une merge request dans Gitlab afin d’approuver à deux la fusion.

Concernant les messages de commit, on utilisera les conventions données par git. Les messages sont en anglais et à l’impératif, leur titre ne doit pas faire plus de 50 caractères et le corps doit faire au plus 80 caractères de large.

Suivi de l’avancement

Les issues de Gitlab permettent de discuter sur des bugs ou des fonctionnalités, et peuvent être visualisées comme un kanban. On utilisera donc celles-ci pour suivre le développement des fonctionnalités.

Licence

Comme imposé pour notre projet, tout le code que nous écrirons sera sous licence libre duale Apache License 2.0 / MIT.


En résumé

  • branche main = production
  • Les fonctionnalités sont isolées sur des branches à part
  • On utilise les pull requests pour fusionner avec main
  • Les messages de commit :
    • en anglais
    • titre à l’impératif
    • titre <= 50 caractères
    • corps : lignes de moins de 80 caractères
  • issues Gitlab pour le suivi
  • Licence Apache License 2.0 / MIT

C’est bon on peut y aller ?

Il faut d’abord savoir où l’on va ! Avant de pouvoir développer sur notre carte développement nrf52840 une interface ZBOSS en Rust pour communiquer en ZigBee, il faut se former à chacun de ces éléments. Notre démarche initiale est la suivante :

  1. Beginner workshop de Ferrous Systems
  2. Advanced workshop de Ferrous Systems
  3. Etudier le fonctionnement de ZigBee et de 802.15.4
  4. Prendre en main l’interface ZigBee/ZBOSS de Nordic : https://infocenter.nordicsemi.com/index.jsp?topic=%2Fstruct_sdk%2Fstruct%2Fsdk_thread_zigbee_latest.html&cp=7_3
  5. Réaliser les bindings Rust de ZBOSS

On peut envisager si le temps nous le permet d’aller plus loin :

  • Faire une surcouche haut niveau si l’API ZBOSS est peu pratique
  • Réfléchir à des applications IoT, domotique, etc.
  • Utilisation conjointe de ZigBee et du Bluetooth

Nous avons commencé par prendre en main la carte de développement en réalisant les workshops organisés par Ferrous Systems, mais ça ce sera pour une prochaine fois…

2 réponses sur « Premiers pas »

Ces règles concernant les messages de commit seront-elles vérifiées lors de l’apport d’un commit sur main, que ce soit de manière directe ou à travers une merge request ?

Pour l’instant elles seront vérifiées à la main, mais on va peut-être mettre des push rules pour s’assurer qu’elles soient respectées 🙂

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *