testcontainers / testcontainers/testcontainers-python

New Container: Couchbase

Ouverte
#788 2 commentaires 1 réaction 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

🚀 enhancement
Langage dominant
Python
Étoiles
2.3k
Forks
386
Merge moyen
4 h 40 min
PR mergées (30 j)
1

Description

What is the new container you'd like to have?

I would like to contribute a Couchbase container. More documentation here.

Couchbase Server is a powerful NoSQL database designed for high performance and scalability. It provides fast, low-latency data access with built-in replication and high availability. It also supports SQL-like queries through N1QL, making it easy to work with for developers familiar with relational databases.

I am proposing a dedicated Couchbase TestContainer for integration/system testing when using Couchbase as a NoSQL database.

Why not just use a generic container for this?

A dedicated custom Couchbase container is beneficial because it provides an abstraction layer when using it together with couchbase-python-client library. The container also allows for the simple and easy setup and interactions with the Couchbase database server via the couchbase-python-client.

Additionally, the container requires some initialization steps before it is ready to serve requests, such as setting up authentication credentials and creating a default bucket, scope, and collection. There are also several ports that need to be configured. Having these steps handled automatically in a dedicated Couchbase TestContainer class simplifies the process and ensures that the test container is ready to use quickly, with most of the necessary setup pre-configured. This results in a smoother integration and testing experience.

Other references:

The Java version of Testcontainers already supports Couchbase and is widely used within the community. Given its popularity, it would be beneficial to have similar functionality available for Python as well. Below are references to the Couchbase Testcontainers in Java:

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par examiner les références Java Couchbase Testcontainers et la documentation de démarrage de Couchbase avec Docker. Définissez l’initialisation du conteneur Python, les identifiants, la configuration de Bucket/Scope/Collection, les ports et les interactions avec couchbase-python-client. Le travail est considéré comme terminé lorsqu’une classe Testcontainers dédiée est prête pour les tests d’intégration et les tests système, avec ces étapes de configuration gérées automatiquement.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
docker, python
Domaine
database, testing
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
48/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.