mirror of
https://github.com/arangodb/kube-arangodb.git
synced 2024-12-14 11:57:37 +00:00
[Documentation] Update Supported K8S Versions and Charts (#1687)
This commit is contained in:
parent
15f4c5259c
commit
d291779191
190 changed files with 6782 additions and 30 deletions
|
@ -84,7 +84,7 @@ jobs:
|
||||||
echo "This is not a pull request. Skipping..."
|
echo "This is not a pull request. Skipping..."
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
make tidy update-generated synchronize-v2alpha1-with-v1 generate-internal fmt yamlfmt
|
make tidy update-generated synchronize-v2alpha1-with-v1 generate-internal sync fmt yamlfmt
|
||||||
git checkout -- go.sum # ignore changes in go.sum
|
git checkout -- go.sum # ignore changes in go.sum
|
||||||
if [ ! -z "$(git status --porcelain)" ]; then
|
if [ ! -z "$(git status --porcelain)" ]; then
|
||||||
echo "There are uncommited changes!"
|
echo "There are uncommited changes!"
|
||||||
|
|
|
@ -7,6 +7,7 @@
|
||||||
- (Feature) Expose HTTP Client Config
|
- (Feature) Expose HTTP Client Config
|
||||||
- (Bugfix) MarkedToRemove Condition Check
|
- (Bugfix) MarkedToRemove Condition Check
|
||||||
- (Bugfix) Fix HTTP Client NPE
|
- (Bugfix) Fix HTTP Client NPE
|
||||||
|
- (Documentation) Update Supported K8S Versions and Charts
|
||||||
|
|
||||||
## [1.2.41](https://github.com/arangodb/kube-arangodb/tree/1.2.41) (2024-05-24)
|
## [1.2.41](https://github.com/arangodb/kube-arangodb/tree/1.2.41) (2024-05-24)
|
||||||
- (Maintenance) Bump Prometheus API Version
|
- (Maintenance) Bump Prometheus API Version
|
||||||
|
|
46
Makefile
46
Makefile
|
@ -270,7 +270,9 @@ SOURCES := $(shell $(SOURCES_QUERY))
|
||||||
NON_EE_SOURCES_QUERY := $(SOURCES_QUERY) ! -name '*.enterprise.go'
|
NON_EE_SOURCES_QUERY := $(SOURCES_QUERY) ! -name '*.enterprise.go'
|
||||||
NON_EE_SOURCES := $(shell $(NON_EE_SOURCES_QUERY))
|
NON_EE_SOURCES := $(shell $(NON_EE_SOURCES_QUERY))
|
||||||
|
|
||||||
YAML_EXCLUDE_DIRS := vendor .gobuild deps tools pkg/generated/clientset pkg/generated/informers pkg/generated/listers chart/kube-arangodb/templates chart/kube-arangodb-crd/templates chart/arangodb-ingress-proxy/templates
|
YAML_EXCLUDE_DIRS := vendor .gobuild deps tools pkg/generated/clientset pkg/generated/informers pkg/generated/listers \
|
||||||
|
chart/kube-arangodb/templates chart/kube-arangodb-arm64/templates chart/kube-arangodb-enterprise/templates chart/kube-arangodb-enterprise-arm64/templates \
|
||||||
|
chart/kube-arangodb-crd/templates chart/arangodb-ingress-proxy/templates
|
||||||
YAML_EXCLUDE_FILES :=
|
YAML_EXCLUDE_FILES :=
|
||||||
YAML_QUERY := find ./ -type f -name '*.yaml' $(foreach EXCLUDE_DIR,$(YAML_EXCLUDE_DIRS), ! -path "*/$(EXCLUDE_DIR)/*") $(foreach EXCLUDE_FILE,$(YAML_EXCLUDE_FILES), ! -path "*/$(EXCLUDE_FILE)")
|
YAML_QUERY := find ./ -type f -name '*.yaml' $(foreach EXCLUDE_DIR,$(YAML_EXCLUDE_DIRS), ! -path "*/$(EXCLUDE_DIR)/*") $(foreach EXCLUDE_FILE,$(YAML_EXCLUDE_FILES), ! -path "*/$(EXCLUDE_FILE)")
|
||||||
YAMLS := $(shell $(YAML_QUERY))
|
YAMLS := $(shell $(YAML_QUERY))
|
||||||
|
@ -616,6 +618,30 @@ chart-operator: helm
|
||||||
|
|
||||||
manifests: chart-operator
|
manifests: chart-operator
|
||||||
|
|
||||||
|
.PHONY: chart-operator-enterprise
|
||||||
|
chart-operator-enterprise: export CHART_NAME := kube-arangodb-enterprise
|
||||||
|
chart-operator-enterprise: helm
|
||||||
|
@mkdir -p "$(ROOTDIR)/bin/charts"
|
||||||
|
@$(HELM_PACKAGE_CMD)
|
||||||
|
|
||||||
|
manifests: chart-operator-enterprise
|
||||||
|
|
||||||
|
.PHONY: chart-operator-arm64
|
||||||
|
chart-operator-arm64: export CHART_NAME := kube-arangodb-arm64
|
||||||
|
chart-operator-arm64: helm
|
||||||
|
@mkdir -p "$(ROOTDIR)/bin/charts"
|
||||||
|
@$(HELM_PACKAGE_CMD)
|
||||||
|
|
||||||
|
manifests: chart-operator-arm64
|
||||||
|
|
||||||
|
.PHONY: chart-operator-enterprise-arm64
|
||||||
|
chart-operator-enterprise-arm64: export CHART_NAME := kube-arangodb-enterprise-arm64
|
||||||
|
chart-operator-enterprise-arm64: helm
|
||||||
|
@mkdir -p "$(ROOTDIR)/bin/charts"
|
||||||
|
@$(HELM_PACKAGE_CMD)
|
||||||
|
|
||||||
|
manifests: chart-operator-enterprise-arm64
|
||||||
|
|
||||||
.PHONY: manifests-verify
|
.PHONY: manifests-verify
|
||||||
manifests-verify:
|
manifests-verify:
|
||||||
$(MAKE) manifest-verify-plain-ce
|
$(MAKE) manifest-verify-plain-ce
|
||||||
|
@ -870,6 +896,24 @@ CRDS:=apps-job \
|
||||||
scheduler-profile \
|
scheduler-profile \
|
||||||
analytics-graphanalyticsengine
|
analytics-graphanalyticsengine
|
||||||
|
|
||||||
|
.PHONY: sync
|
||||||
|
sync:
|
||||||
|
|
||||||
.PHONY: sync-crds
|
.PHONY: sync-crds
|
||||||
sync-crds:
|
sync-crds:
|
||||||
@cp $(foreach FILE,$(CRDS),"$(ROOT)/chart/kube-arangodb/crds/$(FILE).yaml" ) "$(ROOT)/pkg/crd/crds/"
|
@cp $(foreach FILE,$(CRDS),"$(ROOT)/chart/kube-arangodb/crds/$(FILE).yaml" ) "$(ROOT)/pkg/crd/crds/"
|
||||||
|
|
||||||
|
sync: sync-crds
|
||||||
|
|
||||||
|
.PHONY: sync-charts
|
||||||
|
sync-charts:
|
||||||
|
@(cd "$(ROOT)/chart/kube-arangodb"; find . -type d -not -name values.yaml -exec mkdir -p "$(ROOT)/chart/kube-arangodb-enterprise/{}" \;)
|
||||||
|
@(cd "$(ROOT)/chart/kube-arangodb"; find . -type f -not -name values.yaml -not -name Chart.yaml -exec cp "$(ROOT)/chart/kube-arangodb/{}" "$(ROOT)/chart/kube-arangodb-enterprise/{}" \;)
|
||||||
|
|
||||||
|
@(cd "$(ROOT)/chart/kube-arangodb"; find . -type d -not -name values.yaml -exec mkdir -p "$(ROOT)/chart/kube-arangodb-enterprise-arm64/{}" \;)
|
||||||
|
@(cd "$(ROOT)/chart/kube-arangodb"; find . -type f -not -name values.yaml -not -name Chart.yaml -exec cp "$(ROOT)/chart/kube-arangodb/{}" "$(ROOT)/chart/kube-arangodb-enterprise-arm64/{}" \;)
|
||||||
|
|
||||||
|
@(cd "$(ROOT)/chart/kube-arangodb"; find . -type d -not -name values.yaml -exec mkdir -p "$(ROOT)/chart/kube-arangodb-arm64/{}" \;)
|
||||||
|
@(cd "$(ROOT)/chart/kube-arangodb"; find . -type f -not -name values.yaml -not -name Chart.yaml -exec cp "$(ROOT)/chart/kube-arangodb/{}" "$(ROOT)/chart/kube-arangodb-arm64/{}" \;)
|
||||||
|
|
||||||
|
sync: sync-charts
|
||||||
|
|
48
README.md
48
README.md
|
@ -54,17 +54,17 @@ covers individual newer features separately.
|
||||||
|
|
||||||
| Platform | Kubernetes Version | ArangoDB Version | State | Remarks | Provider Remarks |
|
| Platform | Kubernetes Version | ArangoDB Version | State | Remarks | Provider Remarks |
|
||||||
|:--------------------|:-------------------|:-----------------|:-----------|:------------------------------------------|:-----------------------------------|
|
|:--------------------|:-------------------|:-----------------|:-----------|:------------------------------------------|:-----------------------------------|
|
||||||
| Google GKE | 1.21-1.28 | >= 3.8.0 | Production | Don't use micro nodes | |
|
| Google GKE | 1.25-1.30 | >= 3.8.0 | Production | Don't use micro nodes | |
|
||||||
| Azure AKS | 1.21-1.28 | >= 3.8.0 | Production | | |
|
| Azure AKS | 1.25-1.30 | >= 3.8.0 | Production | | |
|
||||||
| Amazon EKS | 1.21-1.28 | >= 3.8.0 | Production | | [Amazon EKS](./docs/providers/eks) |
|
| Amazon EKS | 1.25-1.30 | >= 3.8.0 | Production | | [Amazon EKS](./docs/providers/eks) |
|
||||||
| IBM Cloud | <= 1.20 | >= 3.8.0 | Deprecated | Support will be dropped in Operator 1.5.0 | |
|
| IBM Cloud | <= 1.20 | >= 3.8.0 | Deprecated | Support will be dropped in Operator 1.5.0 | |
|
||||||
| IBM Cloud | 1.21-1.28 | >= 3.8.0 | Production | | |
|
| IBM Cloud | 1.25-1.30 | >= 3.8.0 | Production | | |
|
||||||
| OpenShift | 3.11 | >= 3.8.0 | Deprecated | Support will be dropped in Operator 1.5.0 | |
|
| OpenShift | 3.11 | >= 3.8.0 | Deprecated | Support will be dropped in Operator 1.5.0 | |
|
||||||
| OpenShift | 4.2-4.14 | >= 3.8.0 | Production | | |
|
| OpenShift | 4.2-4.14 | >= 3.8.0 | Production | | |
|
||||||
| BareMetal (kubeadm) | <= 1.20 | >= 3.8.0 | Deprecated | Support will be dropped in Operator 1.5.0 | |
|
| BareMetal (kubeadm) | <= 1.20 | >= 3.8.0 | Deprecated | Support will be dropped in Operator 1.5.0 | |
|
||||||
| BareMetal (kubeadm) | 1.21-1.28 | >= 3.8.0 | Production | | |
|
| BareMetal (kubeadm) | 1.25-1.30 | >= 3.8.0 | Production | | |
|
||||||
| Minikube | 1.21-1.28 | >= 3.8.0 | Devel Only | | |
|
| Minikube | 1.25-1.30 | >= 3.8.0 | Devel Only | | |
|
||||||
| Other | 1.21-1.28 | >= 3.8.0 | Devel Only | | |
|
| Other | 1.25-1.30 | >= 3.8.0 | Devel Only | | |
|
||||||
|
|
||||||
[END_INJECT]: # (kubernetesVersionsTable)
|
[END_INJECT]: # (kubernetesVersionsTable)
|
||||||
|
|
||||||
|
@ -285,6 +285,32 @@ resources:
|
||||||
|
|
||||||
Only use this procedure for clean installation of the operator. For upgrades see next section
|
Only use this procedure for clean installation of the operator. For upgrades see next section
|
||||||
|
|
||||||
|
#### From Chart Repository
|
||||||
|
|
||||||
|
##### Chart Installation
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Add helm repository
|
||||||
|
helm repo add kube-arangodb https://arangodb.github.io/kube-arangodb
|
||||||
|
```
|
||||||
|
|
||||||
|
##### Community Edition
|
||||||
|
```bash
|
||||||
|
# The following will install the operator and basic CRDs resources.
|
||||||
|
helm install --generate-name kube-arangodb/kube-arangodb
|
||||||
|
# To use `ArangoLocalStorage`, set field `operator.features.storage` to true
|
||||||
|
helm install --generate-name kube-arangodb/kube-arangodb --set "operator.features.storage=true"
|
||||||
|
```
|
||||||
|
|
||||||
|
##### Enterprise Edition
|
||||||
|
```bash
|
||||||
|
helm install --generate-name kube-arangodb/kube-arangodb-enterprise
|
||||||
|
# To use `ArangoLocalStorage`, set field `operator.features.storage` to true
|
||||||
|
helm install --generate-name kube-arangodb/kube-arangodb-enterprise --set "operator.features.storage=true"
|
||||||
|
```
|
||||||
|
|
||||||
|
#### From Chart Release
|
||||||
|
|
||||||
##### Community Edition
|
##### Community Edition
|
||||||
```bash
|
```bash
|
||||||
# The following will install the operator and basic CRDs resources.
|
# The following will install the operator and basic CRDs resources.
|
||||||
|
@ -296,9 +322,9 @@ helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/
|
||||||
##### Enterprise Edition
|
##### Enterprise Edition
|
||||||
```bash
|
```bash
|
||||||
# The following will install the operator and basic CRDs resources.
|
# The following will install the operator and basic CRDs resources.
|
||||||
helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/download/1.2.41/kube-arangodb-1.2.41.tgz --set "operator.image=arangodb/kube-arangodb-enterprise:1.2.41"
|
helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/download/1.2.41/kube-arangodb-enterprise-1.2.41.tgz
|
||||||
# To use `ArangoLocalStorage`, set field `operator.features.storage` to true
|
# To use `ArangoLocalStorage`, set field `operator.features.storage` to true
|
||||||
helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/download/1.2.41/kube-arangodb-1.2.41.tgz --set "operator.image=arangodb/kube-arangodb-enterprise:1.2.41" --set "operator.features.storage=true"
|
helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/download/1.2.41/kube-arangodb-enterprise-1.2.41.tgz --set "operator.features.storage=true"
|
||||||
```
|
```
|
||||||
|
|
||||||
### Upgrading the operator using Helm
|
### Upgrading the operator using Helm
|
||||||
|
@ -335,9 +361,9 @@ helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/
|
||||||
##### Enterprise Edition
|
##### Enterprise Edition
|
||||||
```bash
|
```bash
|
||||||
# The following will install the operator and basic CRDs resources.
|
# The following will install the operator and basic CRDs resources.
|
||||||
helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/download/1.2.41/kube-arangodb-1.2.41.tgz --set "operator.image=arangodb/kube-arangodb-enterprise:1.2.41"
|
helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/download/1.2.41/kube-arangodb-enterprise-1.2.41.tgz
|
||||||
# To use `ArangoLocalStorage`, set field `operator.features.storage` to true
|
# To use `ArangoLocalStorage`, set field `operator.features.storage` to true
|
||||||
helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/download/1.2.41/kube-arangodb-1.2.41.tgz --set "operator.image=arangodb/kube-arangodb-enterprise:1.2.41" --set "operator.features.storage=true"
|
helm install --generate-name https://github.com/arangodb/kube-arangodb/releases/download/1.2.41/kube-arangodb-enterprise-1.2.41.tgz --set "operator.features.storage=true"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Building
|
## Building
|
||||||
|
|
5
chart/kube-arangodb-arm64/Chart.yaml
Normal file
5
chart/kube-arangodb-arm64/Chart.yaml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# do not switch to V2 yet - we still need to support Helm 2
|
||||||
|
apiVersion: v1
|
||||||
|
name: kube-arangodb-arm64
|
||||||
|
version: 1.2.41
|
||||||
|
description: "ArangoDB Kubernetes Operator with ARM64 defaults"
|
15
chart/kube-arangodb-arm64/LICENSE
Normal file
15
chart/kube-arangodb-arm64/LICENSE
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
Copyright 2016-2022 ArangoDB GmbH, Cologne, Germany
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
|
||||||
|
Copyright holder is ArangoDB GmbH, Cologne, Germany
|
206
chart/kube-arangodb-arm64/README.md
Normal file
206
chart/kube-arangodb-arm64/README.md
Normal file
|
@ -0,0 +1,206 @@
|
||||||
|
# Introduction
|
||||||
|
|
||||||
|
Kubernetes ArangoDB Operator.
|
||||||
|
|
||||||
|
# Chart Details
|
||||||
|
|
||||||
|
Chart will install fully operational ArangoDB Kubernetes Operator.
|
||||||
|
|
||||||
|
# Resources Required
|
||||||
|
|
||||||
|
In default installation deployment with 1 pod will be created. The operator pod require 256MB of ram and 250m of CPU.
|
||||||
|
|
||||||
|
# Installing the Chart
|
||||||
|
|
||||||
|
Chart can be installed in two methods:
|
||||||
|
- With all Operators in single Helm Release
|
||||||
|
- One Helm Release per Operator
|
||||||
|
|
||||||
|
Possible Operators:
|
||||||
|
- `ArangoDeployment` - enabled by default
|
||||||
|
- `ArangoDeploymentReplications` - enabled by default
|
||||||
|
- `ArangoLocalStorage` - disabled by default
|
||||||
|
- `ArangoBackup` - disabled by default
|
||||||
|
- `ArangoJob` - disabled by default
|
||||||
|
- `ArangoClusterSynchronization` - disabled by default
|
||||||
|
|
||||||
|
To install Operators in mode "One per Helm Release" we can use:
|
||||||
|
|
||||||
|
```
|
||||||
|
helm install --name arango-deployment kube-arangodb.tar.gz \
|
||||||
|
--set operator.features.deployment=true \
|
||||||
|
--set operator.features.deploymentReplications=false \
|
||||||
|
--set operator.features.storage=false \
|
||||||
|
--set operator.features.backup=false \
|
||||||
|
--set operator.features.apps=false \
|
||||||
|
--set operator.features.k8sToK8sClusterSync=false
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
# Configuration
|
||||||
|
|
||||||
|
### `operator.image`
|
||||||
|
|
||||||
|
Image used for the ArangoDB Operator.
|
||||||
|
|
||||||
|
Default: `arangodb/kube-arangodb:latest`
|
||||||
|
|
||||||
|
### `operator.imagePullPolicy`
|
||||||
|
|
||||||
|
Image pull policy for Operator images.
|
||||||
|
|
||||||
|
Default: `IfNotPresent`
|
||||||
|
|
||||||
|
### `operator.imagePullSecrets`
|
||||||
|
|
||||||
|
List of the Image Pull Secrets for Operator images.
|
||||||
|
|
||||||
|
Default: `[]string`
|
||||||
|
|
||||||
|
### `operator.scope`
|
||||||
|
|
||||||
|
Scope on which Operator will be configured.
|
||||||
|
|
||||||
|
Default: `legacy`
|
||||||
|
|
||||||
|
Supported modes:
|
||||||
|
- `legacy` - mode with limited cluster scope access
|
||||||
|
- `namespaced` - mode with namespace access only
|
||||||
|
|
||||||
|
### `operator.service.type`
|
||||||
|
|
||||||
|
Type of the Operator service.
|
||||||
|
|
||||||
|
Default: `ClusterIP`
|
||||||
|
|
||||||
|
### `operator.annotations`
|
||||||
|
|
||||||
|
Annotations passed to the Operator Deployment definition.
|
||||||
|
|
||||||
|
Default: `[]string`
|
||||||
|
|
||||||
|
### `operator.resources.limits.cpu`
|
||||||
|
|
||||||
|
CPU limits for operator pods.
|
||||||
|
|
||||||
|
Default: `1`
|
||||||
|
|
||||||
|
### `operator.resources.limits.memory`
|
||||||
|
|
||||||
|
Memory limits for operator pods.
|
||||||
|
|
||||||
|
Default: `256Mi`
|
||||||
|
|
||||||
|
### `operator.resources.requested.cpu`
|
||||||
|
|
||||||
|
Requested CPI by Operator pods.
|
||||||
|
|
||||||
|
Default: `250m`
|
||||||
|
|
||||||
|
### `operator.resources.requested.memory`
|
||||||
|
|
||||||
|
Requested memory for operator pods.
|
||||||
|
|
||||||
|
Default: `256Mi`
|
||||||
|
|
||||||
|
### `operator.nodeSelector`
|
||||||
|
|
||||||
|
NodeSelector for Deployment pods.
|
||||||
|
|
||||||
|
Default: `{}`
|
||||||
|
|
||||||
|
### `operator.tolerations`
|
||||||
|
|
||||||
|
Tolerations for Deployment pods.
|
||||||
|
|
||||||
|
There is built in configuration (can not be changed):
|
||||||
|
```yaml
|
||||||
|
tolerations:
|
||||||
|
- key: "node.kubernetes.io/unreachable"
|
||||||
|
operator: "Exists"
|
||||||
|
effect: "NoExecute"
|
||||||
|
tolerationSeconds: 5
|
||||||
|
- key: "node.kubernetes.io/not-ready"
|
||||||
|
operator: "Exists"
|
||||||
|
effect: "NoExecute"
|
||||||
|
tolerationSeconds: 5
|
||||||
|
```
|
||||||
|
|
||||||
|
which can be extended by additional entries e.g.:
|
||||||
|
```yaml
|
||||||
|
tolerations:
|
||||||
|
- key: devops
|
||||||
|
operator: Exists
|
||||||
|
effect: NoSchedule
|
||||||
|
```
|
||||||
|
Default (empty): `[]`
|
||||||
|
|
||||||
|
### `operator.securityContext.runAsUser`
|
||||||
|
|
||||||
|
Controls which user ID the containers are run with.
|
||||||
|
|
||||||
|
Default: `1000`
|
||||||
|
|
||||||
|
### `operator.replicaCount`
|
||||||
|
|
||||||
|
Replication count for Operator deployment.
|
||||||
|
|
||||||
|
Default: `1`
|
||||||
|
|
||||||
|
### `operator.updateStrategy`
|
||||||
|
|
||||||
|
Update strategy for operator pod.
|
||||||
|
|
||||||
|
Default: `Recreate`
|
||||||
|
|
||||||
|
### `operator.features.deployment`
|
||||||
|
|
||||||
|
Define if ArangoDeployment Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `true`
|
||||||
|
|
||||||
|
### `operator.features.deploymentReplications`
|
||||||
|
|
||||||
|
Define if ArangoDeploymentReplications Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `true`
|
||||||
|
|
||||||
|
### `operator.features.storage`
|
||||||
|
|
||||||
|
Define if ArangoLocalStorage Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `false`
|
||||||
|
|
||||||
|
### `operator.features.backup`
|
||||||
|
|
||||||
|
Define if ArangoBackup Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `false`
|
||||||
|
|
||||||
|
### `operator.features.apps`
|
||||||
|
|
||||||
|
Define if ArangoJob Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `false`
|
||||||
|
|
||||||
|
### `operator.features.k8sToK8sClusterSync`
|
||||||
|
|
||||||
|
Define if ArangoClusterSynchronization Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `false`
|
||||||
|
|
||||||
|
### `rbac.enabled`
|
||||||
|
|
||||||
|
Define if RBAC should be enabled.
|
||||||
|
|
||||||
|
Default: `true`
|
||||||
|
|
||||||
|
### `operator.architectures`
|
||||||
|
|
||||||
|
List of supported architectures.
|
||||||
|
|
||||||
|
Default: `[]string{"amd64"}`
|
||||||
|
|
||||||
|
# Limitations
|
||||||
|
|
||||||
|
N/A
|
|
@ -0,0 +1,22 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: graphanalyticsengines.analytics.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: analytics.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: GraphAnalyticsEngine
|
||||||
|
listKind: GraphAnalyticsEngineList
|
||||||
|
plural: graphanalyticsengines
|
||||||
|
singular: graphanalyticsengine
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
29
chart/kube-arangodb-arm64/crds/apps-job.yaml
Normal file
29
chart/kube-arangodb-arm64/crds/apps-job.yaml
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangojobs.apps.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: apps.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoJob
|
||||||
|
listKind: ArangoJobList
|
||||||
|
plural: arangojobs
|
||||||
|
singular: arangojob
|
||||||
|
shortNames:
|
||||||
|
- arangojob
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.arangoDeploymentName
|
||||||
|
description: Deployment name
|
||||||
|
name: ArangoDeploymentName
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
103
chart/kube-arangodb-arm64/crds/backups-backup.yaml
Normal file
103
chart/kube-arangodb-arm64/crds/backups-backup.yaml
Normal file
|
@ -0,0 +1,103 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangobackups.backup.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: backup.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoBackup
|
||||||
|
listKind: ArangoBackupList
|
||||||
|
plural: arangobackups
|
||||||
|
shortNames:
|
||||||
|
- arangobackup
|
||||||
|
singular: arangobackup
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.policyName
|
||||||
|
description: Policy name
|
||||||
|
name: Policy
|
||||||
|
type: string
|
||||||
|
- jsonPath: .spec.deployment.name
|
||||||
|
description: Deployment name
|
||||||
|
name: Deployment
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.version
|
||||||
|
description: Backup Version
|
||||||
|
name: Version
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.createdAt
|
||||||
|
description: Backup Creation Timestamp
|
||||||
|
name: Created
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.sizeInBytes
|
||||||
|
description: Backup Size in Bytes
|
||||||
|
name: Size
|
||||||
|
type: integer
|
||||||
|
format: byte
|
||||||
|
- jsonPath: .status.backup.numberOfDBServers
|
||||||
|
description: Backup Number of the DB Servers
|
||||||
|
name: DBServers
|
||||||
|
type: integer
|
||||||
|
- jsonPath: .status.state
|
||||||
|
description: The actual state of the ArangoBackup
|
||||||
|
name: State
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.message
|
||||||
|
priority: 1
|
||||||
|
description: Message of the ArangoBackup object
|
||||||
|
name: Message
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.policyName
|
||||||
|
description: Policy name
|
||||||
|
name: Policy
|
||||||
|
type: string
|
||||||
|
- jsonPath: .spec.deployment.name
|
||||||
|
description: Deployment name
|
||||||
|
name: Deployment
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.version
|
||||||
|
description: Backup Version
|
||||||
|
name: Version
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.createdAt
|
||||||
|
description: Backup Creation Timestamp
|
||||||
|
name: Created
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.sizeInBytes
|
||||||
|
description: Backup Size in Bytes
|
||||||
|
name: Size
|
||||||
|
type: integer
|
||||||
|
format: byte
|
||||||
|
- jsonPath: .status.backup.numberOfDBServers
|
||||||
|
description: Backup Number of the DB Servers
|
||||||
|
name: DBServers
|
||||||
|
type: integer
|
||||||
|
- jsonPath: .status.state
|
||||||
|
description: The actual state of the ArangoBackup
|
||||||
|
name: State
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.message
|
||||||
|
priority: 1
|
||||||
|
description: Message of the ArangoBackup object
|
||||||
|
name: Message
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
62
chart/kube-arangodb-arm64/crds/backups-backuppolicy.yaml
Normal file
62
chart/kube-arangodb-arm64/crds/backups-backuppolicy.yaml
Normal file
|
@ -0,0 +1,62 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangobackuppolicies.backup.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: backup.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoBackupPolicy
|
||||||
|
listKind: ArangoBackupPolicyList
|
||||||
|
plural: arangobackuppolicies
|
||||||
|
shortNames:
|
||||||
|
- arangobackuppolicy
|
||||||
|
- arangobp
|
||||||
|
singular: arangobackuppolicy
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.schedule
|
||||||
|
description: Schedule
|
||||||
|
name: Schedule
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.scheduled
|
||||||
|
description: Scheduled
|
||||||
|
name: Scheduled
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.message
|
||||||
|
priority: 1
|
||||||
|
description: Message of the ArangoBackupPolicy object
|
||||||
|
name: Message
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.schedule
|
||||||
|
description: Schedule
|
||||||
|
name: Schedule
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.scheduled
|
||||||
|
description: Scheduled
|
||||||
|
name: Scheduled
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.message
|
||||||
|
priority: 1
|
||||||
|
description: Message of the ArangoBackupPolicy object
|
||||||
|
name: Message
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
|
@ -0,0 +1,33 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangoclustersynchronizations.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoClusterSynchronization
|
||||||
|
listKind: ArangoClusterSynchronizationList
|
||||||
|
plural: arangoclustersynchronizations
|
||||||
|
singular: arangoclustersynchronization
|
||||||
|
shortNames:
|
||||||
|
- arangoclustersync
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
39
chart/kube-arangodb-arm64/crds/database-deployment.yaml
Normal file
39
chart/kube-arangodb-arm64/crds/database-deployment.yaml
Normal file
|
@ -0,0 +1,39 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangodeployments.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoDeployment
|
||||||
|
listKind: ArangoDeploymentList
|
||||||
|
plural: arangodeployments
|
||||||
|
shortNames:
|
||||||
|
- arangodb
|
||||||
|
- arango
|
||||||
|
singular: arangodeployment
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
33
chart/kube-arangodb-arm64/crds/database-member.yaml
Normal file
33
chart/kube-arangodb-arm64/crds/database-member.yaml
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomembers.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMember
|
||||||
|
listKind: ArangoMemberList
|
||||||
|
plural: arangomembers
|
||||||
|
shortNames:
|
||||||
|
- arangomembers
|
||||||
|
singular: arangomember
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
36
chart/kube-arangodb-arm64/crds/database-task.yaml
Normal file
36
chart/kube-arangodb-arm64/crds/database-task.yaml
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangotasks.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoTask
|
||||||
|
listKind: ArangoTaskList
|
||||||
|
plural: arangotasks
|
||||||
|
singular: arangotask
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
31
chart/kube-arangodb-arm64/crds/ml-extension.yaml
Normal file
31
chart/kube-arangodb-arm64/crds/ml-extension.yaml
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomlextensions.ml.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: ml.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMLExtension
|
||||||
|
listKind: ArangoMLExtensionList
|
||||||
|
plural: arangomlextensions
|
||||||
|
singular: arangomlextension
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1beta1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
22
chart/kube-arangodb-arm64/crds/ml-job-batch.yaml
Normal file
22
chart/kube-arangodb-arm64/crds/ml-job-batch.yaml
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomlbatchjobs.ml.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: ml.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMLBatchJob
|
||||||
|
listKind: ArangoMLBatchJobList
|
||||||
|
plural: arangomlbatchjobs
|
||||||
|
singular: arangomlbatchjob
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
22
chart/kube-arangodb-arm64/crds/ml-job-cron.yaml
Normal file
22
chart/kube-arangodb-arm64/crds/ml-job-cron.yaml
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomlcronjobs.ml.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: ml.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMLCronJob
|
||||||
|
listKind: ArangoMLCronJobList
|
||||||
|
plural: arangomlcronjobs
|
||||||
|
singular: arangomlcronjob
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
31
chart/kube-arangodb-arm64/crds/ml-storage.yaml
Normal file
31
chart/kube-arangodb-arm64/crds/ml-storage.yaml
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomlstorages.ml.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: ml.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMLStorage
|
||||||
|
listKind: ArangoMLStorageList
|
||||||
|
plural: arangomlstorages
|
||||||
|
singular: arangomlstorage
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1beta1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
|
@ -0,0 +1,38 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangodeploymentreplications.replication.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: replication.database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoDeploymentReplication
|
||||||
|
listKind: ArangoDeploymentReplicationList
|
||||||
|
plural: arangodeploymentreplications
|
||||||
|
shortNames:
|
||||||
|
- arangorepl
|
||||||
|
singular: arangodeploymentreplication
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
31
chart/kube-arangodb-arm64/crds/scheduler-profile.yaml
Normal file
31
chart/kube-arangodb-arm64/crds/scheduler-profile.yaml
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangoprofiles.scheduler.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: scheduler.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoProfile
|
||||||
|
listKind: ArangoProfileList
|
||||||
|
plural: arangoprofiles
|
||||||
|
singular: arangoprofile
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1beta1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
7
chart/kube-arangodb-arm64/templates/NOTES.txt
Normal file
7
chart/kube-arangodb-arm64/templates/NOTES.txt
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
You have installed Kubernetes ArangoDB Operator in version {{ .Chart.Version }}
|
||||||
|
|
||||||
|
To access ArangoDeployments you can use:
|
||||||
|
|
||||||
|
kubectl --namespace "{{ .Release.Namespace }}" get arangodeployments
|
||||||
|
|
||||||
|
More details can be found on https://github.com/arangodb/kube-arangodb/tree/{{ .Chart.Version }}/docs
|
47
chart/kube-arangodb-arm64/templates/_helpers.tpl
Normal file
47
chart/kube-arangodb-arm64/templates/_helpers.tpl
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
{{/* vim: set filetype=mustache: */}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.name" -}}
|
||||||
|
{{- printf "%s" .Chart.Name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Expand the name of the release.
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.releaseName" -}}
|
||||||
|
{{- printf "%s" .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Expand the name of the operator.
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.operatorName" -}}
|
||||||
|
{{- printf "arango-%s-operator" .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Combine name of the deployment.
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.fullName" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create the name of the Operator RBAC role
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.rbac" -}}
|
||||||
|
{{- printf "%s-%s" (include "kube-arangodb.operatorName" .) "rbac" | trunc 95 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create the name of the Operator Cluster resources
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.rbac-cluster" -}}
|
||||||
|
{{- if eq .Release.Namespace "default" -}}
|
||||||
|
{{- printf "%s-rbac" (include "kube-arangodb.operatorName" .) | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- printf "%s-%s-rbac" (include "kube-arangodb.operatorName" .) .Release.Namespace | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-analytics
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-analytics
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,22 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-analytics
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,25 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-analytics
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-analytics
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,41 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-analytics
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- "analytics.arangodb.com"
|
||||||
|
resources:
|
||||||
|
- "graphanalyticsengines"
|
||||||
|
- "graphanalyticsengines/status"
|
||||||
|
verbs:
|
||||||
|
- "*"
|
||||||
|
- apiGroups:
|
||||||
|
- "database.arangodb.com"
|
||||||
|
resources:
|
||||||
|
- "arangodeployments"
|
||||||
|
verbs:
|
||||||
|
- "get"
|
||||||
|
- "list"
|
||||||
|
- "watch"
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources:
|
||||||
|
- "statefulsets"
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: [ "" ]
|
||||||
|
resources:
|
||||||
|
- "secrets"
|
||||||
|
- "services"
|
||||||
|
verbs: [ "*" ]
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-apps
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-apps
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,22 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-apps
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,47 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-apps
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-apps
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-job
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-job
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}-job
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
54
chart/kube-arangodb-arm64/templates/apps-operator/role.yaml
Normal file
54
chart/kube-arangodb-arm64/templates/apps-operator/role.yaml
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-apps
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods", "services", "endpoints"]
|
||||||
|
verbs: ["get", "update"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["events"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["secrets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources: ["deployments", "replicasets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["batch"]
|
||||||
|
resources: ["jobs"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangodeployments"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
- apiGroups: ["apps.arangodb.com"]
|
||||||
|
resources: ["arangojobs","arangojobs/status"]
|
||||||
|
verbs: ["*"]
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-job
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangodeployments"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,19 @@
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}-job
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
{{- if .Values.operator.imagePullSecrets }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{- range .Values.operator.imagePullSecrets }}
|
||||||
|
- name: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-backup
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-backup
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,22 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-backup
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,25 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-backup
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-backup
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,35 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-backup
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods", "services", "endpoints"]
|
||||||
|
verbs: ["get", "update"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["events"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["secrets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources: ["deployments", "replicasets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["backup.arangodb.com"]
|
||||||
|
resources: ["arangobackuppolicies", "arangobackuppolicies/status", "arangobackups", "arangobackups/status"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangodeployments"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.enableCRDManagement -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-crd
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-crd
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
32
chart/kube-arangodb-arm64/templates/crd/cluster-role.yaml
Normal file
32
chart/kube-arangodb-arm64/templates/crd/cluster-role.yaml
Normal file
|
@ -0,0 +1,32 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.enableCRDManagement -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-crd
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
|
resourceNames:
|
||||||
|
- "arangodeployments.database.arangodb.com"
|
||||||
|
- "arangoclustersynchronizations.database.arangodb.com"
|
||||||
|
- "arangomembers.database.arangodb.com"
|
||||||
|
- "arangotasks.database.arangodb.com"
|
||||||
|
- "arangodeploymentreplications.replication.database.arangodb.com"
|
||||||
|
- "arangobackups.backup.arangodb.com"
|
||||||
|
- "arangobackuppolicies.backup.arangodb.com"
|
||||||
|
- "arangojobs.apps.arangodb.com"
|
||||||
|
- "arangolocalstorages.storage.arangodb.com"
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-deployment
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-deployment
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,25 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-deployment
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["namespaces", "nodes", "persistentvolumes"]
|
||||||
|
verbs: ["get", "list"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-default
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-default
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: default
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,21 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-default
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods"]
|
||||||
|
verbs: ["get"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-deployment
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-deployment
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,58 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-deployment
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangodeployments", "arangodeployments/status","arangomembers", "arangomembers/status"]
|
||||||
|
verbs: ["*"]
|
||||||
|
{{- if .Values.rbac.extensions.acs }}
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangoclustersynchronizations", "arangoclustersynchronizations/status"]
|
||||||
|
verbs: ["*"]
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.rbac.extensions.at }}
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangotasks", "arangotasks/status"]
|
||||||
|
verbs: ["*"]
|
||||||
|
{{- end }}
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods", "services", "endpoints", "persistentvolumeclaims", "events", "secrets", "serviceaccounts", "configmaps"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources: ["deployments", "replicasets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["policy"]
|
||||||
|
resources: ["poddisruptionbudgets"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["coordination.k8s.io"]
|
||||||
|
resources: ["leases"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["backup.arangodb.com"]
|
||||||
|
resources: ["arangobackuppolicies", "arangobackups"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
{{- if .Values.rbac.extensions.debug }}
|
||||||
|
- apiGroups: ["events.k8s.io"]
|
||||||
|
resources: ["pods/log"]
|
||||||
|
verbs: ["list"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods/log"]
|
||||||
|
verbs: ["get", "list"]
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.rbac.extensions.monitoring }}
|
||||||
|
- apiGroups: ["monitoring.coreos.com"]
|
||||||
|
resources: ["servicemonitors"]
|
||||||
|
verbs: ["get", "create", "delete", "update", "list", "watch", "patch"]
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.deploymentReplications -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-deployment-replication
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-deployment-replication
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,25 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.deploymentReplications -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-deployment-replication
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["namespaces", "nodes"]
|
||||||
|
verbs: ["get", "list"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.deploymentReplications -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-deployment-replication
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-deployment-replication
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,30 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.deploymentReplications -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-deployment-replication
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["replication.database.arangodb.com"]
|
||||||
|
resources: ["arangodeploymentreplications", "arangodeploymentreplications/status"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangodeployments"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods", "services", "endpoints", "persistentvolumeclaims", "events", "secrets"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources: ["deployments", "replicasets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
193
chart/kube-arangodb-arm64/templates/deployment.yaml
Normal file
193
chart/kube-arangodb-arm64/templates/deployment.yaml
Normal file
|
@ -0,0 +1,193 @@
|
||||||
|
{{ if eq .Values.operator.scope "legacy" -}}
|
||||||
|
# Scope "legacy" selected
|
||||||
|
{{ else if eq .Values.operator.scope "namespaced" -}}
|
||||||
|
# Scope "namespaced" selected
|
||||||
|
{{ if .Values.operator.features.storage -}}
|
||||||
|
{{ fail (printf "Storage Operator not supported in %s scope!" .Values.operator.scope) -}}
|
||||||
|
{{ end -}}
|
||||||
|
{{ else -}}
|
||||||
|
{{ fail (printf "Operator Scope %s is not supported!" .Values.operator.scope) -}}
|
||||||
|
{{ end -}}
|
||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
{{- if .Values.operator.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{ toYaml .Values.operator.annotations | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
{{- if .Values.operator.debug }}
|
||||||
|
replicas: 1
|
||||||
|
{{- else }}
|
||||||
|
replicas: {{ .Values.operator.replicaCount }}
|
||||||
|
{{- end }}
|
||||||
|
strategy:
|
||||||
|
{{ toYaml .Values.operator.updateStrategy | indent 8 }}
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
{{- if .Values.operator.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{ toYaml .Values.operator.annotations | indent 16 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
{{- if .Values.operator.nodeSelector }}
|
||||||
|
nodeSelector:
|
||||||
|
{{ toYaml .Values.operator.nodeSelector | indent 16 }}
|
||||||
|
{{- end }}
|
||||||
|
serviceAccountName: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
affinity:
|
||||||
|
nodeAffinity:
|
||||||
|
requiredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
nodeSelectorTerms:
|
||||||
|
- matchExpressions:
|
||||||
|
- key: kubernetes.io/arch
|
||||||
|
operator: In
|
||||||
|
values:
|
||||||
|
{{- range .Values.operator.architectures }}
|
||||||
|
- {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
|
podAntiAffinity:
|
||||||
|
preferredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
- weight: 100
|
||||||
|
podAffinityTerm:
|
||||||
|
topologyKey: "kubernetes.io/hostname"
|
||||||
|
labelSelector:
|
||||||
|
matchExpressions:
|
||||||
|
- key: app.kubernetes.io/name
|
||||||
|
operator: In
|
||||||
|
values:
|
||||||
|
- {{ template "kube-arangodb.name" . }}
|
||||||
|
- key: app.kubernetes.io/instance
|
||||||
|
operator: In
|
||||||
|
values:
|
||||||
|
- {{ .Release.Name }}
|
||||||
|
hostNetwork: false
|
||||||
|
hostPID: false
|
||||||
|
hostIPC: false
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: {{ .Values.operator.securityContext.runAsUser }}
|
||||||
|
containers:
|
||||||
|
- name: operator
|
||||||
|
imagePullPolicy: {{ .Values.operator.imagePullPolicy }}
|
||||||
|
image: {{ .Values.operator.image }}
|
||||||
|
args:
|
||||||
|
- --scope={{ .Values.operator.scope }}
|
||||||
|
{{- if .Values.operator.features.deployment }}
|
||||||
|
- --operator.deployment
|
||||||
|
{{- end -}}
|
||||||
|
{{ if .Values.operator.features.deploymentReplications }}
|
||||||
|
- --operator.deployment-replication
|
||||||
|
{{- end -}}
|
||||||
|
{{ if .Values.operator.features.storage }}
|
||||||
|
- --operator.storage
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.backup }}
|
||||||
|
- --operator.backup
|
||||||
|
{{- end }}
|
||||||
|
{{- if or .Values.operator.debug (eq ( int .Values.operator.replicaCount) 1) }}
|
||||||
|
- --mode.single
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.apps }}
|
||||||
|
- --operator.apps
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.ml }}
|
||||||
|
- --operator.ml
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.analytics }}
|
||||||
|
- --operator.analytics
|
||||||
|
{{- end }}
|
||||||
|
{{ if .Values.operator.features.k8sToK8sClusterSync }}
|
||||||
|
- --operator.k2k-cluster-sync
|
||||||
|
{{- end }}
|
||||||
|
- --chaos.allowed={{ .Values.operator.allowChaos }}
|
||||||
|
{{- if .Values.operator.args }}
|
||||||
|
{{- range .Values.operator.args }}
|
||||||
|
- {{ . | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
env:
|
||||||
|
- name: MY_POD_NAMESPACE
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
fieldPath: metadata.namespace
|
||||||
|
- name: MY_POD_NAME
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
fieldPath: metadata.name
|
||||||
|
- name: MY_CONTAINER_NAME
|
||||||
|
value: "operator"
|
||||||
|
- name: MY_POD_IP
|
||||||
|
valueFrom:
|
||||||
|
fieldRef:
|
||||||
|
fieldPath: status.podIP
|
||||||
|
{{- if .Values.operator.features.apps }}
|
||||||
|
- name: ARANGOJOB_SA_NAME
|
||||||
|
value: "{{ template "kube-arangodb.operatorName" . }}-job"
|
||||||
|
{{- end }}
|
||||||
|
ports:
|
||||||
|
- name: metrics
|
||||||
|
containerPort: 8528
|
||||||
|
securityContext:
|
||||||
|
privileged: false
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- 'ALL'
|
||||||
|
{{- if .Values.operator.debug }}
|
||||||
|
add:
|
||||||
|
- 'SYS_PTRACE'
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.operator.resources }}
|
||||||
|
resources:
|
||||||
|
{{ toYaml .Values.operator.resources | indent 22 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if not .Values.operator.debug }}
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /health
|
||||||
|
port: 8528
|
||||||
|
scheme: HTTPS
|
||||||
|
initialDelaySeconds: 5
|
||||||
|
periodSeconds: 10
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /ready
|
||||||
|
port: 8528
|
||||||
|
scheme: HTTPS
|
||||||
|
initialDelaySeconds: 5
|
||||||
|
periodSeconds: 10
|
||||||
|
{{- end }}
|
||||||
|
tolerations:
|
||||||
|
- key: "node.kubernetes.io/unreachable"
|
||||||
|
operator: "Exists"
|
||||||
|
effect: "NoExecute"
|
||||||
|
tolerationSeconds: 5
|
||||||
|
- key: "node.kubernetes.io/not-ready"
|
||||||
|
operator: "Exists"
|
||||||
|
effect: "NoExecute"
|
||||||
|
tolerationSeconds: 5
|
||||||
|
{{- if .Values.operator.tolerations }}
|
||||||
|
{{ toYaml .Values.operator.tolerations | indent 16 }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.k8sToK8sClusterSync -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-k2kclustersync
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-k2kclustersync
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,22 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.k8sToK8sClusterSync -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-k2kclustersync
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,25 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.k8sToK8sClusterSync -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-k2kclustersync
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-k2kclustersync
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,33 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.k8sToK8sClusterSync -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-k2kclustersync
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods", "services", "endpoints"]
|
||||||
|
verbs: ["get", "update"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["events"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["secrets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources: ["deployments", "replicasets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangodeployments", "arangoclustersynchronizations"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.ml -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-ml
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-ml
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,22 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.ml -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-ml
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,25 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.ml -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-ml
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-ml
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
68
chart/kube-arangodb-arm64/templates/ml-operator/role.yaml
Normal file
68
chart/kube-arangodb-arm64/templates/ml-operator/role.yaml
Normal file
|
@ -0,0 +1,68 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.ml -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-ml
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- "ml.arangodb.com"
|
||||||
|
resources:
|
||||||
|
- "arangomlextensions"
|
||||||
|
- "arangomlextensions/status"
|
||||||
|
- "arangomlbatchjobs"
|
||||||
|
- "arangomlbatchjobs/status"
|
||||||
|
- "arangomlcronjobs"
|
||||||
|
- "arangomlcronjobs/status"
|
||||||
|
- "arangomlstorages"
|
||||||
|
- "arangomlstorages/status"
|
||||||
|
verbs:
|
||||||
|
- "*"
|
||||||
|
- apiGroups:
|
||||||
|
- "scheduler.arangodb.com"
|
||||||
|
resources:
|
||||||
|
- "arangoprofiles"
|
||||||
|
- "arangoprofiles/status"
|
||||||
|
verbs:
|
||||||
|
- "*"
|
||||||
|
- apiGroups:
|
||||||
|
- "database.arangodb.com"
|
||||||
|
resources:
|
||||||
|
- "arangodeployments"
|
||||||
|
verbs:
|
||||||
|
- "get"
|
||||||
|
- "list"
|
||||||
|
- "watch"
|
||||||
|
- apiGroups:
|
||||||
|
- "rbac.authorization.k8s.io"
|
||||||
|
resources:
|
||||||
|
- "roles"
|
||||||
|
- "rolebindings"
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups:
|
||||||
|
- "batch"
|
||||||
|
resources:
|
||||||
|
- "cronjobs"
|
||||||
|
- "jobs"
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources:
|
||||||
|
- "statefulsets"
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources:
|
||||||
|
- "pods"
|
||||||
|
- "secrets"
|
||||||
|
- "services"
|
||||||
|
- "serviceaccounts"
|
||||||
|
verbs: ["*"]
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
17
chart/kube-arangodb-arm64/templates/service-account.yaml
Normal file
17
chart/kube-arangodb-arm64/templates/service-account.yaml
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
{{- if .Values.operator.imagePullSecrets }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{- range .Values.operator.imagePullSecrets }}
|
||||||
|
- name: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
36
chart/kube-arangodb-arm64/templates/service.yaml
Normal file
36
chart/kube-arangodb-arm64/templates/service.yaml
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
{{- if .Values.operator.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{ toYaml .Values.operator.annotations | indent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- name: server
|
||||||
|
port: 8528
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: 8528
|
||||||
|
- name: http-api
|
||||||
|
port: 8628
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: 8628
|
||||||
|
- name: grpc-api
|
||||||
|
port: 8728
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: 8728
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
role: leader
|
||||||
|
type: {{ .Values.operator.service.type }}
|
|
@ -0,0 +1,24 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.storage -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-storage
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-storage
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,32 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.storage -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-storage
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["persistentvolumes", "persistentvolumeclaims", "endpoints", "events", "services"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["namespaces", "nodes"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
- apiGroups: ["storage.k8s.io"]
|
||||||
|
resources: ["storageclasses"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["storage.arangodb.com"]
|
||||||
|
resources: ["arangolocalstorages"]
|
||||||
|
verbs: ["*"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,32 @@
|
||||||
|
{{ if .Values.operator.features.storage -}}
|
||||||
|
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangolocalstorages.storage.arangodb.com
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
spec:
|
||||||
|
group: storage.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoLocalStorage
|
||||||
|
listKind: ArangoLocalStorageList
|
||||||
|
plural: arangolocalstorages
|
||||||
|
shortNames:
|
||||||
|
- arangostorage
|
||||||
|
singular: arangolocalstorage
|
||||||
|
scope: Cluster
|
||||||
|
versions:
|
||||||
|
- name: v1alpha
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.storage -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-storage
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-storage
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,30 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.storage -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-storage
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods"]
|
||||||
|
verbs: ["get", "update", "watch", "list"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["secrets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources: ["daemonsets"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources: ["deployments", "replicasets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
44
chart/kube-arangodb-arm64/values.yaml
Normal file
44
chart/kube-arangodb-arm64/values.yaml
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
operator:
|
||||||
|
image: arangodb/kube-arangodb:1.2.41
|
||||||
|
imagePullPolicy: IfNotPresent
|
||||||
|
imagePullSecrets: []
|
||||||
|
scope: legacy
|
||||||
|
architectures:
|
||||||
|
- arm64
|
||||||
|
debug: false
|
||||||
|
args: []
|
||||||
|
service:
|
||||||
|
type: ClusterIP
|
||||||
|
annotations: {}
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpu: 1
|
||||||
|
memory: 512Mi
|
||||||
|
requests:
|
||||||
|
cpu: 250m
|
||||||
|
memory: 256Mi
|
||||||
|
securityContext:
|
||||||
|
runAsUser: 1000
|
||||||
|
replicaCount: 1
|
||||||
|
updateStrategy:
|
||||||
|
type: Recreate
|
||||||
|
allowChaos: false
|
||||||
|
nodeSelector: {}
|
||||||
|
enableCRDManagement: true
|
||||||
|
features:
|
||||||
|
deployment: true
|
||||||
|
deploymentReplications: true
|
||||||
|
storage: false
|
||||||
|
backup: false
|
||||||
|
apps: false
|
||||||
|
k8sToK8sClusterSync: false
|
||||||
|
ml: false
|
||||||
|
analytics: false
|
||||||
|
tolerations: []
|
||||||
|
rbac:
|
||||||
|
enabled: true
|
||||||
|
extensions:
|
||||||
|
monitoring: true
|
||||||
|
acs: true
|
||||||
|
at: true
|
||||||
|
debug: false
|
5
chart/kube-arangodb-enterprise-arm64/Chart.yaml
Normal file
5
chart/kube-arangodb-enterprise-arm64/Chart.yaml
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
# do not switch to V2 yet - we still need to support Helm 2
|
||||||
|
apiVersion: v1
|
||||||
|
name: kube-arangodb-enterprise-arm64
|
||||||
|
version: 1.2.41
|
||||||
|
description: "ArangoDB Kubernetes Enterprise Operator with ARM64 defaults"
|
15
chart/kube-arangodb-enterprise-arm64/LICENSE
Normal file
15
chart/kube-arangodb-enterprise-arm64/LICENSE
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
Copyright 2016-2022 ArangoDB GmbH, Cologne, Germany
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
|
||||||
|
Copyright holder is ArangoDB GmbH, Cologne, Germany
|
206
chart/kube-arangodb-enterprise-arm64/README.md
Normal file
206
chart/kube-arangodb-enterprise-arm64/README.md
Normal file
|
@ -0,0 +1,206 @@
|
||||||
|
# Introduction
|
||||||
|
|
||||||
|
Kubernetes ArangoDB Operator.
|
||||||
|
|
||||||
|
# Chart Details
|
||||||
|
|
||||||
|
Chart will install fully operational ArangoDB Kubernetes Operator.
|
||||||
|
|
||||||
|
# Resources Required
|
||||||
|
|
||||||
|
In default installation deployment with 1 pod will be created. The operator pod require 256MB of ram and 250m of CPU.
|
||||||
|
|
||||||
|
# Installing the Chart
|
||||||
|
|
||||||
|
Chart can be installed in two methods:
|
||||||
|
- With all Operators in single Helm Release
|
||||||
|
- One Helm Release per Operator
|
||||||
|
|
||||||
|
Possible Operators:
|
||||||
|
- `ArangoDeployment` - enabled by default
|
||||||
|
- `ArangoDeploymentReplications` - enabled by default
|
||||||
|
- `ArangoLocalStorage` - disabled by default
|
||||||
|
- `ArangoBackup` - disabled by default
|
||||||
|
- `ArangoJob` - disabled by default
|
||||||
|
- `ArangoClusterSynchronization` - disabled by default
|
||||||
|
|
||||||
|
To install Operators in mode "One per Helm Release" we can use:
|
||||||
|
|
||||||
|
```
|
||||||
|
helm install --name arango-deployment kube-arangodb.tar.gz \
|
||||||
|
--set operator.features.deployment=true \
|
||||||
|
--set operator.features.deploymentReplications=false \
|
||||||
|
--set operator.features.storage=false \
|
||||||
|
--set operator.features.backup=false \
|
||||||
|
--set operator.features.apps=false \
|
||||||
|
--set operator.features.k8sToK8sClusterSync=false
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
|
# Configuration
|
||||||
|
|
||||||
|
### `operator.image`
|
||||||
|
|
||||||
|
Image used for the ArangoDB Operator.
|
||||||
|
|
||||||
|
Default: `arangodb/kube-arangodb:latest`
|
||||||
|
|
||||||
|
### `operator.imagePullPolicy`
|
||||||
|
|
||||||
|
Image pull policy for Operator images.
|
||||||
|
|
||||||
|
Default: `IfNotPresent`
|
||||||
|
|
||||||
|
### `operator.imagePullSecrets`
|
||||||
|
|
||||||
|
List of the Image Pull Secrets for Operator images.
|
||||||
|
|
||||||
|
Default: `[]string`
|
||||||
|
|
||||||
|
### `operator.scope`
|
||||||
|
|
||||||
|
Scope on which Operator will be configured.
|
||||||
|
|
||||||
|
Default: `legacy`
|
||||||
|
|
||||||
|
Supported modes:
|
||||||
|
- `legacy` - mode with limited cluster scope access
|
||||||
|
- `namespaced` - mode with namespace access only
|
||||||
|
|
||||||
|
### `operator.service.type`
|
||||||
|
|
||||||
|
Type of the Operator service.
|
||||||
|
|
||||||
|
Default: `ClusterIP`
|
||||||
|
|
||||||
|
### `operator.annotations`
|
||||||
|
|
||||||
|
Annotations passed to the Operator Deployment definition.
|
||||||
|
|
||||||
|
Default: `[]string`
|
||||||
|
|
||||||
|
### `operator.resources.limits.cpu`
|
||||||
|
|
||||||
|
CPU limits for operator pods.
|
||||||
|
|
||||||
|
Default: `1`
|
||||||
|
|
||||||
|
### `operator.resources.limits.memory`
|
||||||
|
|
||||||
|
Memory limits for operator pods.
|
||||||
|
|
||||||
|
Default: `256Mi`
|
||||||
|
|
||||||
|
### `operator.resources.requested.cpu`
|
||||||
|
|
||||||
|
Requested CPI by Operator pods.
|
||||||
|
|
||||||
|
Default: `250m`
|
||||||
|
|
||||||
|
### `operator.resources.requested.memory`
|
||||||
|
|
||||||
|
Requested memory for operator pods.
|
||||||
|
|
||||||
|
Default: `256Mi`
|
||||||
|
|
||||||
|
### `operator.nodeSelector`
|
||||||
|
|
||||||
|
NodeSelector for Deployment pods.
|
||||||
|
|
||||||
|
Default: `{}`
|
||||||
|
|
||||||
|
### `operator.tolerations`
|
||||||
|
|
||||||
|
Tolerations for Deployment pods.
|
||||||
|
|
||||||
|
There is built in configuration (can not be changed):
|
||||||
|
```yaml
|
||||||
|
tolerations:
|
||||||
|
- key: "node.kubernetes.io/unreachable"
|
||||||
|
operator: "Exists"
|
||||||
|
effect: "NoExecute"
|
||||||
|
tolerationSeconds: 5
|
||||||
|
- key: "node.kubernetes.io/not-ready"
|
||||||
|
operator: "Exists"
|
||||||
|
effect: "NoExecute"
|
||||||
|
tolerationSeconds: 5
|
||||||
|
```
|
||||||
|
|
||||||
|
which can be extended by additional entries e.g.:
|
||||||
|
```yaml
|
||||||
|
tolerations:
|
||||||
|
- key: devops
|
||||||
|
operator: Exists
|
||||||
|
effect: NoSchedule
|
||||||
|
```
|
||||||
|
Default (empty): `[]`
|
||||||
|
|
||||||
|
### `operator.securityContext.runAsUser`
|
||||||
|
|
||||||
|
Controls which user ID the containers are run with.
|
||||||
|
|
||||||
|
Default: `1000`
|
||||||
|
|
||||||
|
### `operator.replicaCount`
|
||||||
|
|
||||||
|
Replication count for Operator deployment.
|
||||||
|
|
||||||
|
Default: `1`
|
||||||
|
|
||||||
|
### `operator.updateStrategy`
|
||||||
|
|
||||||
|
Update strategy for operator pod.
|
||||||
|
|
||||||
|
Default: `Recreate`
|
||||||
|
|
||||||
|
### `operator.features.deployment`
|
||||||
|
|
||||||
|
Define if ArangoDeployment Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `true`
|
||||||
|
|
||||||
|
### `operator.features.deploymentReplications`
|
||||||
|
|
||||||
|
Define if ArangoDeploymentReplications Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `true`
|
||||||
|
|
||||||
|
### `operator.features.storage`
|
||||||
|
|
||||||
|
Define if ArangoLocalStorage Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `false`
|
||||||
|
|
||||||
|
### `operator.features.backup`
|
||||||
|
|
||||||
|
Define if ArangoBackup Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `false`
|
||||||
|
|
||||||
|
### `operator.features.apps`
|
||||||
|
|
||||||
|
Define if ArangoJob Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `false`
|
||||||
|
|
||||||
|
### `operator.features.k8sToK8sClusterSync`
|
||||||
|
|
||||||
|
Define if ArangoClusterSynchronization Operator should be enabled.
|
||||||
|
|
||||||
|
Default: `false`
|
||||||
|
|
||||||
|
### `rbac.enabled`
|
||||||
|
|
||||||
|
Define if RBAC should be enabled.
|
||||||
|
|
||||||
|
Default: `true`
|
||||||
|
|
||||||
|
### `operator.architectures`
|
||||||
|
|
||||||
|
List of supported architectures.
|
||||||
|
|
||||||
|
Default: `[]string{"amd64"}`
|
||||||
|
|
||||||
|
# Limitations
|
||||||
|
|
||||||
|
N/A
|
|
@ -0,0 +1,22 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: graphanalyticsengines.analytics.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: analytics.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: GraphAnalyticsEngine
|
||||||
|
listKind: GraphAnalyticsEngineList
|
||||||
|
plural: graphanalyticsengines
|
||||||
|
singular: graphanalyticsengine
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
29
chart/kube-arangodb-enterprise-arm64/crds/apps-job.yaml
Normal file
29
chart/kube-arangodb-enterprise-arm64/crds/apps-job.yaml
Normal file
|
@ -0,0 +1,29 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangojobs.apps.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: apps.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoJob
|
||||||
|
listKind: ArangoJobList
|
||||||
|
plural: arangojobs
|
||||||
|
singular: arangojob
|
||||||
|
shortNames:
|
||||||
|
- arangojob
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.arangoDeploymentName
|
||||||
|
description: Deployment name
|
||||||
|
name: ArangoDeploymentName
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
103
chart/kube-arangodb-enterprise-arm64/crds/backups-backup.yaml
Normal file
103
chart/kube-arangodb-enterprise-arm64/crds/backups-backup.yaml
Normal file
|
@ -0,0 +1,103 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangobackups.backup.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: backup.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoBackup
|
||||||
|
listKind: ArangoBackupList
|
||||||
|
plural: arangobackups
|
||||||
|
shortNames:
|
||||||
|
- arangobackup
|
||||||
|
singular: arangobackup
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.policyName
|
||||||
|
description: Policy name
|
||||||
|
name: Policy
|
||||||
|
type: string
|
||||||
|
- jsonPath: .spec.deployment.name
|
||||||
|
description: Deployment name
|
||||||
|
name: Deployment
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.version
|
||||||
|
description: Backup Version
|
||||||
|
name: Version
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.createdAt
|
||||||
|
description: Backup Creation Timestamp
|
||||||
|
name: Created
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.sizeInBytes
|
||||||
|
description: Backup Size in Bytes
|
||||||
|
name: Size
|
||||||
|
type: integer
|
||||||
|
format: byte
|
||||||
|
- jsonPath: .status.backup.numberOfDBServers
|
||||||
|
description: Backup Number of the DB Servers
|
||||||
|
name: DBServers
|
||||||
|
type: integer
|
||||||
|
- jsonPath: .status.state
|
||||||
|
description: The actual state of the ArangoBackup
|
||||||
|
name: State
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.message
|
||||||
|
priority: 1
|
||||||
|
description: Message of the ArangoBackup object
|
||||||
|
name: Message
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.policyName
|
||||||
|
description: Policy name
|
||||||
|
name: Policy
|
||||||
|
type: string
|
||||||
|
- jsonPath: .spec.deployment.name
|
||||||
|
description: Deployment name
|
||||||
|
name: Deployment
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.version
|
||||||
|
description: Backup Version
|
||||||
|
name: Version
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.createdAt
|
||||||
|
description: Backup Creation Timestamp
|
||||||
|
name: Created
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.backup.sizeInBytes
|
||||||
|
description: Backup Size in Bytes
|
||||||
|
name: Size
|
||||||
|
type: integer
|
||||||
|
format: byte
|
||||||
|
- jsonPath: .status.backup.numberOfDBServers
|
||||||
|
description: Backup Number of the DB Servers
|
||||||
|
name: DBServers
|
||||||
|
type: integer
|
||||||
|
- jsonPath: .status.state
|
||||||
|
description: The actual state of the ArangoBackup
|
||||||
|
name: State
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.message
|
||||||
|
priority: 1
|
||||||
|
description: Message of the ArangoBackup object
|
||||||
|
name: Message
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
|
@ -0,0 +1,62 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangobackuppolicies.backup.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: backup.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoBackupPolicy
|
||||||
|
listKind: ArangoBackupPolicyList
|
||||||
|
plural: arangobackuppolicies
|
||||||
|
shortNames:
|
||||||
|
- arangobackuppolicy
|
||||||
|
- arangobp
|
||||||
|
singular: arangobackuppolicy
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.schedule
|
||||||
|
description: Schedule
|
||||||
|
name: Schedule
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.scheduled
|
||||||
|
description: Scheduled
|
||||||
|
name: Scheduled
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.message
|
||||||
|
priority: 1
|
||||||
|
description: Message of the ArangoBackupPolicy object
|
||||||
|
name: Message
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
additionalPrinterColumns:
|
||||||
|
- jsonPath: .spec.schedule
|
||||||
|
description: Schedule
|
||||||
|
name: Schedule
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.scheduled
|
||||||
|
description: Scheduled
|
||||||
|
name: Scheduled
|
||||||
|
type: string
|
||||||
|
- jsonPath: .status.message
|
||||||
|
priority: 1
|
||||||
|
description: Message of the ArangoBackupPolicy object
|
||||||
|
name: Message
|
||||||
|
type: string
|
||||||
|
subresources:
|
||||||
|
status: {}
|
|
@ -0,0 +1,33 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangoclustersynchronizations.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoClusterSynchronization
|
||||||
|
listKind: ArangoClusterSynchronizationList
|
||||||
|
plural: arangoclustersynchronizations
|
||||||
|
singular: arangoclustersynchronization
|
||||||
|
shortNames:
|
||||||
|
- arangoclustersync
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
|
@ -0,0 +1,39 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangodeployments.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoDeployment
|
||||||
|
listKind: ArangoDeploymentList
|
||||||
|
plural: arangodeployments
|
||||||
|
shortNames:
|
||||||
|
- arangodb
|
||||||
|
- arango
|
||||||
|
singular: arangodeployment
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
|
@ -0,0 +1,33 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomembers.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMember
|
||||||
|
listKind: ArangoMemberList
|
||||||
|
plural: arangomembers
|
||||||
|
shortNames:
|
||||||
|
- arangomembers
|
||||||
|
singular: arangomember
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
36
chart/kube-arangodb-enterprise-arm64/crds/database-task.yaml
Normal file
36
chart/kube-arangodb-enterprise-arm64/crds/database-task.yaml
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangotasks.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoTask
|
||||||
|
listKind: ArangoTaskList
|
||||||
|
plural: arangotasks
|
||||||
|
singular: arangotask
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
31
chart/kube-arangodb-enterprise-arm64/crds/ml-extension.yaml
Normal file
31
chart/kube-arangodb-enterprise-arm64/crds/ml-extension.yaml
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomlextensions.ml.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: ml.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMLExtension
|
||||||
|
listKind: ArangoMLExtensionList
|
||||||
|
plural: arangomlextensions
|
||||||
|
singular: arangomlextension
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1beta1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
22
chart/kube-arangodb-enterprise-arm64/crds/ml-job-batch.yaml
Normal file
22
chart/kube-arangodb-enterprise-arm64/crds/ml-job-batch.yaml
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomlbatchjobs.ml.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: ml.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMLBatchJob
|
||||||
|
listKind: ArangoMLBatchJobList
|
||||||
|
plural: arangomlbatchjobs
|
||||||
|
singular: arangomlbatchjob
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
22
chart/kube-arangodb-enterprise-arm64/crds/ml-job-cron.yaml
Normal file
22
chart/kube-arangodb-enterprise-arm64/crds/ml-job-cron.yaml
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomlcronjobs.ml.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: ml.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMLCronJob
|
||||||
|
listKind: ArangoMLCronJobList
|
||||||
|
plural: arangomlcronjobs
|
||||||
|
singular: arangomlcronjob
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
31
chart/kube-arangodb-enterprise-arm64/crds/ml-storage.yaml
Normal file
31
chart/kube-arangodb-enterprise-arm64/crds/ml-storage.yaml
Normal file
|
@ -0,0 +1,31 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangomlstorages.ml.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: ml.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoMLStorage
|
||||||
|
listKind: ArangoMLStorageList
|
||||||
|
plural: arangomlstorages
|
||||||
|
singular: arangomlstorage
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1beta1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
|
@ -0,0 +1,38 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangodeploymentreplications.replication.database.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: replication.database.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoDeploymentReplication
|
||||||
|
listKind: ArangoDeploymentReplicationList
|
||||||
|
plural: arangodeploymentreplications
|
||||||
|
shortNames:
|
||||||
|
- arangorepl
|
||||||
|
singular: arangodeploymentreplication
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
- name: v1alpha
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
- name: v2alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
|
@ -0,0 +1,31 @@
|
||||||
|
apiVersion: apiextensions.k8s.io/v1
|
||||||
|
kind: CustomResourceDefinition
|
||||||
|
metadata:
|
||||||
|
name: arangoprofiles.scheduler.arangodb.com
|
||||||
|
spec:
|
||||||
|
group: scheduler.arangodb.com
|
||||||
|
names:
|
||||||
|
kind: ArangoProfile
|
||||||
|
listKind: ArangoProfileList
|
||||||
|
plural: arangoprofiles
|
||||||
|
singular: arangoprofile
|
||||||
|
scope: Namespaced
|
||||||
|
versions:
|
||||||
|
- name: v1alpha1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: false
|
||||||
|
subresources:
|
||||||
|
status: {}
|
||||||
|
- name: v1beta1
|
||||||
|
schema:
|
||||||
|
openAPIV3Schema:
|
||||||
|
type: object
|
||||||
|
x-kubernetes-preserve-unknown-fields: true
|
||||||
|
served: true
|
||||||
|
storage: true
|
||||||
|
subresources:
|
||||||
|
status: {}
|
7
chart/kube-arangodb-enterprise-arm64/templates/NOTES.txt
Normal file
7
chart/kube-arangodb-enterprise-arm64/templates/NOTES.txt
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
You have installed Kubernetes ArangoDB Operator in version {{ .Chart.Version }}
|
||||||
|
|
||||||
|
To access ArangoDeployments you can use:
|
||||||
|
|
||||||
|
kubectl --namespace "{{ .Release.Namespace }}" get arangodeployments
|
||||||
|
|
||||||
|
More details can be found on https://github.com/arangodb/kube-arangodb/tree/{{ .Chart.Version }}/docs
|
47
chart/kube-arangodb-enterprise-arm64/templates/_helpers.tpl
Normal file
47
chart/kube-arangodb-enterprise-arm64/templates/_helpers.tpl
Normal file
|
@ -0,0 +1,47 @@
|
||||||
|
{{/* vim: set filetype=mustache: */}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.name" -}}
|
||||||
|
{{- printf "%s" .Chart.Name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Expand the name of the release.
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.releaseName" -}}
|
||||||
|
{{- printf "%s" .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Expand the name of the operator.
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.operatorName" -}}
|
||||||
|
{{- printf "arango-%s-operator" .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Combine name of the deployment.
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.fullName" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Release.Name | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create the name of the Operator RBAC role
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.rbac" -}}
|
||||||
|
{{- printf "%s-%s" (include "kube-arangodb.operatorName" .) "rbac" | trunc 95 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create the name of the Operator Cluster resources
|
||||||
|
*/}}
|
||||||
|
{{- define "kube-arangodb.rbac-cluster" -}}
|
||||||
|
{{- if eq .Release.Namespace "default" -}}
|
||||||
|
{{- printf "%s-rbac" (include "kube-arangodb.operatorName" .) | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- else -}}
|
||||||
|
{{- printf "%s-%s-rbac" (include "kube-arangodb.operatorName" .) .Release.Namespace | trunc 63 | trimSuffix "-" -}}
|
||||||
|
{{- end -}}
|
||||||
|
{{- end -}}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-analytics
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-analytics
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,22 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-analytics
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,25 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-analytics
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-analytics
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,41 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.analytics -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-analytics
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- "analytics.arangodb.com"
|
||||||
|
resources:
|
||||||
|
- "graphanalyticsengines"
|
||||||
|
- "graphanalyticsengines/status"
|
||||||
|
verbs:
|
||||||
|
- "*"
|
||||||
|
- apiGroups:
|
||||||
|
- "database.arangodb.com"
|
||||||
|
resources:
|
||||||
|
- "arangodeployments"
|
||||||
|
verbs:
|
||||||
|
- "get"
|
||||||
|
- "list"
|
||||||
|
- "watch"
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources:
|
||||||
|
- "statefulsets"
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: [ "" ]
|
||||||
|
resources:
|
||||||
|
- "secrets"
|
||||||
|
- "services"
|
||||||
|
verbs: [ "*" ]
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-apps
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-apps
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,22 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-apps
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,47 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-apps
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-apps
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-job
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-job
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}-job
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,54 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-apps
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods", "services", "endpoints"]
|
||||||
|
verbs: ["get", "update"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["events"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["secrets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources: ["deployments", "replicasets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["batch"]
|
||||||
|
resources: ["jobs"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangodeployments"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
- apiGroups: ["apps.arangodb.com"]
|
||||||
|
resources: ["arangojobs","arangojobs/status"]
|
||||||
|
verbs: ["*"]
|
||||||
|
---
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-job
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangodeployments"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,19 @@
|
||||||
|
{{ if .Values.operator.features.apps -}}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}-job
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
{{- if .Values.operator.imagePullSecrets }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{- range .Values.operator.imagePullSecrets }}
|
||||||
|
- name: {{ . }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-backup
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-backup
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,22 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-backup
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,25 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-backup
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-backup
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,35 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if .Values.operator.features.backup -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac" . }}-backup
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["pods", "services", "endpoints"]
|
||||||
|
verbs: ["get", "update"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["events"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: [""]
|
||||||
|
resources: ["secrets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["apps"]
|
||||||
|
resources: ["deployments", "replicasets"]
|
||||||
|
verbs: ["get"]
|
||||||
|
- apiGroups: ["backup.arangodb.com"]
|
||||||
|
resources: ["arangobackuppolicies", "arangobackuppolicies/status", "arangobackups", "arangobackups/status"]
|
||||||
|
verbs: ["*"]
|
||||||
|
- apiGroups: ["database.arangodb.com"]
|
||||||
|
resources: ["arangodeployments"]
|
||||||
|
verbs: ["get", "list", "watch"]
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.enableCRDManagement -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-crd
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-crd
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,32 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.enableCRDManagement -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-crd
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
rules:
|
||||||
|
- apiGroups: ["apiextensions.k8s.io"]
|
||||||
|
resources: ["customresourcedefinitions"]
|
||||||
|
verbs: ["get", "list", "watch", "update", "delete"]
|
||||||
|
resourceNames:
|
||||||
|
- "arangodeployments.database.arangodb.com"
|
||||||
|
- "arangoclustersynchronizations.database.arangodb.com"
|
||||||
|
- "arangomembers.database.arangodb.com"
|
||||||
|
- "arangotasks.database.arangodb.com"
|
||||||
|
- "arangodeploymentreplications.replication.database.arangodb.com"
|
||||||
|
- "arangobackups.backup.arangodb.com"
|
||||||
|
- "arangobackuppolicies.backup.arangodb.com"
|
||||||
|
- "arangojobs.apps.arangodb.com"
|
||||||
|
- "arangolocalstorages.storage.arangodb.com"
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
|
@ -0,0 +1,26 @@
|
||||||
|
{{ if .Values.rbac.enabled -}}
|
||||||
|
{{ if not (eq .Values.operator.scope "namespaced") -}}
|
||||||
|
{{ if .Values.operator.features.deployment -}}
|
||||||
|
|
||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-deployment
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: {{ template "kube-arangodb.name" . }}
|
||||||
|
helm.sh/chart: {{ .Chart.Name }}-{{ .Chart.Version }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
release: {{ .Release.Name }}
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ template "kube-arangodb.rbac-cluster" . }}-deployment
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ template "kube-arangodb.operatorName" . }}
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue