mirror of
https://github.com/arangodb/kube-arangodb.git
synced 2024-12-14 11:57:37 +00:00
[Maintenance] Update README (#1736)
This commit is contained in:
parent
0121b4b919
commit
1cdea86203
9 changed files with 302 additions and 119 deletions
55
Makefile
55
Makefile
|
@ -545,72 +545,97 @@ $(eval $(call manifest-generator, deployment, kube-arangodb, \
|
||||||
--set "operator.features.deployment=true" \
|
--set "operator.features.deployment=true" \
|
||||||
--set "operator.features.deploymentReplications=false" \
|
--set "operator.features.deploymentReplications=false" \
|
||||||
--set "operator.features.storage=false" \
|
--set "operator.features.storage=false" \
|
||||||
|
--set "operator.features.backup=false" \
|
||||||
--set "operator.features.apps=false" \
|
--set "operator.features.apps=false" \
|
||||||
--set "operator.features.ml=false" \
|
|
||||||
--set "operator.features.k8sToK8sClusterSync=false" \
|
--set "operator.features.k8sToK8sClusterSync=false" \
|
||||||
--set "operator.features.backup=false"))
|
--set "operator.features.ml=false" \
|
||||||
|
--set "operator.features.analytics=false" \
|
||||||
|
--set "operator.features.networking=true" \
|
||||||
|
--set "operator.features.scheduler=true"))
|
||||||
|
|
||||||
$(eval $(call manifest-generator, deployment-replication, kube-arangodb, \
|
$(eval $(call manifest-generator, deployment-replication, kube-arangodb, \
|
||||||
--set "operator.features.deployment=false" \
|
--set "operator.features.deployment=false" \
|
||||||
--set "operator.features.deploymentReplications=true" \
|
--set "operator.features.deploymentReplications=true" \
|
||||||
--set "operator.features.storage=false" \
|
--set "operator.features.storage=false" \
|
||||||
|
--set "operator.features.backup=false" \
|
||||||
--set "operator.features.apps=false" \
|
--set "operator.features.apps=false" \
|
||||||
--set "operator.features.k8sToK8sClusterSync=false" \
|
--set "operator.features.k8sToK8sClusterSync=false" \
|
||||||
--set "operator.features.backup=false"))
|
--set "operator.features.ml=false" \
|
||||||
|
--set "operator.features.analytics=false" \
|
||||||
|
--set "operator.features.networking=false" \
|
||||||
|
--set "operator.features.scheduler=false"))
|
||||||
|
|
||||||
$(eval $(call manifest-generator, storage, kube-arangodb, \
|
$(eval $(call manifest-generator, storage, kube-arangodb, \
|
||||||
--set "operator.features.deployment=false" \
|
--set "operator.features.deployment=false" \
|
||||||
--set "operator.features.deploymentReplications=false" \
|
--set "operator.features.deploymentReplications=false" \
|
||||||
--set "operator.features.storage=true" \
|
--set "operator.features.storage=true" \
|
||||||
|
--set "operator.features.backup=false" \
|
||||||
--set "operator.features.apps=false" \
|
--set "operator.features.apps=false" \
|
||||||
--set "operator.features.ml=false" \
|
|
||||||
--set "operator.features.k8sToK8sClusterSync=false" \
|
--set "operator.features.k8sToK8sClusterSync=false" \
|
||||||
--set "operator.features.backup=false"))
|
--set "operator.features.ml=false" \
|
||||||
|
--set "operator.features.analytics=false" \
|
||||||
|
--set "operator.features.networking=false" \
|
||||||
|
--set "operator.features.scheduler=false"))
|
||||||
|
|
||||||
$(eval $(call manifest-generator, backup, kube-arangodb, \
|
$(eval $(call manifest-generator, backup, kube-arangodb, \
|
||||||
--set "operator.features.deployment=false" \
|
--set "operator.features.deployment=false" \
|
||||||
--set "operator.features.deploymentReplications=false" \
|
--set "operator.features.deploymentReplications=false" \
|
||||||
--set "operator.features.storage=false" \
|
--set "operator.features.storage=false" \
|
||||||
|
--set "operator.features.backup=true" \
|
||||||
--set "operator.features.apps=false" \
|
--set "operator.features.apps=false" \
|
||||||
--set "operator.features.ml=false" \
|
|
||||||
--set "operator.features.k8sToK8sClusterSync=false" \
|
--set "operator.features.k8sToK8sClusterSync=false" \
|
||||||
--set "operator.features.backup=true"))
|
--set "operator.features.ml=false" \
|
||||||
|
--set "operator.features.analytics=false" \
|
||||||
|
--set "operator.features.networking=false" \
|
||||||
|
--set "operator.features.scheduler=false"))
|
||||||
|
|
||||||
$(eval $(call manifest-generator, apps, kube-arangodb, \
|
$(eval $(call manifest-generator, apps, kube-arangodb, \
|
||||||
--set "operator.features.deployment=false" \
|
--set "operator.features.deployment=false" \
|
||||||
--set "operator.features.deploymentReplications=false" \
|
--set "operator.features.deploymentReplications=false" \
|
||||||
--set "operator.features.storage=false" \
|
--set "operator.features.storage=false" \
|
||||||
|
--set "operator.features.backup=false" \
|
||||||
--set "operator.features.apps=true" \
|
--set "operator.features.apps=true" \
|
||||||
--set "operator.features.ml=false" \
|
|
||||||
--set "operator.features.k8sToK8sClusterSync=false" \
|
--set "operator.features.k8sToK8sClusterSync=false" \
|
||||||
--set "operator.features.backup=false"))
|
--set "operator.features.ml=false" \
|
||||||
|
--set "operator.features.analytics=false" \
|
||||||
|
--set "operator.features.networking=false" \
|
||||||
|
--set "operator.features.scheduler=false"))
|
||||||
|
|
||||||
$(eval $(call manifest-generator, ml, kube-arangodb, \
|
$(eval $(call manifest-generator, ml, kube-arangodb, \
|
||||||
--set "operator.features.deployment=false" \
|
--set "operator.features.deployment=false" \
|
||||||
--set "operator.features.deploymentReplications=false" \
|
--set "operator.features.deploymentReplications=false" \
|
||||||
--set "operator.features.storage=false" \
|
--set "operator.features.storage=false" \
|
||||||
|
--set "operator.features.backup=false" \
|
||||||
--set "operator.features.apps=false" \
|
--set "operator.features.apps=false" \
|
||||||
--set "operator.features.ml=true" \
|
|
||||||
--set "operator.features.k8sToK8sClusterSync=false" \
|
--set "operator.features.k8sToK8sClusterSync=false" \
|
||||||
--set "operator.features.backup=false"))
|
--set "operator.features.ml=true" \
|
||||||
|
--set "operator.features.analytics=false" \
|
||||||
|
--set "operator.features.networking=false" \
|
||||||
|
--set "operator.features.scheduler=false"))
|
||||||
|
|
||||||
$(eval $(call manifest-generator, k2kclustersync, kube-arangodb, \
|
$(eval $(call manifest-generator, k2kclustersync, kube-arangodb, \
|
||||||
--set "operator.features.deployment=false" \
|
--set "operator.features.deployment=false" \
|
||||||
--set "operator.features.deploymentReplications=false" \
|
--set "operator.features.deploymentReplications=false" \
|
||||||
--set "operator.features.storage=false" \
|
--set "operator.features.storage=false" \
|
||||||
|
--set "operator.features.backup=false" \
|
||||||
--set "operator.features.apps=false" \
|
--set "operator.features.apps=false" \
|
||||||
--set "operator.features.ml=false" \
|
|
||||||
--set "operator.features.k8sToK8sClusterSync=true" \
|
--set "operator.features.k8sToK8sClusterSync=true" \
|
||||||
--set "operator.features.backup=false"))
|
--set "operator.features.ml=false" \
|
||||||
|
--set "operator.features.analytics=false" \
|
||||||
|
--set "operator.features.networking=false" \
|
||||||
|
--set "operator.features.scheduler=false"))
|
||||||
|
|
||||||
$(eval $(call manifest-generator, all, kube-arangodb, \
|
$(eval $(call manifest-generator, all, kube-arangodb, \
|
||||||
--set "operator.features.deployment=true" \
|
--set "operator.features.deployment=true" \
|
||||||
--set "operator.features.deploymentReplications=true" \
|
--set "operator.features.deploymentReplications=true" \
|
||||||
--set "operator.features.storage=true" \
|
--set "operator.features.storage=true" \
|
||||||
|
--set "operator.features.backup=true" \
|
||||||
--set "operator.features.apps=true" \
|
--set "operator.features.apps=true" \
|
||||||
--set "operator.features.ml=true" \
|
|
||||||
--set "operator.features.k8sToK8sClusterSync=true" \
|
--set "operator.features.k8sToK8sClusterSync=true" \
|
||||||
--set "operator.features.backup=true"))
|
--set "operator.features.ml=true" \
|
||||||
|
--set "operator.features.analytics=true" \
|
||||||
|
--set "operator.features.networking=true" \
|
||||||
|
--set "operator.features.scheduler=true"))
|
||||||
|
|
||||||
.PHONY: chart-crd
|
.PHONY: chart-crd
|
||||||
chart-crd: export CHART_NAME := kube-arangodb-crd
|
chart-crd: export CHART_NAME := kube-arangodb-crd
|
||||||
|
|
39
README.md
39
README.md
|
@ -52,19 +52,32 @@ covers individual newer features separately.
|
||||||
|
|
||||||
[START_INJECT]: # (kubernetesVersionsTable)
|
[START_INJECT]: # (kubernetesVersionsTable)
|
||||||
|
|
||||||
| Platform | Kubernetes Version | ArangoDB Version | State | Remarks | Provider Remarks |
|
| Platform | State | Kubernetes Version | ArangoDB Version | Remarks | Provider Remarks |
|
||||||
|:--------------------|:-------------------|:-----------------|:-----------|:------------------------------------------|:-----------------------------------|
|
|:--------------------|:-------------|:-------------------|:-----------------|:----------------------|:-----------------------------------|
|
||||||
| Google GKE | 1.25-1.30 | >= 3.8.0 | Production | Don't use micro nodes | |
|
| Google GKE | Production | 1.28-1.31 | >= 3.11.0 | Don't use micro nodes | |
|
||||||
| Azure AKS | 1.25-1.30 | >= 3.8.0 | Production | | |
|
| | EOL | 1.25-1.27 | 3.9.0-3.10.0 | Don't use micro nodes | |
|
||||||
| Amazon EKS | 1.25-1.30 | >= 3.8.0 | Production | | [Amazon EKS](./docs/providers/eks) |
|
| | NotSupported | < 1.25 | < 3.8.0 | Don't use micro nodes | |
|
||||||
| IBM Cloud | <= 1.20 | >= 3.8.0 | Deprecated | Support will be dropped in Operator 1.5.0 | |
|
| Azure AKS | Production | 1.28-1.32 | >= 3.11.0 | | |
|
||||||
| IBM Cloud | 1.25-1.30 | >= 3.8.0 | Production | | |
|
| | EOL | 1.25-1.27 | 3.9.0-3.10.0 | | |
|
||||||
| OpenShift | 3.11 | >= 3.8.0 | Deprecated | Support will be dropped in Operator 1.5.0 | |
|
| | NotSupported | < 1.25 | < 3.8.0 | | |
|
||||||
| OpenShift | 4.2-4.14 | >= 3.8.0 | Production | | |
|
| Amazon EKS | Production | 1.28-1.31 | >= 3.11.0 | | [Amazon EKS](./docs/providers/eks) |
|
||||||
| BareMetal (kubeadm) | <= 1.20 | >= 3.8.0 | Deprecated | Support will be dropped in Operator 1.5.0 | |
|
| | EOL | 1.25-1.27 | 3.9.0-3.10.0 | | [Amazon EKS](./docs/providers/eks) |
|
||||||
| BareMetal (kubeadm) | 1.25-1.30 | >= 3.8.0 | Production | | |
|
| | NotSupported | < 1.25 | < 3.8.0 | | [Amazon EKS](./docs/providers/eks) |
|
||||||
| Minikube | 1.25-1.30 | >= 3.8.0 | Devel Only | | |
|
| IBM Cloud | Production | 1.29-1.31 | >= 3.11.0 | | |
|
||||||
| Other | 1.25-1.30 | >= 3.8.0 | Devel Only | | |
|
| | EOL | 1.25-1.28 | 3.9.0-3.10.0 | | |
|
||||||
|
| | NotSupported | < 1.25 | < 3.8.0 | | |
|
||||||
|
| OpenShift | Production | 4.11-4.17 | >= 3.11.0 | | |
|
||||||
|
| | EOL | 4.2-4.11 | 3.9.0-3.10.0 | | |
|
||||||
|
| | NotSupported | < 4.2 | < 3.8.0 | | |
|
||||||
|
| BareMetal (kubeadm) | Production | 1.28-1.31 | >= 3.11.0 | | |
|
||||||
|
| | EOL | 1.25-1.27 | 3.9.0-3.10.0 | | |
|
||||||
|
| | NotSupported | < 1.25 | < 3.8.0 | | |
|
||||||
|
| Minikube | Devel Only | 1.28-1.31 | >= 3.11.0 | | |
|
||||||
|
| | EOL | 1.25-1.27 | 3.9.0-3.10.0 | | |
|
||||||
|
| | NotSupported | < 1.25 | < 3.8.0 | | |
|
||||||
|
| Other | Production | 1.28-1.31 | >= 3.11.0 | | |
|
||||||
|
| | EOL | 1.25-1.27 | 3.9.0-3.10.0 | | |
|
||||||
|
| | NotSupported | < 1.25 | < 3.8.0 | | |
|
||||||
|
|
||||||
[END_INJECT]: # (kubernetesVersionsTable)
|
[END_INJECT]: # (kubernetesVersionsTable)
|
||||||
|
|
||||||
|
|
|
@ -13,18 +13,23 @@ metadata:
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
release: {{ .Release.Name }}
|
release: {{ .Release.Name }}
|
||||||
rules:
|
rules:
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
# analytics.arangodb.com
|
# analytics.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "graphanalyticsengines.analytics.arangodb.com"
|
- "graphanalyticsengines.analytics.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
# apps.arangodb.com
|
# apps.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangojobs.apps.arangodb.com"
|
- "arangojobs.apps.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
# backup.arangodb.com
|
# backup.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -32,6 +37,8 @@ rules:
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangobackuppolicies.backup.arangodb.com"
|
- "arangobackuppolicies.backup.arangodb.com"
|
||||||
- "arangobackups.backup.arangodb.com"
|
- "arangobackups.backup.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
# database.arangodb.com
|
# database.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -41,6 +48,8 @@ rules:
|
||||||
- "arangodeployments.database.arangodb.com"
|
- "arangodeployments.database.arangodb.com"
|
||||||
- "arangomembers.database.arangodb.com"
|
- "arangomembers.database.arangodb.com"
|
||||||
- "arangotasks.database.arangodb.com"
|
- "arangotasks.database.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.ml -}}
|
||||||
# ml.arangodb.com
|
# ml.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -50,18 +59,24 @@ rules:
|
||||||
- "arangomlcronjobs.ml.arangodb.com"
|
- "arangomlcronjobs.ml.arangodb.com"
|
||||||
- "arangomlextensions.ml.arangodb.com"
|
- "arangomlextensions.ml.arangodb.com"
|
||||||
- "arangomlstorages.ml.arangodb.com"
|
- "arangomlstorages.ml.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.networking -}}
|
||||||
# networking.arangodb.com
|
# networking.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangoroutes.networking.arangodb.com"
|
- "arangoroutes.networking.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.deploymentReplications -}}
|
||||||
# replication.database.arangodb.com
|
# replication.database.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangodeploymentreplications.replication.database.arangodb.com"
|
- "arangodeploymentreplications.replication.database.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.scheduler -}}
|
||||||
# scheduler.arangodb.com
|
# scheduler.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -72,6 +87,7 @@ rules:
|
||||||
- "arangoschedulerdeploymets.scheduler.arangodb.com"
|
- "arangoschedulerdeploymets.scheduler.arangodb.com"
|
||||||
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
|
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
|
||||||
- "arangoschedulercronjobs.scheduler.arangodb.com"
|
- "arangoschedulercronjobs.scheduler.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -13,18 +13,23 @@ metadata:
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
release: {{ .Release.Name }}
|
release: {{ .Release.Name }}
|
||||||
rules:
|
rules:
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
# analytics.arangodb.com
|
# analytics.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "graphanalyticsengines.analytics.arangodb.com"
|
- "graphanalyticsengines.analytics.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
# apps.arangodb.com
|
# apps.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangojobs.apps.arangodb.com"
|
- "arangojobs.apps.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
# backup.arangodb.com
|
# backup.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -32,6 +37,8 @@ rules:
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangobackuppolicies.backup.arangodb.com"
|
- "arangobackuppolicies.backup.arangodb.com"
|
||||||
- "arangobackups.backup.arangodb.com"
|
- "arangobackups.backup.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
# database.arangodb.com
|
# database.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -41,6 +48,8 @@ rules:
|
||||||
- "arangodeployments.database.arangodb.com"
|
- "arangodeployments.database.arangodb.com"
|
||||||
- "arangomembers.database.arangodb.com"
|
- "arangomembers.database.arangodb.com"
|
||||||
- "arangotasks.database.arangodb.com"
|
- "arangotasks.database.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.ml -}}
|
||||||
# ml.arangodb.com
|
# ml.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -50,18 +59,24 @@ rules:
|
||||||
- "arangomlcronjobs.ml.arangodb.com"
|
- "arangomlcronjobs.ml.arangodb.com"
|
||||||
- "arangomlextensions.ml.arangodb.com"
|
- "arangomlextensions.ml.arangodb.com"
|
||||||
- "arangomlstorages.ml.arangodb.com"
|
- "arangomlstorages.ml.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.networking -}}
|
||||||
# networking.arangodb.com
|
# networking.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangoroutes.networking.arangodb.com"
|
- "arangoroutes.networking.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.deploymentReplications -}}
|
||||||
# replication.database.arangodb.com
|
# replication.database.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangodeploymentreplications.replication.database.arangodb.com"
|
- "arangodeploymentreplications.replication.database.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.scheduler -}}
|
||||||
# scheduler.arangodb.com
|
# scheduler.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -72,6 +87,7 @@ rules:
|
||||||
- "arangoschedulerdeploymets.scheduler.arangodb.com"
|
- "arangoschedulerdeploymets.scheduler.arangodb.com"
|
||||||
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
|
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
|
||||||
- "arangoschedulercronjobs.scheduler.arangodb.com"
|
- "arangoschedulercronjobs.scheduler.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -13,18 +13,23 @@ metadata:
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
release: {{ .Release.Name }}
|
release: {{ .Release.Name }}
|
||||||
rules:
|
rules:
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
# analytics.arangodb.com
|
# analytics.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "graphanalyticsengines.analytics.arangodb.com"
|
- "graphanalyticsengines.analytics.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
# apps.arangodb.com
|
# apps.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangojobs.apps.arangodb.com"
|
- "arangojobs.apps.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
# backup.arangodb.com
|
# backup.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -32,6 +37,8 @@ rules:
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangobackuppolicies.backup.arangodb.com"
|
- "arangobackuppolicies.backup.arangodb.com"
|
||||||
- "arangobackups.backup.arangodb.com"
|
- "arangobackups.backup.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
# database.arangodb.com
|
# database.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -41,6 +48,8 @@ rules:
|
||||||
- "arangodeployments.database.arangodb.com"
|
- "arangodeployments.database.arangodb.com"
|
||||||
- "arangomembers.database.arangodb.com"
|
- "arangomembers.database.arangodb.com"
|
||||||
- "arangotasks.database.arangodb.com"
|
- "arangotasks.database.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.ml -}}
|
||||||
# ml.arangodb.com
|
# ml.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -50,18 +59,24 @@ rules:
|
||||||
- "arangomlcronjobs.ml.arangodb.com"
|
- "arangomlcronjobs.ml.arangodb.com"
|
||||||
- "arangomlextensions.ml.arangodb.com"
|
- "arangomlextensions.ml.arangodb.com"
|
||||||
- "arangomlstorages.ml.arangodb.com"
|
- "arangomlstorages.ml.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.networking -}}
|
||||||
# networking.arangodb.com
|
# networking.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangoroutes.networking.arangodb.com"
|
- "arangoroutes.networking.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.deploymentReplications -}}
|
||||||
# replication.database.arangodb.com
|
# replication.database.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangodeploymentreplications.replication.database.arangodb.com"
|
- "arangodeploymentreplications.replication.database.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.scheduler -}}
|
||||||
# scheduler.arangodb.com
|
# scheduler.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -72,6 +87,7 @@ rules:
|
||||||
- "arangoschedulerdeploymets.scheduler.arangodb.com"
|
- "arangoschedulerdeploymets.scheduler.arangodb.com"
|
||||||
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
|
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
|
||||||
- "arangoschedulercronjobs.scheduler.arangodb.com"
|
- "arangoschedulercronjobs.scheduler.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -13,18 +13,23 @@ metadata:
|
||||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
release: {{ .Release.Name }}
|
release: {{ .Release.Name }}
|
||||||
rules:
|
rules:
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
# analytics.arangodb.com
|
# analytics.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "graphanalyticsengines.analytics.arangodb.com"
|
- "graphanalyticsengines.analytics.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
# apps.arangodb.com
|
# apps.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangojobs.apps.arangodb.com"
|
- "arangojobs.apps.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
# backup.arangodb.com
|
# backup.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -32,6 +37,8 @@ rules:
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangobackuppolicies.backup.arangodb.com"
|
- "arangobackuppolicies.backup.arangodb.com"
|
||||||
- "arangobackups.backup.arangodb.com"
|
- "arangobackups.backup.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
# database.arangodb.com
|
# database.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -41,6 +48,8 @@ rules:
|
||||||
- "arangodeployments.database.arangodb.com"
|
- "arangodeployments.database.arangodb.com"
|
||||||
- "arangomembers.database.arangodb.com"
|
- "arangomembers.database.arangodb.com"
|
||||||
- "arangotasks.database.arangodb.com"
|
- "arangotasks.database.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.ml -}}
|
||||||
# ml.arangodb.com
|
# ml.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -50,18 +59,24 @@ rules:
|
||||||
- "arangomlcronjobs.ml.arangodb.com"
|
- "arangomlcronjobs.ml.arangodb.com"
|
||||||
- "arangomlextensions.ml.arangodb.com"
|
- "arangomlextensions.ml.arangodb.com"
|
||||||
- "arangomlstorages.ml.arangodb.com"
|
- "arangomlstorages.ml.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.networking -}}
|
||||||
# networking.arangodb.com
|
# networking.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangoroutes.networking.arangodb.com"
|
- "arangoroutes.networking.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.deploymentReplications -}}
|
||||||
# replication.database.arangodb.com
|
# replication.database.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
verbs: ["get", "list", "watch", "update", "delete"]
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
resourceNames:
|
resourceNames:
|
||||||
- "arangodeploymentreplications.replication.database.arangodb.com"
|
- "arangodeploymentreplications.replication.database.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.scheduler -}}
|
||||||
# scheduler.arangodb.com
|
# scheduler.arangodb.com
|
||||||
- apiGroups: ["apiextensions.k8s.io"]
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
resources: ["customresourcedefinitions"]
|
resources: ["customresourcedefinitions"]
|
||||||
|
@ -72,6 +87,7 @@ rules:
|
||||||
- "arangoschedulerdeploymets.scheduler.arangodb.com"
|
- "arangoschedulerdeploymets.scheduler.arangodb.com"
|
||||||
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
|
- "arangoschedulerbatchjobs.scheduler.arangodb.com"
|
||||||
- "arangoschedulercronjobs.scheduler.arangodb.com"
|
- "arangoschedulercronjobs.scheduler.arangodb.com"
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
|
@ -21,15 +21,17 @@
|
||||||
package internal
|
package internal
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"bufio"
|
||||||
"bytes"
|
"bytes"
|
||||||
"fmt"
|
"fmt"
|
||||||
"go/ast"
|
"go/ast"
|
||||||
"go/token"
|
"go/token"
|
||||||
"io"
|
"io"
|
||||||
"os"
|
"os"
|
||||||
|
"os/exec"
|
||||||
"path"
|
"path"
|
||||||
"path/filepath"
|
|
||||||
"reflect"
|
"reflect"
|
||||||
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
"testing"
|
"testing"
|
||||||
|
|
||||||
|
@ -365,12 +367,60 @@ func Test_GenerateAPIDocs(t *testing.T) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func prepareGitHubTreePath(t *testing.T, root string) string {
|
func writeFrontMatter(t *testing.T, out io.Writer, keyVals map[string]string) {
|
||||||
vStr, err := os.ReadFile(filepath.Join(root, "VERSION"))
|
fm := ""
|
||||||
require.NoError(t, err, "failed to read VERSION file")
|
util.IterateSorted(keyVals, func(key, val string) {
|
||||||
opVersion, err := semver.NewVersion(string(vStr))
|
fm += fmt.Sprintf("%s: %s\n", key, val)
|
||||||
|
})
|
||||||
|
|
||||||
|
if fm != "" {
|
||||||
|
fm = "---\n" + fm + "---\n\n"
|
||||||
|
}
|
||||||
|
|
||||||
|
write(t, out, fm)
|
||||||
|
}
|
||||||
|
|
||||||
|
func extractVersion(t *testing.T, root string) *semver.Version {
|
||||||
|
cmd := exec.Command("git", "tag", "--list")
|
||||||
|
cmd.Dir = root
|
||||||
|
|
||||||
|
out, err := cmd.StdoutPipe()
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
require.NoError(t, cmd.Start())
|
||||||
|
|
||||||
|
versions := semver.Versions{}
|
||||||
|
|
||||||
|
scanner := bufio.NewScanner(out)
|
||||||
|
// optionally, resize scanner's capacity for lines over 64K, see next example
|
||||||
|
for scanner.Scan() {
|
||||||
|
v := strings.TrimSpace(scanner.Text())
|
||||||
|
sm, err := semver.NewVersion(v)
|
||||||
|
if err != nil {
|
||||||
|
t.Logf("Unable to parse: %s", v)
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
if v := sm.PreRelease.Slice(); len(v) > 0 && v[0] != "" {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
|
||||||
|
versions = append(versions, sm)
|
||||||
|
}
|
||||||
|
|
||||||
|
require.NoError(t, cmd.Wait())
|
||||||
|
|
||||||
|
sort.Sort(versions)
|
||||||
|
|
||||||
|
if len(versions) == 0 {
|
||||||
|
require.Fail(t, "Required at least one version")
|
||||||
|
}
|
||||||
|
|
||||||
|
return versions[len(versions)-1]
|
||||||
|
}
|
||||||
|
|
||||||
|
func prepareGitHubTreePath(t *testing.T, root string) string {
|
||||||
|
opVersion := extractVersion(t, root)
|
||||||
ref := fmt.Sprintf("%d.%d.%d", opVersion.Major, opVersion.Minor, opVersion.Patch)
|
ref := fmt.Sprintf("%d.%d.%d", opVersion.Major, opVersion.Minor, opVersion.Patch)
|
||||||
return fmt.Sprintf("https://github.com/arangodb/kube-arangodb/blob/%s", ref)
|
return fmt.Sprintf("https://github.com/arangodb/kube-arangodb/blob/%s", ref)
|
||||||
}
|
}
|
||||||
|
@ -434,16 +484,3 @@ func write(t *testing.T, out io.Writer, format string, args ...interface{}) {
|
||||||
_, err := out.Write([]byte(fmt.Sprintf(format, args...)))
|
_, err := out.Write([]byte(fmt.Sprintf(format, args...)))
|
||||||
require.NoError(t, err)
|
require.NoError(t, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
func writeFrontMatter(t *testing.T, out io.Writer, keyVals map[string]string) {
|
|
||||||
fm := ""
|
|
||||||
util.IterateSorted(keyVals, func(key, val string) {
|
|
||||||
fm += fmt.Sprintf("%s: %s\n", key, val)
|
|
||||||
})
|
|
||||||
|
|
||||||
if fm != "" {
|
|
||||||
fm = "---\n" + fm + "---\n\n"
|
|
||||||
}
|
|
||||||
|
|
||||||
write(t, out, fm)
|
|
||||||
}
|
|
||||||
|
|
|
@ -1,55 +1,95 @@
|
||||||
platforms:
|
platforms:
|
||||||
- name: "Google GKE"
|
- name: "Google GKE"
|
||||||
versions:
|
versions:
|
||||||
- kubernetesVersion: "1.25-1.30"
|
- kubernetesVersion: "1.28-1.31"
|
||||||
arangoDBVersion: ">= 3.8.0"
|
arangoDBVersion: ">= 3.11.0"
|
||||||
state: "Production"
|
state: "Production"
|
||||||
remarks: "Don't use micro nodes "
|
remarks: "Don't use micro nodes"
|
||||||
|
- kubernetesVersion: "1.25-1.27"
|
||||||
|
arangoDBVersion: "3.9.0-3.10.0"
|
||||||
|
state: "EOL"
|
||||||
|
remarks: "Don't use micro nodes"
|
||||||
|
- kubernetesVersion: "< 1.25"
|
||||||
|
arangoDBVersion: "< 3.8.0"
|
||||||
|
state: "NotSupported"
|
||||||
|
remarks: "Don't use micro nodes"
|
||||||
- name: "Azure AKS"
|
- name: "Azure AKS"
|
||||||
versions:
|
versions:
|
||||||
- kubernetesVersion: "1.25-1.30"
|
- kubernetesVersion: "1.28-1.32"
|
||||||
arangoDBVersion: ">= 3.8.0"
|
arangoDBVersion: ">= 3.11.0"
|
||||||
state: "Production"
|
state: "Production"
|
||||||
|
- kubernetesVersion: "1.25-1.27"
|
||||||
|
arangoDBVersion: "3.9.0-3.10.0"
|
||||||
|
state: "EOL"
|
||||||
|
- kubernetesVersion: "< 1.25"
|
||||||
|
arangoDBVersion: "< 3.8.0"
|
||||||
|
state: "NotSupported"
|
||||||
- name: "Amazon EKS"
|
- name: "Amazon EKS"
|
||||||
versions:
|
versions:
|
||||||
- kubernetesVersion: "1.25-1.30"
|
- kubernetesVersion: "1.28-1.31"
|
||||||
arangoDBVersion: ">= 3.8.0"
|
arangoDBVersion: ">= 3.11.0"
|
||||||
state: "Production"
|
state: "Production"
|
||||||
providerRemarks: "[Amazon EKS](./docs/providers/eks)"
|
providerRemarks: "[Amazon EKS](./docs/providers/eks)"
|
||||||
|
- kubernetesVersion: "1.25-1.27"
|
||||||
|
arangoDBVersion: "3.9.0-3.10.0"
|
||||||
|
state: "EOL"
|
||||||
|
providerRemarks: "[Amazon EKS](./docs/providers/eks)"
|
||||||
|
- kubernetesVersion: "< 1.25"
|
||||||
|
arangoDBVersion: "< 3.8.0"
|
||||||
|
state: "NotSupported"
|
||||||
|
providerRemarks: "[Amazon EKS](./docs/providers/eks)"
|
||||||
- name: "IBM Cloud"
|
- name: "IBM Cloud"
|
||||||
versions:
|
versions:
|
||||||
- kubernetesVersion: "<= 1.20"
|
- kubernetesVersion: "1.29-1.31"
|
||||||
arangoDBVersion: ">= 3.8.0"
|
arangoDBVersion: ">= 3.11.0"
|
||||||
state: "Deprecated"
|
|
||||||
remarks: "Support will be dropped in Operator 1.5.0"
|
|
||||||
- kubernetesVersion: "1.25-1.30"
|
|
||||||
arangoDBVersion: ">= 3.8.0"
|
|
||||||
state: "Production"
|
state: "Production"
|
||||||
|
- kubernetesVersion: "1.25-1.28"
|
||||||
|
arangoDBVersion: "3.9.0-3.10.0"
|
||||||
|
state: "EOL"
|
||||||
|
- kubernetesVersion: "< 1.25"
|
||||||
|
arangoDBVersion: "< 3.8.0"
|
||||||
|
state: "NotSupported"
|
||||||
- name: "OpenShift"
|
- name: "OpenShift"
|
||||||
versions:
|
versions:
|
||||||
- kubernetesVersion: "3.11"
|
- kubernetesVersion: "4.11-4.17"
|
||||||
arangoDBVersion: ">= 3.8.0"
|
arangoDBVersion: ">= 3.11.0"
|
||||||
state: "Deprecated"
|
|
||||||
remarks: "Support will be dropped in Operator 1.5.0"
|
|
||||||
- kubernetesVersion: "4.2-4.14"
|
|
||||||
arangoDBVersion: ">= 3.8.0"
|
|
||||||
state: "Production"
|
state: "Production"
|
||||||
|
- kubernetesVersion: "4.2-4.11"
|
||||||
|
arangoDBVersion: "3.9.0-3.10.0"
|
||||||
|
state: "EOL"
|
||||||
|
- kubernetesVersion: "< 4.2"
|
||||||
|
arangoDBVersion: "< 3.8.0"
|
||||||
|
state: "NotSupported"
|
||||||
- name: "BareMetal (kubeadm)"
|
- name: "BareMetal (kubeadm)"
|
||||||
versions:
|
versions:
|
||||||
- kubernetesVersion: "<= 1.20"
|
- kubernetesVersion: "1.28-1.31"
|
||||||
arangoDBVersion: ">= 3.8.0"
|
arangoDBVersion: ">= 3.11.0"
|
||||||
state: "Deprecated"
|
|
||||||
remarks: "Support will be dropped in Operator 1.5.0"
|
|
||||||
- kubernetesVersion: "1.25-1.30"
|
|
||||||
arangoDBVersion: ">= 3.8.0"
|
|
||||||
state: "Production"
|
state: "Production"
|
||||||
|
- kubernetesVersion: "1.25-1.27"
|
||||||
|
arangoDBVersion: "3.9.0-3.10.0"
|
||||||
|
state: "EOL"
|
||||||
|
- kubernetesVersion: "< 1.25"
|
||||||
|
arangoDBVersion: "< 3.8.0"
|
||||||
|
state: "NotSupported"
|
||||||
- name: "Minikube"
|
- name: "Minikube"
|
||||||
versions:
|
versions:
|
||||||
- kubernetesVersion: "1.25-1.30"
|
- kubernetesVersion: "1.28-1.31"
|
||||||
arangoDBVersion: ">= 3.8.0"
|
arangoDBVersion: ">= 3.11.0"
|
||||||
state: "Devel Only"
|
state: "Devel Only"
|
||||||
|
- kubernetesVersion: "1.25-1.27"
|
||||||
|
arangoDBVersion: "3.9.0-3.10.0"
|
||||||
|
state: "EOL"
|
||||||
|
- kubernetesVersion: "< 1.25"
|
||||||
|
arangoDBVersion: "< 3.8.0"
|
||||||
|
state: "NotSupported"
|
||||||
- name: "Other"
|
- name: "Other"
|
||||||
versions:
|
versions:
|
||||||
- kubernetesVersion: "1.25-1.30"
|
- kubernetesVersion: "1.28-1.31"
|
||||||
arangoDBVersion: ">= 3.8.0"
|
arangoDBVersion: ">= 3.11.0"
|
||||||
state: "Devel Only"
|
state: "Production"
|
||||||
|
- kubernetesVersion: "1.25-1.27"
|
||||||
|
arangoDBVersion: "3.9.0-3.10.0"
|
||||||
|
state: "EOL"
|
||||||
|
- kubernetesVersion: "< 1.25"
|
||||||
|
arangoDBVersion: "< 3.8.0"
|
||||||
|
state: "NotSupported"
|
||||||
|
|
|
@ -331,9 +331,9 @@ func GenerateReadmePlatforms(root string) (string, error) {
|
||||||
pRemarks := md.NewColumn("Provider Remarks", md.ColumnLeftAlign)
|
pRemarks := md.NewColumn("Provider Remarks", md.ColumnLeftAlign)
|
||||||
t := md.NewTable(
|
t := md.NewTable(
|
||||||
platform,
|
platform,
|
||||||
|
state,
|
||||||
kVersion,
|
kVersion,
|
||||||
aVersion,
|
aVersion,
|
||||||
state,
|
|
||||||
remarks,
|
remarks,
|
||||||
pRemarks,
|
pRemarks,
|
||||||
)
|
)
|
||||||
|
@ -350,9 +350,13 @@ func GenerateReadmePlatforms(root string) (string, error) {
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, p := range d.Platforms {
|
for _, p := range d.Platforms {
|
||||||
for _, v := range p.Versions {
|
for id, v := range p.Versions {
|
||||||
|
n := ""
|
||||||
|
if id == 0 {
|
||||||
|
n = p.Name
|
||||||
|
}
|
||||||
if err := t.AddRow(map[md.Column]string{
|
if err := t.AddRow(map[md.Column]string{
|
||||||
platform: p.Name,
|
platform: n,
|
||||||
kVersion: util.TypeOrDefault[string](v.KubernetesVersion, ""),
|
kVersion: util.TypeOrDefault[string](v.KubernetesVersion, ""),
|
||||||
aVersion: util.TypeOrDefault[string](v.ArangoDBVersion, ""),
|
aVersion: util.TypeOrDefault[string](v.ArangoDBVersion, ""),
|
||||||
state: util.TypeOrDefault[string](v.State, ""),
|
state: util.TypeOrDefault[string](v.State, ""),
|
||||||
|
|
Loading…
Reference in a new issue