Skip to content

Contribuer au projet open-source OTOBO

OTOBO est open source sous l'organisation GitHub RotherOSS (https://github.com/RotherOSS/otobo). Si vous souhaitez signaler des bugs ou contribuer avec votre propre code, suivez ce workflow :


1. Workflow GitHub

1.1 Fork & Clone

  1. Créez un fork de https://github.com/RotherOSS/otobo.
  2. Clonez votre fork localement :
    bash
    git clone https://github.com/<votre-user>/otobo.git
    cd otobo

1.2 Branching

Créez une nouvelle branche pour chaque modification :

bash
git checkout -b feature/<courte-description>

Exemple :

bash
git checkout -b feature/add-hello-world-module

1.3 Commit & Push

  1. Implémentez votre code.

  2. Ajoutez des messages de commit significatifs :

    bash
    git add .
    git commit -m "Adds HelloWorld module with basic functionality"
  3. Poussez votre branche :

    bash
    git push origin feature/add-hello-world-module

1.4 Pull Request

  1. Ouvrez votre fork sur GitHub.
  2. Cliquez sur Compare & pull request.
  3. Décrivez brièvement dans le texte du PR ce que fait votre fonctionnalité/correction de bug et pourquoi elle est importante.
  4. Sélectionnez la branche cible appropriée (généralement master ou development).

2. Style de code & Tests

2.1 CodePolicy

RotherOSS utilise l'outil CodePolicy (https://github.com/RotherOSS/CodePolicy) pour vérifier les standards de codage.

  • Installation :

    bash
    cpanm CodePolicy
  • Exécution à la racine du dépôt :

    bash
    CodePolicy --check .

2.2 Modules Perl & POD

  • Chaque module Kernel::System::* et Kernel::Modules::* doit contenir de la documentation POD.
  • Déclarez les dépendances dans our @ObjectDependencies.
  • Assurez-vous d'utiliser use strict; use warnings;.

2.3 Tests unitaires

OTOBO utilise les tests Mojolicious et [Test::More]. Placez vos tests dans t/ :

bash
prove -l t/MyModule.t

3. Gestion des issues & Revues

3.1 Ouverture d'issues

  • Recherchez d'abord les issues existantes.
  • Créez une issue avec un titre, des étapes de reproduction, des logs et des captures d'écran (si nécessaire).

3.2 Labels & Templates

  • Utilisez les labels bug, enhancement, question.
  • Suivez les templates d'issues et de PR dans le dépôt.

3.3 Revues de code

  • Répondez rapidement aux commentaires de revue dans le PR.
  • Ajoutez des tests ou modifiez le style si les relecteurs le suggèrent.
  • Après approbation, votre PR sera fusionné.

4. Communauté & Support

Bonne chance pour votre contribution à OTOBO !