Un guide du débutant pour contribuer à Apache Cassandra
Commencez à participer à un projet de base de données open source utilisé pour alimenter les services Internet dans le monde entier.
Apache Cassandra est une base de données NoSQL open source approuvée par des milliers d'entreprises à travers le monde pour son évolutivité et sa haute disponibilité qui ne compromettent pas les performances. Contribuer à un système distribué aussi largement utilisé peut sembler intimidant, c'est pourquoi cet article vise à vous fournir un point d'entrée simple.
Il y a de bonnes raisons de contribuer à Cassandra, telles que :
- Obtenir la reconnaissance de l'Apache Software Foundation (ASF) en tant que contributeur
- Contribuer à un projet open source utilisé par des millions de personnes dans le monde et qui alimente les services Internet d'entreprises telles qu'American Express, Bloomberg, Netflix, Yelp, etc.
- Faire partie d'une communauté ajoutant de nouvelles fonctionnalités et s'appuyant sur la sortie de Cassandra 4.0, notre version la plus stable de l'histoire du projet.
Comment commencer
Apache Cassandra est un grand projet, ce qui signifie que vous trouverez quelque chose dans vos compétences auquel contribuer. Chaque contribution, aussi petite soit-elle, compte et est grandement appréciée. Un excellent point de départ est le guide de démarrage.
Le projet Apache Cassandra participe également au Google Summer of Code. Pour avoir une idée de ce que cela implique, veuillez lire ce billet de blog rédigé par Paolo Motta, membre du PMC.
Choisissez sur quoi travailler
Les correctifs soumis peuvent inclure des corrections de bogues, des modifications de la base de code Java, des améliorations des outils (Java ou Python), de la documentation, des tests ou toute autre modification de la base de code. Bien que le processus de contribution au code soit toujours le même, la quantité de travail et le temps nécessaires pour faire accepter un correctif dépendent du type de problème que vous résolvez.
Consulter les correctifs d’autres personnes est toujours apprécié. Pour en savoir plus, lisez la liste de contrôle de révision. Si vous êtes un utilisateur de Cassandra et que vous pouvez nous aider en répondant à certaines questions de la liste des utilisateurs, cela constitue une excellente contribution.
Le moyen le plus simple de trouver un ticket sur lequel travailler est de rechercher dans Jira de Cassandra les problèmes marqués comme des fruits à portée de main. Nous utilisons cette étiquette pour signaler les problèmes qui constituent de bonnes tâches de démarrage pour les débutants. Si vous n'avez pas de connexion à Jira d'ASF, vous devrez vous inscrire.
Voici quelques façons simples de commencer à vous impliquer :
- Tests : en vous renseignant sur Cassandra, vous pouvez ajouter ou améliorer des tests, tels que CASSANDRA-16191. Vous pouvez en savoir plus sur le framework de test Cassandra sur notre page Tests. Des tests supplémentaires et des bugs signalés par Jira ou des suggestions d'amélioration sont toujours les bienvenus.
- Documentation : ce n'est pas toujours une solution facile, mais c'est très important. Voici un exemple de ticket : CASSANDRA-16122. Vous pouvez trouver plus d'informations sur la contribution à la documentation Cassandra sur notre page Travailler sur la documentation.
- Enquêter ou corriger les bugs signalés : Voici un exemple : CASSANDRA-16151.
- Répondez aux questions : abonnez-vous à la liste de diffusion des utilisateurs, recherchez les questions dont vous connaissez la réponse et aidez les autres en répondant. Consultez la page Communauté pour plus de détails sur la façon de vous abonner à la liste de diffusion.
Ce ne sont là que quatre façons de commencer à aider le projet. Si vous souhaitez en savoir plus sur les systèmes distribués et contribuer d'une autre manière, consultez la documentation.
Ce dont vous avez besoin pour contribuer au code
Pour apporter des contributions au code, vous aurez besoin de :
- SDK Java
- Fourmi Apache
- Git
- Python
Obtenez le code et testez
Obtenez le code avec Git, travaillez sur le sujet, utilisez votre IDE préféré et suivez le style de codage Cassandra. Vous pouvez en savoir plus sur notre page Construction et intégration IDE.
$ git clone https://git-wip-us.apache.org/repos/asf/cassandra.git cassandra-trunk
De nombreux contributeurs nomment leurs succursales en fonction du numéro de ticket et de la version de Cassandra. Par exemple:
$ git checkout -b CASSANDRA-XXXX-V.V
$ ant
Testez l'environnement :
$ ant test
Tester une base de données distribuée
Lorsque vous avez terminé, assurez-vous que tous les tests (y compris les vôtres) réussissent avec Ant, comme décrit dans Tests. Si vous pensez qu'un échec de test n'est pas lié à votre modification, il peut être utile de vérifier l'état du test en effectuant une recherche dans l'outil de suivi des problèmes ou en consultant les résultats CI pour la version en amont concernée.
Les suites de tests complètes prennent plusieurs heures, il est donc courant d'exécuter des tests pertinents localement avant de télécharger un correctif. Une fois qu'un correctif a été téléchargé, le réviseur ou le committer peut aider à configurer les tâches CI pour exécuter les suites de tests complètes.
Des ressources supplémentaires sur le test de Cassandra incluent :
- Le référentiel de tests distribués Cassandra. Vous pouvez trouver des informations de configuration et des conditions préalables dans le fichier README.
- Le gestionnaire de cluster Cassandra LISEZMOI
- Un excellent article de blog de la communauté sur les approches de test de Cassandra 4.0
- Harry, un outil de test de fuzz pour Apache Cassandra.
Soumettre votre patch
Avant de soumettre un correctif, veuillez vérifier que vous suivez les conventions de style de code de Cassandra. Le moyen le plus simple de soumettre votre correctif est de créer un fork sur le dépôt Cassandra sur GitHub et de pousser votre branche :
$ git push --set-upstream origin CASSANDRA-XXXX-V.V
Soumettez votre patch en publiant le lien vers votre branche nouvellement créée dans votre ticket Jira. Utilisez le bouton Soumettre le patch.
Pour en savoir plus, lisez la documentation complète sur Contribuer à Cassandra. Si vous avez encore des questions, contactez la communauté des développeurs.
L'auteur souhaite remercier la communauté Apache Cassandra pour ses contributions inlassables au projet, son dévouement envers les utilisateurs du projet et ses efforts continus pour améliorer le processus d'intégration de nouveaux contributeurs.
Les contributions et le dévouement de nombreuses personnes au projet et à la communauté Apache Cassandra nous ont permis d'atteindre la version 4.0, une étape importante. Alors que nous regardons vers l'avenir et cherchons à encourager de nouveaux contributeurs, nous souhaitons reconnaître les efforts de chacun depuis sa création il y a plus de 12 ans. Cela n’aurait pas été possible sans votre aide. Merci !