diff --git a/README.md b/README.md
index 7786be3c4..d75c05e1d 100644
--- a/README.md
+++ b/README.md
@@ -16,53 +16,52 @@ KubeBlocks add-ons.
* [Environment variables and placeholders](https://kubeblocks.io/docs/preview/developer_docs/integration/environment-variables-and-placeholders)
## Supported Add-ons
-
-| NAME | DESCRIPTION | Maintainers |
-| ---- | ----------- | ----------- |
-| apecloud-mysql | ApeCloud MySQL is a database that is compatible with MySQL syntax and achieves high availability through the utilization of the RAFT consensus protocol. | xuriwuyun |
-| apecloud-postgresql | ApeCloud PostgreSQL is a database that is compatible with PostgreSQL syntax and achieves high availability through the utilization of the RAFT consensus protocol. | ldming |
-| camellia-redis-proxy | camellia-redis-proxy is a high-performance redis proxy developed using Netty4. | Y-Rookie |
-| clickhouse | ClickHouse is an open-source column-oriented OLAP database management system. Use it to boost your database performance while providing linear scalability and hardware efficiency. | sophon-zt |
-| dmdb | A Helm chart for Kubernetes | |
-| elasticsearch | Elasticsearch is a distributed, RESTful search engine optimized for speed and relevance on production-scale workloads. | iziang |
-| etcd | Etcd is a strongly consistent, distributed key-value store that provides a reliable way to store data that needs to be accessed by a distributed system or cluster of machines. | free6om |
-| flink | Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. | shanshanying |
-| greatsql | GreatSQL is a high performance open source relational database management system that can be used on common hardware for financial-grade application scenarios | ltaodream |
-| greptimedb | An open-source, cloud-native, distributed time-series database with PromQL/SQL/Python supported. | GreptimeTeam sh2 |
-| influxdb | InfluxDB(TM) is an open source time-series database. It is a core component of the TICK (Telegraf, InfluxDB(TM), Chronograf, Kapacitor) stack. | |
-| kafka | Apache Kafka is a distributed streaming platform designed to build real-time pipelines and can be used as a message broker or as a replacement for a log aggregation solution for big data applications. | caiq1nyu |
-| llm | Large language models. | lynnleelhl |
-| loki | Loki is a horizontally-scalable, highly-available, multi-tenant log aggregation system inspired by Prometheus. It is designed to be very cost effective and easy to operate. | Chen-speculation |
-| mariadb | MariaDB is a high performance open source relational database management system that is widely used for web and application servers | yinmin |
-| milvus | A cloud-native vector database, storage for next generation AI applications. | leon-inf |
-| minio | High Performance, Kubernetes Native Object Storage | fengluodb |
-| mogdb | A Helm chart for Kubernetes | yabinji shanshanying |
-| mongodb | MongoDB is a document database designed for ease of application development and scaling. | xuriwuyun |
-| mysql | MySQL is a widely used, open-source relational database management system (RDBMS) | xuriwuyun |
-| nebula | NebulaGraph is a popular open-source graph database that can handle large volumes of data with milliseconds of latency, scale up quickly, and have the ability to perform fast graph analytics. | Shanshan Ying Xuntao Cheng |
-| neon | Neon is a serverless open-source alternative to AWS Aurora Postgres. It separates storage and compute and substitutes the PostgreSQL storage layer by redistributing data across a cluster of nodes. | skyrise |
-| oceanbase-ce | Unlimited scalable distributed database for data-intensive transactional and real-time operational analytics workloads, with ultra-fast performance that has once achieved world records in the TPC-C benchmark test. OceanBase has served over 400 customers across the globe and has been supporting all mission critical systems in Alipay. | Powerfool shanshanying |
-| official-postgresql | A Official PostgreSQL cluster definition Helm chart for Kubernetes | kizuna-lek |
-| opengauss | A Helm chart for Kubernetes | 1aal |
-| openldap | The OpenLDAP Project is a collaborative effort to develop a robust, commercial-grade, fully featured, and open source LDAP suite of applications and development tools. This chart provides KubeBlocks' | kissycn |
-| opensearch | Open source distributed and RESTful search engine. | iziang |
-| opentenbase | OpenTenBase is an enterprise-level distributed HTAP open source database. | ldming |
-| oracle | A Helm chart for Kubernetes | 1aal |
-| orchestrator | Orchestrator is a MySQL high availability and replication management tool, runs as a service and provides command line access, HTTP API and Web interface. | kubeJocker |
-| orioledb | OrioleDB is a new storage engine for PostgreSQL, bringing a modern approach to database capacity, capabilities and performance to the world's most-loved database platform. | 1aal |
-| polardbx | PolarDB-X is a cloud native distributed SQL Database designed for high concurrency, massive storage, complex querying scenarios. | Vettal Wu |
-| postgresql | A PostgreSQL (with Patroni HA) cluster definition Helm chart for Kubernetes | ldming |
-| pulsar | Apache Pulsar is an open-source, distributed messaging and streaming platform built for the cloud. | caiq1nyu |
-| qdrant | High-performance, massive-scale Vector Database for the next generation of AI. | iziang |
-| rabbitmq | RabbitMQ is a reliable and mature messaging and streaming broker. | xuriwuyun |
-| redis | Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs, Bitmaps. | Y-Rookie |
-| risingwave | RisingWave is a distributed SQL streaming database that enables cost-efficient and reliable processing of streaming data. | RisingWave Labs |
-| solr | Solr is the popular, blazing-fast, open source enterprise search platform built on Apache Lucene. | ApeCloud kissycn |
-| starrocks-ce | A Linux Foundation project, is the next-generation data platform designed to make data-intensive real-time analytics fast and easy. | yandongxiao iziang |
-| tdengine | TDengine is an open source, high-performance, cloud native time-series database optimized for Internet of Things (IoT), Connected Cars, Industrial IoT and DevOps. | leon-inf |
-| tidb | TiDB is an open-source, cloud-native, distributed, MySQL-Compatible database for elastic scale and real-time analytics. | csuzhangxc cjc7373 |
-| victoria-metrics | VictoriaMetrics is a fast, cost-effective and scalable monitoring solution and time series database. | sophon-zt ButterBright |
-| weaviate | Weaviate is an open-source vector database. It allows you to store data objects and vector embeddings from your favorite ML-models, and scale seamlessly into billions of data objects. | iziang |
-| xinference | Xorbits Inference(Xinference) is a powerful and versatile library designed to serve language, speech recognition, and multimodal models. | lynnleelhl |
-| yashandb | YashanDB is a new database system completely independently designed and developed by SICS. Based on classical database theories, it incorporates original Bounded Evaluation theory, Approximation theory, Parallel Scalability theory and Cross-Modal Fusion Computation theory, supports multiple deployment methods such as stand-alone/primary-standby, shared cluster, and distributed ones, covers OLTP/HTAP/OLAP transactions and analyzes mixed load scenarios, and is fully compatible with privatization and cloud infrastructure, providing clients with one-stop enterprise-level converged data management solutions to meet the needs of key industries such as finance, government, telecommunications and energy for high performance, concurrency and security. | JesseAtSZ shanshanying |
-| zookeeper | Apache ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. | kubeJocker kissycn |
\ No newline at end of file
+| NAME | VERSIOINS | DESCRIPTION | MAINTAINERS |
+| ---- | ---- | ----------- | ----------- |
+| apecloud-mysql | apecloud-mysql-8.0.30
wescale-0.2.7
wescale-0.2.7 | ApeCloud MySQL is a database that is compatible with MySQL syntax and achieves high availability through the utilization of the RAFT consensus protocol. | xuriwuyun |
+| apecloud-postgresql | apecloud-postgresql-14.11.0 | ApeCloud PostgreSQL is a database that is compatible with PostgreSQL syntax and achieves high availability through the utilization of the RAFT consensus protocol. | ldming |
+| camellia-redis-proxy | camellia-redis-proxy-1.2.26 | camellia-redis-proxy is a high-performance redis proxy developed using Netty4. | Y-Rookie |
+| clickhouse | clickhouse-22.9.4
clickhouse-22.9.4 | ClickHouse is an open-source column-oriented OLAP database management system. Use it to boost your database performance while providing linear scalability and hardware efficiency. | sophon-zt |
+| dmdb | dmdb-0.1.0 | A Helm chart for Kubernetes | |
+| elasticsearch | elasticsearch-7.10.1
elasticsearch-7.7.1
elasticsearch-7.8.1
elasticsearch-8.1.3
elasticsearch-8.8.2 | Elasticsearch is a distributed, RESTful search engine optimized for speed and relevance on production-scale workloads. | iziang |
+| etcd | etcd-v3.5.15
etcd-v3.5.6 | Etcd is a strongly consistent, distributed key-value store that provides a reliable way to store data that needs to be accessed by a distributed system or cluster of machines. | free6om |
+| flink | flink-1.16
flink-1.16 | Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams. | shanshanying |
+| greatsql | greatsql-8.0.32-25 | GreatSQL is a high performance open source relational database management system that can be used on common hardware for financial-grade application scenarios | ltaodream |
+| greptimedb | greptimedb-0.3.2
greptimedb-0.3.2
greptimedb-0.3.2 | An open-source, cloud-native, distributed time-series database with PromQL/SQL/Python supported. | GreptimeTeam sh2 |
+| influxdb | influxdb-2.7.4 | InfluxDB(TM) is an open source time-series database. It is a core component of the TICK (Telegraf, InfluxDB(TM), Chronograf, Kapacitor) stack. | |
+| kafka | kafka-broker-3.3.2
kafka-combine-3.3.2
kafka-controller-3.3.2
kafka-exporter-1.6.0 | Apache Kafka is a distributed streaming platform designed to build real-time pipelines and can be used as a message broker or as a replacement for a log aggregation solution for big data applications. | caiq1nyu |
+| llm | llama-cpp-python-0.1.0-new
llm-v0.2.7-amd64 | Large language models. | lynnleelhl |
+| loki | loki-1.0.0
loki-1.0.0
loki-1.0.0
loki-1.0.0 | Loki is a horizontally-scalable, highly-available, multi-tenant log aggregation system inspired by Prometheus. It is designed to be very cost effective and easy to operate. | Chen-speculation |
+| mariadb | mariadb-10.6.15 | MariaDB is a high performance open source relational database management system that is widely used for web and application servers | yinmin |
+| milvus | milvus-v2.3.2
milvus-v2.3.2
milvus-v2.3.2
milvus-v2.3.2
milvus-v2.3.2
milvus-v2.3.2 | A cloud-native vector database, storage for next generation AI applications. | leon-inf |
+| minio | minio-1.0.0-alpha.0 | High Performance, Kubernetes Native Object Storage | fengluodb |
+| mogdb | mogdb-5.0.5 | A Helm chart for Kubernetes | yabinji shanshanying |
+| mongodb | mongodb-4.0.28
mongodb-4.2.24
mongodb-4.4.29
mongodb-5.0.28
mongodb-6.0.16
mongodb-7.0.12 | MongoDB is a document database designed for ease of application development and scaling. | xuriwuyun |
+| mysql | mysql-5.7.44
mysql-5.7.44
mysql-8.0.33
mysql-8.0.33
mysql-8.4.2
proxysql-2.4.4 | MySQL is a widely used, open-source relational database management system (RDBMS) | xuriwuyun |
+| nebula | nebula-v3.5.0
nebula-v3.5.0
nebula-v3.5.0
nebula-v3.5.0 | NebulaGraph is a popular open-source graph database that can handle large volumes of data with milliseconds of latency, scale up quickly, and have the ability to perform fast graph analytics. | Shanshan Ying Xuntao Cheng |
+| neon | neon-broker-1.0.0
neon-compute-1.0.0
neon-pageserver-1.0.0
neon-safekeeper-1.0.0 | Neon is a serverless open-source alternative to AWS Aurora Postgres. It separates storage and compute and substitutes the PostgreSQL storage layer by redistributing data across a cluster of nodes. | skyrise |
+| oceanbase-ce | oceanbase-4.3.0 | Unlimited scalable distributed database for data-intensive transactional and real-time operational analytics workloads, with ultra-fast performance that has once achieved world records in the TPC-C benchmark test. OceanBase has served over 400 customers across the globe and has been supporting all mission critical systems in Alipay. | Powerfool shanshanying |
+| official-postgresql | postgres-14.7 | A Official PostgreSQL cluster definition Helm chart for Kubernetes | kizuna-lek |
+| opengauss | opengauss-5.0.0 | A Helm chart for Kubernetes | 1aal |
+| openldap | openldap-2.4.57 | The OpenLDAP Project is a collaborative effort to develop a robust, commercial-grade, fully featured, and open source LDAP suite of applications and development tools. This chart provides KubeBlocks' | kissycn |
+| opensearch | opensearch-2.7.0
opensearch-2.7.0 | Open source distributed and RESTful search engine. | iziang |
+| opentenbase | opentenbase-v2.5.0
opentenbase-v2.5.0
opentenbase-v2.5.0 | OpenTenBase is an enterprise-level distributed HTAP open source database. | ldming |
+| oracle | oracle-19.3.0-ee | A Helm chart for Kubernetes | 1aal |
+| orchestrator | orchestrator-3.2.6
orchestrator-3.2.6 | Orchestrator is a MySQL high availability and replication management tool, runs as a service and provides command line access, HTTP API and Web interface. | kubeJocker |
+| orioledb | orioledb-14.7.2-beta1 | OrioleDB is a new storage engine for PostgreSQL, bringing a modern approach to database capacity, capabilities and performance to the world's most-loved database platform. | 1aal |
+| polardbx | polardbx-v2.3
polardbx-v2.3
polardbx-v2.3
polardbx-v2.3 | PolarDB-X is a cloud native distributed SQL Database designed for high concurrency, massive storage, complex querying scenarios. | Vettal Wu |
+| postgresql | postgresql-12.14.0
postgresql-12.14.1
postgresql-12.15.0
postgresql-14.7.2
postgresql-14.8.0
postgresql-15.7.0 | A PostgreSQL (with Patroni HA) cluster definition Helm chart for Kubernetes | ldming |
+| pulsar | pulsar-bkrecovery-2.11.2
pulsar-bkrecovery-3.0.2
pulsar-bookkeeper-2.11.2
pulsar-bookkeeper-3.0.2
pulsar-broker-2.11.2
pulsar-broker-3.0.2
pulsar-proxy-2.11.2
pulsar-proxy-3.0.2
pulsar-zookeeper-2.11.2
pulsar-zookeeper-3.0.2 | Apache Pulsar is an open-source, distributed messaging and streaming platform built for the cloud. | caiq1nyu |
+| qdrant | qdrant-1.10.0
qdrant-1.5.0
qdrant-1.7.3
qdrant-1.8.1
qdrant-1.8.4 | High-performance, massive-scale Vector Database for the next generation of AI. | iziang |
+| rabbitmq | rabbitmq-3.10.25
rabbitmq-3.11.28
rabbitmq-3.12.14
rabbitmq-3.13.2
rabbitmq-3.8.14
rabbitmq-3.9.29 | RabbitMQ is a reliable and mature messaging and streaming broker. | xuriwuyun |
+| redis | redis-7.0.6
redis-7.2.4
redis-cluster-7.0.6
redis-cluster-7.2.4
redis-sentinel-7.0.6
redis-sentinel-7.2.4
redis-twemproxy-0.5.0 | Redis is an in-memory database that persists on disk. The data model is key-value, but many different kind of values are supported: Strings, Lists, Sets, Sorted Sets, Hashes, Streams, HyperLogLogs, Bitmaps. | Y-Rookie |
+| risingwave | risingwave-v1.0.0
risingwave-v1.0.0
risingwave-v1.0.0
risingwave-v1.0.0
risingwave-v1.0.0 | RisingWave is a distributed SQL streaming database that enables cost-efficient and reliable processing of streaming data. | RisingWave Labs |
+| solr | solr-8.11.2 | Solr is the popular, blazing-fast, open source enterprise search platform built on Apache Lucene. | ApeCloud kissycn |
+| starrocks-ce | starrocks-ce-be-3.2.2
starrocks-ce-be-3.3.0
starrocks-ce-fe-3.2.2
starrocks-ce-fe-3.3.0 | A Linux Foundation project, is the next-generation data platform designed to make data-intensive real-time analytics fast and easy. | yandongxiao iziang |
+| tdengine | tdengine-3.0.5 | TDengine is an open source, high-performance, cloud native time-series database optimized for Internet of Things (IoT), Connected Cars, Industrial IoT and DevOps. | leon-inf |
+| tidb | tidb-6.5.10
tidb-7.1.5
tidb-7.5.2
tidb-pd-6.5.10
tidb-pd-7.1.5
tidb-pd-7.5.2
tikv-6.5.10
tikv-7.1.5
tikv-7.5.2 | TiDB is an open-source, cloud-native, distributed, MySQL-Compatible database for elastic scale and real-time analytics. | csuzhangxc cjc7373 |
+| victoria-metrics | ictoria-metrics-1.0.0
ictoria-metrics-1.0.0
ictoria-metrics-1.0.0 | VictoriaMetrics is a fast, cost-effective and scalable monitoring solution and time series database. | sophon-zt ButterBright |
+| weaviate | weaviate-1.23.1 | Weaviate is an open-source vector database. It allows you to store data objects and vector embeddings from your favorite ML-models, and scale seamlessly into billions of data objects. | iziang |
+| xinference | xinference-0.11.0
xinference-0.11.0-cpu | Xorbits Inference(Xinference) is a powerful and versatile library designed to serve language, speech recognition, and multimodal models. | lynnleelhl |
+| yashandb | yashandb-personal-23.1.1.100 | YashanDB is a new database system completely independently designed and developed by SICS. Based on classical database theories, it incorporates original Bounded Evaluation theory, Approximation theory, Parallel Scalability theory and Cross-Modal Fusion Computation theory, supports multiple deployment methods such as stand-alone/primary-standby, shared cluster, and distributed ones, covers OLTP/HTAP/OLAP transactions and analyzes mixed load scenarios, and is fully compatible with privatization and cloud infrastructure, providing clients with one-stop enterprise-level converged data management solutions to meet the needs of key industries such as finance, government, telecommunications and energy for high performance, concurrency and security. | JesseAtSZ shanshanying |
+| zookeeper | zookeeper-3.4.14
zookeeper-3.6.4
zookeeper-3.7.2
zookeeper-3.8.4
zookeeper-3.9.2 | Apache ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. | kubeJocker kissycn |
diff --git a/hack/get-addons.sh b/hack/get-addons.sh
index d03f507a3..94f7401c8 100755
--- a/hack/get-addons.sh
+++ b/hack/get-addons.sh
@@ -1,8 +1,8 @@
#!/bin/bash
# Initialize table header
-echo "| NAME | DESCRIPTION | Maintainers |"
-echo "| ---- | ----------- | ----------- |"
+echo "| NAME | VERSIOINS | DESCRIPTION | MAINTAINERS |"
+echo "| ---- | ---- | ----------- | ----------- |"
# Traverse and sort directories
# for d in $(find . -type d ! -name "*cluster" -not -name "common" -not -name "kblib" -not -name "neonvm" | sort); do
@@ -12,23 +12,41 @@ for d in $(find ./addons -type d -not -name "common" -not -name "kblib" -not -n
# Use yq to read fields
name=$(yq e '.name' $d/Chart.yaml)
description=$(yq e '.description' $d/Chart.yaml)
+ dir_name=$(basename $d)
- # dir_name=$(basename $d)
- # helm dependency build addons/$dir_name --skip-refresh > /dev/null 2>&1
- # version_lines=$(helm template addon addons/$dir_name | grep -A 5 'kind: ClusterVersion' | grep ' name:' | awk '{print $2}' | cut -d '-' -f 2- | sort)
- # versions=""
- # while IFS= read -r line
- # do
- # if [[ $line == v* ]]; then
- # line=${line:1}
- # fi
- # versions+="${line}
"
- # done <<<"$version_lines"
- # versions=${versions%
}
+ helm dependency build addons/$dir_name --skip-refresh > /dev/null 2>&1
+ helm template addon addons/$dir_name > /tmp/rendered.yaml
+
+ # prase from ComponentVersion
+ version_lines=$(cat "/tmp/rendered.yaml" | yq e '. | select(.kind == "ComponentVersion")' | yq '.metadata.name + "-" +.spec.releases[].serviceVersion' -N | sort)
+ # if version_lines is empty, try to get version from ComponentDefinition
+ if [[ -z $version_lines ]]; then
+ version_lines=$(cat "/tmp/rendered.yaml" | yq e '. | select(.kind == "ComponentDefinition")' | yq '.spec.serviceKind + "-" +.spec.serviceVersion' -N | sort)
+ fi
+ # if version_lines is empty, try to get version from List of ComponentDefinition
+ if [[ -z $version_lines ]]; then
+ version_lines=$(cat "/tmp/rendered.yaml" | yq e '. | select(.kind == "List") | .items[0] | select(.kind == "ComponentDefinition") | .spec.serviceKind + "-" +.spec.serviceVersion' -N | sort)
+ fi
+ # if version_lines is empty, try to get version from clusterdefintioin
+ if [[ -z $version_lines ]]; then
+ version_lines=$(cat "/tmp/rendered.yaml" | yq e '. | select(.kind == "ClusterDefinition") | .spec.componentDefs[].podSpec.containers[0].image | sub(".*/", "") | sub(":", "-")' -N | sort)
+ fi
+
+ # version_lines=$(helm template addon addons/$dir_name | grep -A 5 'kind: ComponentVersion' | grep ' name:' | awk '{print $2}' | cut -d '-' -f 2- | sort)
+ versions=""
+ while IFS= read -r line
+ do
+ if [[ $line == v* ]]; then
+ line=${line:1}
+ fi
+ versions+="${line}
"
+ done <<<"$version_lines"
+ versions=${versions%
}
+ # echo $versions
# Output as Markdown table row
maintainers=$(yq e '.maintainers[].name' $d/Chart.yaml)
maintainers=$(echo $maintainers | tr '\r' ' ')
- echo "| $name | $description | $maintainers |"
+ echo "| $name | $versions | $description | $maintainers |"
fi
done
\ No newline at end of file