testcontainers_modules/
lib.rs

1// let's document our code for other/future developers
2#![deny(missing_docs)]
3#![cfg_attr(docsrs, deny(rustdoc::broken_intra_doc_links))]
4#![cfg_attr(docsrs, feature(doc_cfg))]
5#![doc(
6    html_logo_url = "https://raw.githubusercontent.com/testcontainers/testcontainers-rs-modules-community/main/logo.svg"
7)]
8#![doc = include_str!("../README.md")]
9//! Please have a look at the documentation of the separate modules for examples on how to use the module.
10
11#[cfg(feature = "anvil")]
12#[cfg_attr(docsrs, doc(cfg(feature = "anvil")))]
13/// **Anvil** (local blockchain emulator for EVM-compatible development) testcontainer
14pub mod anvil;
15
16#[cfg(feature = "azurite")]
17#[cfg_attr(docsrs, doc(cfg(feature = "azurite")))]
18/// **Azurite** (azure storage emulator) testcontainer
19pub mod azurite;
20
21#[cfg(feature = "clickhouse")]
22#[cfg_attr(docsrs, doc(cfg(feature = "clickhouse")))]
23/// **Clickhouse** (analytics database) testcontainer
24pub mod clickhouse;
25#[cfg(feature = "cncf_distribution")]
26#[cfg_attr(docsrs, doc(cfg(feature = "cncf_distribution")))]
27/// **CNCF Distribution** (container registry) testcontainer
28pub mod cncf_distribution;
29#[cfg(feature = "cockroach_db")]
30#[cfg_attr(docsrs, doc(cfg(feature = "cockroach_db")))]
31/// **CockroachDB** (distributed database) testcontainer
32pub mod cockroach_db;
33#[cfg(feature = "consul")]
34#[cfg_attr(docsrs, doc(cfg(feature = "consul")))]
35/// **Consul** (identity-based networking) testcontainer
36pub mod consul;
37#[cfg(feature = "databend")]
38#[cfg_attr(docsrs, doc(cfg(feature = "databend")))]
39/// **Databend** (analytics database) testcontainer
40pub mod databend;
41#[cfg(feature = "dex")]
42#[cfg_attr(docsrs, doc(cfg(feature = "dex")))]
43/// **Dex** (OIDC provider) testcontainer
44pub mod dex;
45#[cfg(feature = "zitadel")]
46#[cfg_attr(docsrs, doc(cfg(feature = "zitadel")))]
47/// **Zitadel** (identity and access management) testcontainer
48pub mod zitadel;
49
50#[cfg(feature = "dynamodb")]
51#[cfg_attr(docsrs, doc(cfg(feature = "dynamodb")))]
52/// **DynamoDB** (NoSQL database) testcontainer
53pub mod dynamodb_local;
54#[cfg(feature = "elastic_search")]
55#[cfg_attr(docsrs, doc(cfg(feature = "elastic_search")))]
56/// **Elasticsearch** (distributed search engine) testcontainer
57pub mod elastic_search;
58#[cfg(feature = "elasticmq")]
59#[cfg_attr(docsrs, doc(cfg(feature = "elasticmq")))]
60/// **ElasticMQ** (message queue) testcontainer
61pub mod elasticmq;
62#[cfg(feature = "gitea")]
63#[cfg_attr(docsrs, doc(cfg(feature = "gitea")))]
64/// **Gitea** (self-hosted Git service) testcontainer
65pub mod gitea;
66#[cfg(feature = "google_cloud_sdk_emulators")]
67#[cfg_attr(docsrs, doc(cfg(feature = "google_cloud_sdk_emulators")))]
68/// **googles cloud sdk emulator** testcontainer
69pub mod google_cloud_sdk_emulators;
70#[cfg(feature = "hashicorp_vault")]
71#[cfg_attr(docsrs, doc(cfg(feature = "hashicorp_vault")))]
72/// ‎**HashiCorp Vault** (secrets management) testcontainer
73pub mod hashicorp_vault;
74#[cfg(feature = "k3s")]
75#[cfg_attr(docsrs, doc(cfg(feature = "k3s")))]
76/// **K3s** (lightweight kubernetes) testcontainer
77pub mod k3s;
78#[cfg(feature = "kafka")]
79#[cfg_attr(docsrs, doc(cfg(feature = "kafka")))]
80/// **Apache Kafka** (data streaming) testcontainer
81pub mod kafka;
82#[cfg(feature = "kwok")]
83#[cfg_attr(docsrs, doc(cfg(feature = "kwok")))]
84/// **KWOK Cluster** (Kubernetes WithOut Kubelet) testcontainer
85pub mod kwok;
86#[cfg(feature = "localstack")]
87#[cfg_attr(docsrs, doc(cfg(feature = "localstack")))]
88/// **LocalStack** (local AWS emulation) testcontainer
89pub mod localstack;
90#[cfg(feature = "mariadb")]
91#[cfg_attr(docsrs, doc(cfg(feature = "mariadb")))]
92/// **MariaDB** (relational database) testcontainer
93pub mod mariadb;
94#[cfg(feature = "meilisearch")]
95#[cfg_attr(docsrs, doc(cfg(feature = "meilisearch")))]
96/// **Meilisearch** (search engine) testcontainer
97pub mod meilisearch;
98#[cfg(feature = "minio")]
99#[cfg_attr(docsrs, doc(cfg(feature = "minio")))]
100/// **minio** (object storage) testcontainer
101pub mod minio;
102#[cfg(feature = "mongo")]
103#[cfg_attr(docsrs, doc(cfg(feature = "mongo")))]
104/// **MongoDB** (NoSql database) testcontainer
105pub mod mongo;
106#[cfg(feature = "mosquitto")]
107#[cfg_attr(docsrs, doc(cfg(feature = "mosquitto")))]
108/// **mosquitto** (mqtt message broker) testcontainer
109pub mod mosquitto;
110#[cfg(feature = "mssql_server")]
111#[cfg_attr(docsrs, doc(cfg(feature = "mssql_server")))]
112/// **Microsoft SQL Server** (relational database) testcontainer
113pub mod mssql_server;
114#[cfg(feature = "mysql")]
115#[cfg_attr(docsrs, doc(cfg(feature = "mysql")))]
116/// **MySQL** (relational database) testcontainer
117pub mod mysql;
118#[cfg(feature = "nats")]
119#[cfg_attr(docsrs, doc(cfg(feature = "nats")))]
120/// **Nats** (message oriented middleware) testcontainer
121pub mod nats;
122#[cfg(feature = "neo4j")]
123#[cfg_attr(docsrs, doc(cfg(feature = "neo4j")))]
124/// **Neo4j** (graph database) testcontainer
125pub mod neo4j;
126#[cfg(feature = "openldap")]
127#[cfg_attr(docsrs, doc(cfg(feature = "openldap")))]
128/// **Openldap** (ldap authentification) testcontainer
129pub mod openldap;
130#[cfg(feature = "oracle")]
131#[cfg_attr(docsrs, doc(cfg(feature = "oracle")))]
132/// **oracle** (relational database) testcontainer
133pub mod oracle;
134#[cfg(feature = "orientdb")]
135#[cfg_attr(docsrs, doc(cfg(feature = "orientdb")))]
136/// **orientdb** (nosql database) testcontainer
137pub mod orientdb;
138#[cfg(feature = "parity")]
139#[cfg_attr(docsrs, doc(cfg(feature = "parity")))]
140/// **parity_parity** (etherium client) testcontainer
141pub mod parity_parity;
142#[cfg(feature = "postgres")]
143#[cfg_attr(docsrs, doc(cfg(feature = "postgres")))]
144/// **Postgres** (relational database) testcontainer
145pub mod postgres;
146#[cfg(feature = "pulsar")]
147#[cfg_attr(docsrs, doc(cfg(feature = "pulsar")))]
148/// **Apache Pulsar** (Cloud-Native, Distributed Messaging and Streaming) testcontainer
149pub mod pulsar;
150#[cfg(feature = "rabbitmq")]
151#[cfg_attr(docsrs, doc(cfg(feature = "rabbitmq")))]
152/// **rabbitmq** (message broker) testcontainer
153pub mod rabbitmq;
154#[cfg(feature = "redis")]
155#[cfg_attr(docsrs, doc(cfg(feature = "redis")))]
156/// **redis** (in memory nosql database) testcontainer
157pub mod redis;
158#[cfg(feature = "rqlite")]
159#[cfg_attr(docsrs, doc(cfg(feature = "rqlite")))]
160/// **RQLite** (lightweight, user-friendly, distributed relational database) testcontainer
161pub mod rqlite;
162#[cfg(feature = "solr")]
163#[cfg_attr(docsrs, doc(cfg(feature = "solr")))]
164/// **Apache Solr** (distributed search engine) testcontainer
165pub mod solr;
166#[cfg(feature = "surrealdb")]
167#[cfg_attr(docsrs, doc(cfg(feature = "surrealdb")))]
168/// **surrealdb** (mutli model database) testcontainer
169pub mod surrealdb;
170#[cfg(feature = "trufflesuite_ganachecli")]
171#[cfg_attr(docsrs, doc(cfg(feature = "trufflesuite_ganachecli")))]
172/// **Trufflesuite Ganache CLI** (ethereum simulator) testcontainer
173pub mod trufflesuite_ganachecli;
174
175#[cfg(feature = "weaviate")]
176#[cfg_attr(docsrs, doc(cfg(feature = "weaviate")))]
177/// **Weaviate** (Vector database) testcontainer
178pub mod weaviate;
179
180#[cfg(feature = "valkey")]
181#[cfg_attr(docsrs, doc(cfg(feature = "valkey")))]
182/// **Valkey** (in memory nosql database) testcontainer
183pub mod valkey;
184#[cfg(feature = "victoria_metrics")]
185#[cfg_attr(docsrs, doc(cfg(feature = "victoria_metrics")))]
186/// **VictoriaMetrics** (monitoring and time series metrics database) testcontainer
187pub mod victoria_metrics;
188#[cfg(feature = "zookeeper")]
189#[cfg_attr(docsrs, doc(cfg(feature = "zookeeper")))]
190/// **Apache ZooKeeper** (locking and configuration management) testcontainer
191pub mod zookeeper;
192
193/// Re-exported version of `testcontainers` to avoid version conflicts
194pub use testcontainers;