mirror of
https://github.com/outbackdingo/cozystack.git
synced 2026-02-05 08:17:59 +00:00
Compare commits
19 Commits
replicas
...
etcd-opera
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9efbf5d22e | ||
|
|
662f12e0ce | ||
|
|
3439cf39dd | ||
|
|
965e1be283 | ||
|
|
9145be14c1 | ||
|
|
fca349c641 | ||
|
|
0b38599394 | ||
|
|
0a33950a40 | ||
|
|
e3376a223e | ||
|
|
dee190ad4f | ||
|
|
66f963bfd0 | ||
|
|
4f2757731a | ||
|
|
372c3cbd17 | ||
|
|
ff9ab5ba85 | ||
|
|
c7568d2312 | ||
|
|
f4778abb3f | ||
|
|
68a7cc52c3 | ||
|
|
be508fd107 | ||
|
|
a6d0f7cfd4 |
@@ -63,7 +63,7 @@ spec:
|
|||||||
serviceAccountName: cozystack
|
serviceAccountName: cozystack
|
||||||
containers:
|
containers:
|
||||||
- name: cozystack
|
- name: cozystack
|
||||||
image: "ghcr.io/aenix-io/cozystack/cozystack:v0.3.1"
|
image: "ghcr.io/aenix-io/cozystack/cozystack:v0.4.0"
|
||||||
env:
|
env:
|
||||||
- name: KUBERNETES_SERVICE_HOST
|
- name: KUBERNETES_SERVICE_HOST
|
||||||
value: localhost
|
value: localhost
|
||||||
@@ -82,7 +82,7 @@ spec:
|
|||||||
fieldRef:
|
fieldRef:
|
||||||
fieldPath: metadata.name
|
fieldPath: metadata.name
|
||||||
- name: darkhttpd
|
- name: darkhttpd
|
||||||
image: "ghcr.io/aenix-io/cozystack/cozystack:v0.3.1"
|
image: "ghcr.io/aenix-io/cozystack/cozystack:v0.4.0"
|
||||||
command:
|
command:
|
||||||
- /usr/bin/darkhttpd
|
- /usr/bin/darkhttpd
|
||||||
- /cozystack/assets
|
- /cozystack/assets
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ repo:
|
|||||||
awk '$$3 != "HEAD" {print "mkdir -p $(TMP)/" $$1 "-" $$2}' versions_map | sh -ex
|
awk '$$3 != "HEAD" {print "mkdir -p $(TMP)/" $$1 "-" $$2}' versions_map | sh -ex
|
||||||
awk '$$3 != "HEAD" {print "git archive " $$3 " " $$1 " | tar -xf- --strip-components=1 -C $(TMP)/" $$1 "-" $$2 }' versions_map | sh -ex
|
awk '$$3 != "HEAD" {print "git archive " $$3 " " $$1 " | tar -xf- --strip-components=1 -C $(TMP)/" $$1 "-" $$2 }' versions_map | sh -ex
|
||||||
helm package -d "$(OUT)" $$(find . $(TMP) -mindepth 2 -maxdepth 2 -name Chart.yaml | awk 'sub("/Chart.yaml", "")' | sort -V)
|
helm package -d "$(OUT)" $$(find . $(TMP) -mindepth 2 -maxdepth 2 -name Chart.yaml | awk 'sub("/Chart.yaml", "")' | sort -V)
|
||||||
cd "$(OUT)" && helm repo index .
|
cd "$(OUT)" && helm repo index . --url http://cozystack.cozy-system.svc/repos/apps
|
||||||
rm -rf "$(TMP)"
|
rm -rf "$(TMP)"
|
||||||
|
|
||||||
fix-chartnames:
|
fix-chartnames:
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"containerimage.config.digest": "sha256:e406d5ac59cc06bbab51e16ae9a520143ad4f54952ef8f8cca982dc89454d616",
|
"containerimage.config.digest": "sha256:9eb68d2d503d7e22afc6fde2635f566fd3456bbdb3caad5dc9f887be1dc2b8ab",
|
||||||
"containerimage.digest": "sha256:08e5063e65d2adc17278abee0ab43ce31cf37bc9bc7eb7988ef16f1f1c459862"
|
"containerimage.digest": "sha256:1f44274dbc2c3be2a98e6cef83d68a041ae9ef31abb8ab069a525a2a92702bdd"
|
||||||
}
|
}
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"containerimage.config.digest": "sha256:62baab666445d76498fb14cc1d0865fc82e4bdd5cb1d7ba80475dc5024184622",
|
"containerimage.config.digest": "sha256:a7e8e6e35ac07bcf6253c9cfcf21fd3c315bd0653ad0427dd5f0cae95ffd3722",
|
||||||
"containerimage.digest": "sha256:9363d717f966f4e7927da332eaaf17401b42203a2fcb493b428f94d096dae3a5"
|
"containerimage.digest": "sha256:c03bffeeb70fe7dd680d2eca3021d2405fbcd9961dd38437f5673560c31c72cc"
|
||||||
}
|
}
|
||||||
@@ -15,6 +15,12 @@ spec:
|
|||||||
labels:
|
labels:
|
||||||
app: {{ .Release.Name }}-cluster-autoscaler
|
app: {{ .Release.Name }}-cluster-autoscaler
|
||||||
spec:
|
spec:
|
||||||
|
tolerations:
|
||||||
|
- key: CriticalAddonsOnly
|
||||||
|
operator: Exists
|
||||||
|
- key: node-role.kubernetes.io/control-plane
|
||||||
|
operator: Exists
|
||||||
|
effect: "NoSchedule"
|
||||||
containers:
|
containers:
|
||||||
- image: ghcr.io/kvaps/test:cluster-autoscaller
|
- image: ghcr.io/kvaps/test:cluster-autoscaller
|
||||||
name: cluster-autoscaler
|
name: cluster-autoscaler
|
||||||
|
|||||||
@@ -16,12 +16,10 @@ spec:
|
|||||||
spec:
|
spec:
|
||||||
serviceAccountName: {{ .Release.Name }}-kcsi
|
serviceAccountName: {{ .Release.Name }}-kcsi
|
||||||
priorityClassName: system-cluster-critical
|
priorityClassName: system-cluster-critical
|
||||||
nodeSelector:
|
|
||||||
node-role.kubernetes.io/control-plane: ""
|
|
||||||
tolerations:
|
tolerations:
|
||||||
- key: CriticalAddonsOnly
|
- key: CriticalAddonsOnly
|
||||||
operator: Exists
|
operator: Exists
|
||||||
- key: node-role.kubernetes.io/master
|
- key: node-role.kubernetes.io/control-plane
|
||||||
operator: Exists
|
operator: Exists
|
||||||
effect: "NoSchedule"
|
effect: "NoSchedule"
|
||||||
containers:
|
containers:
|
||||||
|
|||||||
@@ -12,6 +12,12 @@ spec:
|
|||||||
spec:
|
spec:
|
||||||
serviceAccountName: {{ .Release.Name }}-flux-teardown
|
serviceAccountName: {{ .Release.Name }}-flux-teardown
|
||||||
restartPolicy: Never
|
restartPolicy: Never
|
||||||
|
tolerations:
|
||||||
|
- key: CriticalAddonsOnly
|
||||||
|
operator: Exists
|
||||||
|
- key: node-role.kubernetes.io/control-plane
|
||||||
|
operator: Exists
|
||||||
|
effect: "NoSchedule"
|
||||||
containers:
|
containers:
|
||||||
- name: kubectl
|
- name: kubectl
|
||||||
image: docker.io/clastix/kubectl:v1.29.1
|
image: docker.io/clastix/kubectl:v1.29.1
|
||||||
|
|||||||
@@ -14,6 +14,12 @@ spec:
|
|||||||
labels:
|
labels:
|
||||||
k8s-app: {{ .Release.Name }}-kccm
|
k8s-app: {{ .Release.Name }}-kccm
|
||||||
spec:
|
spec:
|
||||||
|
tolerations:
|
||||||
|
- key: CriticalAddonsOnly
|
||||||
|
operator: Exists
|
||||||
|
- key: node-role.kubernetes.io/control-plane
|
||||||
|
operator: Exists
|
||||||
|
effect: "NoSchedule"
|
||||||
containers:
|
containers:
|
||||||
- name: kubevirt-cloud-controller-manager
|
- name: kubevirt-cloud-controller-manager
|
||||||
args:
|
args:
|
||||||
@@ -44,6 +50,4 @@ spec:
|
|||||||
- secret:
|
- secret:
|
||||||
secretName: {{ .Release.Name }}-admin-kubeconfig
|
secretName: {{ .Release.Name }}-admin-kubeconfig
|
||||||
name: kubeconfig
|
name: kubeconfig
|
||||||
tolerations:
|
|
||||||
- operator: Exists
|
|
||||||
serviceAccountName: {{ .Release.Name }}-kccm
|
serviceAccountName: {{ .Release.Name }}-kccm
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"containerimage.config.digest": "sha256:29b11ecbb92bae830f2e55cd4b6f7f3ada09b2f5514c0eeee395bd2dbd12fb81",
|
"containerimage.config.digest": "sha256:aefc3ca9f56f69270d7ce6f56a1ce5b531332d5641481eb54c8e74b66b0f3341",
|
||||||
"containerimage.digest": "sha256:791df989ff37a76062c7c638dbfc93435df9ee0db48797f2045c80b6d6b937c0"
|
"containerimage.digest": "sha256:a2bf43cb7eb812166edfeb1a4fae6a76a4ddba93be2c0ba9040a804ccb53c261"
|
||||||
}
|
}
|
||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/aenix-io/cozystack/cozystack:v0.3.1
|
ghcr.io/aenix-io/cozystack/cozystack:v0.4.0
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"containerimage.config.digest": "sha256:d63ac434876b4e47c130e6b99f0c9657e718f9d97f522f5ccd878eab75844122",
|
"containerimage.config.digest": "sha256:68ea72fcc581352fabfd87fa6fd482968cc85ee520cab7a614f1244d7ae36eb0",
|
||||||
"containerimage.digest": "sha256:9963580a02ac4ddccafb60f2411365910bcadd73f92d1c9187a278221306a4ed"
|
"containerimage.digest": "sha256:cea915e08a19eb6892f3facf3b3648368cd4a05abefc49bc2616ba3340c27e82"
|
||||||
}
|
}
|
||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/aenix-io/cozystack/matchbox:v1.6.4
|
ghcr.io/aenix-io/cozystack/matchbox:v1.7.1
|
||||||
|
|||||||
@@ -3,24 +3,25 @@
|
|||||||
arch: amd64
|
arch: amd64
|
||||||
platform: metal
|
platform: metal
|
||||||
secureboot: false
|
secureboot: false
|
||||||
version: v1.6.4
|
version: v1.7.1
|
||||||
input:
|
input:
|
||||||
kernel:
|
kernel:
|
||||||
path: /usr/install/amd64/vmlinuz
|
path: /usr/install/amd64/vmlinuz
|
||||||
initramfs:
|
initramfs:
|
||||||
path: /usr/install/amd64/initramfs.xz
|
path: /usr/install/amd64/initramfs.xz
|
||||||
baseInstaller:
|
baseInstaller:
|
||||||
imageRef: ghcr.io/siderolabs/installer:v1.6.4
|
imageRef: ghcr.io/siderolabs/installer:v1.7.1
|
||||||
systemExtensions:
|
systemExtensions:
|
||||||
- imageRef: ghcr.io/siderolabs/amd-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/amd-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240115
|
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/i915-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/i915-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ucode:20231114
|
- imageRef: ghcr.io/siderolabs/intel-ucode:20240312
|
||||||
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/drbd:9.2.6-v1.6.4
|
- imageRef: ghcr.io/siderolabs/drbd:9.2.8-v1.7.1
|
||||||
- imageRef: ghcr.io/siderolabs/zfs:2.1.14-v1.6.4
|
- imageRef: ghcr.io/siderolabs/zfs:2.2.3-v1.7.1
|
||||||
output:
|
output:
|
||||||
kind: initramfs
|
kind: initramfs
|
||||||
|
imageOptions: {}
|
||||||
outFormat: raw
|
outFormat: raw
|
||||||
|
|||||||
@@ -3,24 +3,25 @@
|
|||||||
arch: amd64
|
arch: amd64
|
||||||
platform: metal
|
platform: metal
|
||||||
secureboot: false
|
secureboot: false
|
||||||
version: v1.6.4
|
version: v1.7.1
|
||||||
input:
|
input:
|
||||||
kernel:
|
kernel:
|
||||||
path: /usr/install/amd64/vmlinuz
|
path: /usr/install/amd64/vmlinuz
|
||||||
initramfs:
|
initramfs:
|
||||||
path: /usr/install/amd64/initramfs.xz
|
path: /usr/install/amd64/initramfs.xz
|
||||||
baseInstaller:
|
baseInstaller:
|
||||||
imageRef: ghcr.io/siderolabs/installer:v1.6.4
|
imageRef: ghcr.io/siderolabs/installer:v1.7.1
|
||||||
systemExtensions:
|
systemExtensions:
|
||||||
- imageRef: ghcr.io/siderolabs/amd-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/amd-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240115
|
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/i915-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/i915-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ucode:20231114
|
- imageRef: ghcr.io/siderolabs/intel-ucode:20240312
|
||||||
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/drbd:9.2.6-v1.6.4
|
- imageRef: ghcr.io/siderolabs/drbd:9.2.8-v1.7.1
|
||||||
- imageRef: ghcr.io/siderolabs/zfs:2.1.14-v1.6.4
|
- imageRef: ghcr.io/siderolabs/zfs:2.2.3-v1.7.1
|
||||||
output:
|
output:
|
||||||
kind: installer
|
kind: installer
|
||||||
|
imageOptions: {}
|
||||||
outFormat: raw
|
outFormat: raw
|
||||||
|
|||||||
@@ -3,24 +3,25 @@
|
|||||||
arch: amd64
|
arch: amd64
|
||||||
platform: metal
|
platform: metal
|
||||||
secureboot: false
|
secureboot: false
|
||||||
version: v1.6.4
|
version: v1.7.1
|
||||||
input:
|
input:
|
||||||
kernel:
|
kernel:
|
||||||
path: /usr/install/amd64/vmlinuz
|
path: /usr/install/amd64/vmlinuz
|
||||||
initramfs:
|
initramfs:
|
||||||
path: /usr/install/amd64/initramfs.xz
|
path: /usr/install/amd64/initramfs.xz
|
||||||
baseInstaller:
|
baseInstaller:
|
||||||
imageRef: ghcr.io/siderolabs/installer:v1.6.4
|
imageRef: ghcr.io/siderolabs/installer:v1.7.1
|
||||||
systemExtensions:
|
systemExtensions:
|
||||||
- imageRef: ghcr.io/siderolabs/amd-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/amd-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240115
|
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/i915-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/i915-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ucode:20231114
|
- imageRef: ghcr.io/siderolabs/intel-ucode:20240312
|
||||||
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/drbd:9.2.6-v1.6.4
|
- imageRef: ghcr.io/siderolabs/drbd:9.2.8-v1.7.1
|
||||||
- imageRef: ghcr.io/siderolabs/zfs:2.1.14-v1.6.4
|
- imageRef: ghcr.io/siderolabs/zfs:2.2.3-v1.7.1
|
||||||
output:
|
output:
|
||||||
kind: iso
|
kind: iso
|
||||||
|
imageOptions: {}
|
||||||
outFormat: raw
|
outFormat: raw
|
||||||
|
|||||||
@@ -3,24 +3,25 @@
|
|||||||
arch: amd64
|
arch: amd64
|
||||||
platform: metal
|
platform: metal
|
||||||
secureboot: false
|
secureboot: false
|
||||||
version: v1.6.4
|
version: v1.7.1
|
||||||
input:
|
input:
|
||||||
kernel:
|
kernel:
|
||||||
path: /usr/install/amd64/vmlinuz
|
path: /usr/install/amd64/vmlinuz
|
||||||
initramfs:
|
initramfs:
|
||||||
path: /usr/install/amd64/initramfs.xz
|
path: /usr/install/amd64/initramfs.xz
|
||||||
baseInstaller:
|
baseInstaller:
|
||||||
imageRef: ghcr.io/siderolabs/installer:v1.6.4
|
imageRef: ghcr.io/siderolabs/installer:v1.7.1
|
||||||
systemExtensions:
|
systemExtensions:
|
||||||
- imageRef: ghcr.io/siderolabs/amd-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/amd-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240115
|
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/i915-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/i915-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ucode:20231114
|
- imageRef: ghcr.io/siderolabs/intel-ucode:20240312
|
||||||
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/drbd:9.2.6-v1.6.4
|
- imageRef: ghcr.io/siderolabs/drbd:9.2.8-v1.7.1
|
||||||
- imageRef: ghcr.io/siderolabs/zfs:2.1.14-v1.6.4
|
- imageRef: ghcr.io/siderolabs/zfs:2.2.3-v1.7.1
|
||||||
output:
|
output:
|
||||||
kind: kernel
|
kind: kernel
|
||||||
|
imageOptions: {}
|
||||||
outFormat: raw
|
outFormat: raw
|
||||||
|
|||||||
@@ -3,25 +3,25 @@
|
|||||||
arch: amd64
|
arch: amd64
|
||||||
platform: metal
|
platform: metal
|
||||||
secureboot: false
|
secureboot: false
|
||||||
version: v1.6.4
|
version: v1.7.1
|
||||||
input:
|
input:
|
||||||
kernel:
|
kernel:
|
||||||
path: /usr/install/amd64/vmlinuz
|
path: /usr/install/amd64/vmlinuz
|
||||||
initramfs:
|
initramfs:
|
||||||
path: /usr/install/amd64/initramfs.xz
|
path: /usr/install/amd64/initramfs.xz
|
||||||
baseInstaller:
|
baseInstaller:
|
||||||
imageRef: ghcr.io/siderolabs/installer:v1.6.4
|
imageRef: ghcr.io/siderolabs/installer:v1.7.1
|
||||||
systemExtensions:
|
systemExtensions:
|
||||||
- imageRef: ghcr.io/siderolabs/amd-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/amd-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/amdgpu-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240115
|
- imageRef: ghcr.io/siderolabs/bnx2-bnx2x:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/i915-ucode:20240115
|
- imageRef: ghcr.io/siderolabs/i915-ucode:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/intel-ice-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/intel-ucode:20231114
|
- imageRef: ghcr.io/siderolabs/intel-ucode:20240312
|
||||||
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240115
|
- imageRef: ghcr.io/siderolabs/qlogic-firmware:20240410
|
||||||
- imageRef: ghcr.io/siderolabs/drbd:9.2.6-v1.6.4
|
- imageRef: ghcr.io/siderolabs/drbd:9.2.8-v1.7.1
|
||||||
- imageRef: ghcr.io/siderolabs/zfs:2.1.14-v1.6.4
|
- imageRef: ghcr.io/siderolabs/zfs:2.2.3-v1.7.1
|
||||||
output:
|
output:
|
||||||
kind: image
|
kind: nocloud
|
||||||
imageOptions: { diskSize: 1306525696, diskFormat: raw }
|
imageOptions: { diskSize: 1306525696, diskFormat: raw }
|
||||||
outFormat: .xz
|
outFormat: .xz
|
||||||
|
|||||||
@@ -52,6 +52,12 @@ releases:
|
|||||||
privileged: true
|
privileged: true
|
||||||
dependsOn: [cilium]
|
dependsOn: [cilium]
|
||||||
|
|
||||||
|
- name: etcd-operator
|
||||||
|
releaseName: etcd-operator
|
||||||
|
chart: cozy-etcd-operator
|
||||||
|
namespace: cozy-etcd-operator
|
||||||
|
dependsOn: [cilium,cert-manager]
|
||||||
|
|
||||||
- name: grafana-operator
|
- name: grafana-operator
|
||||||
releaseName: grafana-operator
|
releaseName: grafana-operator
|
||||||
chart: cozy-grafana-operator
|
chart: cozy-grafana-operator
|
||||||
|
|||||||
@@ -26,6 +26,12 @@ releases:
|
|||||||
privileged: true
|
privileged: true
|
||||||
dependsOn: [victoria-metrics-operator]
|
dependsOn: [victoria-metrics-operator]
|
||||||
|
|
||||||
|
- name: etcd-operator
|
||||||
|
releaseName: etcd-operator
|
||||||
|
chart: cozy-etcd-operator
|
||||||
|
namespace: cozy-etcd-operator
|
||||||
|
dependsOn: [cert-manager]
|
||||||
|
|
||||||
- name: grafana-operator
|
- name: grafana-operator
|
||||||
releaseName: grafana-operator
|
releaseName: grafana-operator
|
||||||
chart: cozy-grafana-operator
|
chart: cozy-grafana-operator
|
||||||
|
|||||||
@@ -81,6 +81,12 @@ releases:
|
|||||||
privileged: true
|
privileged: true
|
||||||
dependsOn: [cilium,kubeovn]
|
dependsOn: [cilium,kubeovn]
|
||||||
|
|
||||||
|
- name: etcd-operator
|
||||||
|
releaseName: etcd-operator
|
||||||
|
chart: cozy-etcd-operator
|
||||||
|
namespace: cozy-etcd-operator
|
||||||
|
dependsOn: [cilium,kubeovn,cert-manager]
|
||||||
|
|
||||||
- name: grafana-operator
|
- name: grafana-operator
|
||||||
releaseName: grafana-operator
|
releaseName: grafana-operator
|
||||||
chart: cozy-grafana-operator
|
chart: cozy-grafana-operator
|
||||||
|
|||||||
@@ -26,6 +26,12 @@ releases:
|
|||||||
privileged: true
|
privileged: true
|
||||||
dependsOn: [victoria-metrics-operator]
|
dependsOn: [victoria-metrics-operator]
|
||||||
|
|
||||||
|
- name: etcd-operator
|
||||||
|
releaseName: etcd-operator
|
||||||
|
chart: cozy-etcd-operator
|
||||||
|
namespace: cozy-etcd-operator
|
||||||
|
dependsOn: [cert-manager]
|
||||||
|
|
||||||
- name: grafana-operator
|
- name: grafana-operator
|
||||||
releaseName: grafana-operator
|
releaseName: grafana-operator
|
||||||
chart: cozy-grafana-operator
|
chart: cozy-grafana-operator
|
||||||
|
|||||||
@@ -23,9 +23,11 @@ spec:
|
|||||||
interval: 1m
|
interval: 1m
|
||||||
releaseName: {{ $x.releaseName | default $x.name }}
|
releaseName: {{ $x.releaseName | default $x.name }}
|
||||||
install:
|
install:
|
||||||
|
crds: CreateReplace
|
||||||
remediation:
|
remediation:
|
||||||
retries: -1
|
retries: -1
|
||||||
upgrade:
|
upgrade:
|
||||||
|
crds: CreateReplace
|
||||||
remediation:
|
remediation:
|
||||||
retries: -1
|
retries: -1
|
||||||
chart:
|
chart:
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ repo:
|
|||||||
awk '$$3 != "HEAD" {print "mkdir -p $(TMP)/" $$1 "-" $$2}' versions_map | sh -ex
|
awk '$$3 != "HEAD" {print "mkdir -p $(TMP)/" $$1 "-" $$2}' versions_map | sh -ex
|
||||||
awk '$$3 != "HEAD" {print "git archive " $$3 " " $$1 " | tar -xf- --strip-components=1 -C $(TMP)/" $$1 "-" $$2 }' versions_map | sh -ex
|
awk '$$3 != "HEAD" {print "git archive " $$3 " " $$1 " | tar -xf- --strip-components=1 -C $(TMP)/" $$1 "-" $$2 }' versions_map | sh -ex
|
||||||
helm package -d "$(OUT)" $$(find . $(TMP) -mindepth 2 -maxdepth 2 -name Chart.yaml | awk 'sub("/Chart.yaml", "")' | sort -V)
|
helm package -d "$(OUT)" $$(find . $(TMP) -mindepth 2 -maxdepth 2 -name Chart.yaml | awk 'sub("/Chart.yaml", "")' | sort -V)
|
||||||
cd "$(OUT)" && helm repo index .
|
cd "$(OUT)" && helm repo index . --url http://cozystack.cozy-system.svc/repos/extra
|
||||||
rm -rf "$(TMP)"
|
rm -rf "$(TMP)"
|
||||||
|
|
||||||
fix-chartnames:
|
fix-chartnames:
|
||||||
|
|||||||
@@ -3,4 +3,4 @@ name: etcd
|
|||||||
description: Storage for Kubernetes clusters
|
description: Storage for Kubernetes clusters
|
||||||
icon: https://www.svgrepo.com/show/353714/etcd.svg
|
icon: https://www.svgrepo.com/show/353714/etcd.svg
|
||||||
type: application
|
type: application
|
||||||
version: 1.0.0
|
version: 2.0.0
|
||||||
|
|||||||
50
packages/extra/etcd/templates/datastore.yaml
Normal file
50
packages/extra/etcd/templates/datastore.yaml
Normal file
@@ -0,0 +1,50 @@
|
|||||||
|
---
|
||||||
|
apiVersion: kamaji.clastix.io/v1alpha1
|
||||||
|
kind: DataStore
|
||||||
|
metadata:
|
||||||
|
name: {{ .Release.Namespace }}
|
||||||
|
spec:
|
||||||
|
driver: etcd
|
||||||
|
endpoints:
|
||||||
|
- etcd-0.etcd-headless.{{ .Release.Namespace }}.svc:2379
|
||||||
|
- etcd-1.etcd-headless.{{ .Release.Namespace }}.svc:2379
|
||||||
|
- etcd-2.etcd-headless.{{ .Release.Namespace }}.svc:2379
|
||||||
|
tlsConfig:
|
||||||
|
certificateAuthority:
|
||||||
|
certificate:
|
||||||
|
secretReference:
|
||||||
|
keyPath: tls.crt
|
||||||
|
name: etcd-ca-tls
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
privateKey:
|
||||||
|
secretReference:
|
||||||
|
keyPath: tls.key
|
||||||
|
name: etcd-ca-tls
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
clientCertificate:
|
||||||
|
certificate:
|
||||||
|
secretReference:
|
||||||
|
keyPath: tls.crt
|
||||||
|
name: etcd-client-tls
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
privateKey:
|
||||||
|
secretReference:
|
||||||
|
keyPath: tls.key
|
||||||
|
name: etcd-client-tls
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: etcd-ca-tls
|
||||||
|
annotations:
|
||||||
|
helm.sh/hook: pre-install
|
||||||
|
helm.sh/resource-policy: keep
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Secret
|
||||||
|
metadata:
|
||||||
|
name: etcd-client-tls
|
||||||
|
annotations:
|
||||||
|
helm.sh/hook: pre-install
|
||||||
|
helm.sh/resource-policy: keep
|
||||||
176
packages/extra/etcd/templates/etcd-cluster.yaml
Normal file
176
packages/extra/etcd/templates/etcd-cluster.yaml
Normal file
@@ -0,0 +1,176 @@
|
|||||||
|
---
|
||||||
|
apiVersion: etcd.aenix.io/v1alpha1
|
||||||
|
kind: EtcdCluster
|
||||||
|
metadata:
|
||||||
|
name: etcd
|
||||||
|
spec:
|
||||||
|
storage: {}
|
||||||
|
security:
|
||||||
|
tls:
|
||||||
|
peerTrustedCASecret: etcd-peer-ca-tls
|
||||||
|
peerSecret: etcd-peer-tls
|
||||||
|
serverSecret: etcd-server-tls
|
||||||
|
clientTrustedCASecret: etcd-ca-tls
|
||||||
|
clientSecret: etcd-client-tls
|
||||||
|
podTemplate:
|
||||||
|
spec:
|
||||||
|
topologySpreadConstraints:
|
||||||
|
- maxSkew: 1
|
||||||
|
topologyKey: "kubernetes.io/hostname"
|
||||||
|
whenUnsatisfiable: ScheduleAnyway
|
||||||
|
labelSelector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/instance: etcd
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Issuer
|
||||||
|
metadata:
|
||||||
|
name: etcd-selfsigning-issuer
|
||||||
|
spec:
|
||||||
|
selfSigned: {}
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: etcd-peer-ca
|
||||||
|
spec:
|
||||||
|
isCA: true
|
||||||
|
usages:
|
||||||
|
- "signing"
|
||||||
|
- "key encipherment"
|
||||||
|
- "cert sign"
|
||||||
|
commonName: etcd-peer-ca
|
||||||
|
subject:
|
||||||
|
organizations:
|
||||||
|
- ACME Inc.
|
||||||
|
organizationalUnits:
|
||||||
|
- Widgets
|
||||||
|
secretName: etcd-peer-ca-tls
|
||||||
|
privateKey:
|
||||||
|
algorithm: RSA
|
||||||
|
size: 4096
|
||||||
|
issuerRef:
|
||||||
|
name: etcd-selfsigning-issuer
|
||||||
|
kind: Issuer
|
||||||
|
group: cert-manager.io
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: etcd-ca
|
||||||
|
spec:
|
||||||
|
isCA: true
|
||||||
|
usages:
|
||||||
|
- "signing"
|
||||||
|
- "key encipherment"
|
||||||
|
- "cert sign"
|
||||||
|
commonName: etcd-ca
|
||||||
|
subject:
|
||||||
|
organizations:
|
||||||
|
- ACME Inc.
|
||||||
|
organizationalUnits:
|
||||||
|
- Widgets
|
||||||
|
secretName: etcd-ca-tls
|
||||||
|
privateKey:
|
||||||
|
algorithm: RSA
|
||||||
|
size: 4096
|
||||||
|
issuerRef:
|
||||||
|
name: etcd-selfsigning-issuer
|
||||||
|
kind: Issuer
|
||||||
|
group: cert-manager.io
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Issuer
|
||||||
|
metadata:
|
||||||
|
name: etcd-peer-issuer
|
||||||
|
spec:
|
||||||
|
ca:
|
||||||
|
secretName: etcd-peer-ca-tls
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Issuer
|
||||||
|
metadata:
|
||||||
|
name: etcd-issuer
|
||||||
|
spec:
|
||||||
|
ca:
|
||||||
|
secretName: etcd-ca-tls
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: etcd-server
|
||||||
|
spec:
|
||||||
|
secretName: etcd-server-tls
|
||||||
|
isCA: false
|
||||||
|
usages:
|
||||||
|
- "server auth"
|
||||||
|
- "signing"
|
||||||
|
- "key encipherment"
|
||||||
|
dnsNames:
|
||||||
|
- etcd-0
|
||||||
|
- etcd-0.etcd-headless
|
||||||
|
- etcd-0.etcd-headless.{{ .Release.Namespace }}.svc
|
||||||
|
- etcd-1
|
||||||
|
- etcd-1.etcd-headless
|
||||||
|
- etcd-1.etcd-headless.{{ .Release.Namespace }}.svc
|
||||||
|
- etcd-2
|
||||||
|
- etcd-2.etcd-headless
|
||||||
|
- etcd-2.etcd-headless.{{ .Release.Namespace }}.svc
|
||||||
|
- localhost
|
||||||
|
- "127.0.0.1"
|
||||||
|
privateKey:
|
||||||
|
rotationPolicy: Always
|
||||||
|
algorithm: RSA
|
||||||
|
size: 4096
|
||||||
|
issuerRef:
|
||||||
|
name: etcd-issuer
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: etcd-peer
|
||||||
|
spec:
|
||||||
|
secretName: etcd-peer-tls
|
||||||
|
isCA: false
|
||||||
|
usages:
|
||||||
|
- "server auth"
|
||||||
|
- "client auth"
|
||||||
|
- "signing"
|
||||||
|
- "key encipherment"
|
||||||
|
dnsNames:
|
||||||
|
- etcd-0
|
||||||
|
- etcd-0.etcd-headless
|
||||||
|
- etcd-0.etcd-headless.{{ .Release.Namespace }}.svc
|
||||||
|
- etcd-1
|
||||||
|
- etcd-1.etcd-headless
|
||||||
|
- etcd-1.etcd-headless.{{ .Release.Namespace }}.svc
|
||||||
|
- etcd-2
|
||||||
|
- etcd-2.etcd-headless
|
||||||
|
- etcd-2.etcd-headless.{{ .Release.Namespace }}.svc
|
||||||
|
- localhost
|
||||||
|
- "127.0.0.1"
|
||||||
|
privateKey:
|
||||||
|
rotationPolicy: Always
|
||||||
|
algorithm: RSA
|
||||||
|
size: 4096
|
||||||
|
issuerRef:
|
||||||
|
name: etcd-peer-issuer
|
||||||
|
---
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: etcd-client
|
||||||
|
spec:
|
||||||
|
commonName: root
|
||||||
|
secretName: etcd-client-tls
|
||||||
|
usages:
|
||||||
|
- "signing"
|
||||||
|
- "key encipherment"
|
||||||
|
- "client auth"
|
||||||
|
privateKey:
|
||||||
|
rotationPolicy: Always
|
||||||
|
algorithm: RSA
|
||||||
|
size: 4096
|
||||||
|
issuerRef:
|
||||||
|
name: etcd-issuer
|
||||||
|
kind: Issuer
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
apiVersion: helm.toolkit.fluxcd.io/v2beta1
|
|
||||||
kind: HelmRelease
|
|
||||||
metadata:
|
|
||||||
name: kamaji-etcd
|
|
||||||
spec:
|
|
||||||
chart:
|
|
||||||
spec:
|
|
||||||
chart: cozy-kamaji-etcd
|
|
||||||
reconcileStrategy: Revision
|
|
||||||
sourceRef:
|
|
||||||
kind: HelmRepository
|
|
||||||
name: cozystack-system
|
|
||||||
namespace: cozy-system
|
|
||||||
version: '*'
|
|
||||||
interval: 1m0s
|
|
||||||
timeout: 5m0s
|
|
||||||
values:
|
|
||||||
kamaji-etcd:
|
|
||||||
fullnameOverride: etcd
|
|
||||||
@@ -1,3 +1,4 @@
|
|||||||
etcd 1.0.0 HEAD
|
etcd 1.0.0 f7eaab0
|
||||||
|
etcd 2.0.0 HEAD
|
||||||
ingress 1.0.0 HEAD
|
ingress 1.0.0 HEAD
|
||||||
monitoring 1.0.0 HEAD
|
monitoring 1.0.0 HEAD
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ spec:
|
|||||||
deployment:
|
deployment:
|
||||||
containers:
|
containers:
|
||||||
- name: manager
|
- name: manager
|
||||||
imageUrl: ghcr.io/kvaps/test:cluster-api-control-plane-provider-kamaji-v0.6.0-fix7
|
imageUrl: ghcr.io/kvaps/test:cluster-api-control-plane-provider-kamaji-v0.7.1-fix
|
||||||
---
|
---
|
||||||
apiVersion: operator.cluster.x-k8s.io/v1alpha2
|
apiVersion: operator.cluster.x-k8s.io/v1alpha2
|
||||||
kind: BootstrapProvider
|
kind: BootstrapProvider
|
||||||
|
|||||||
@@ -1,12 +1,12 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
- name: redis
|
- name: redis
|
||||||
repository: oci://registry-1.docker.io/bitnamicharts
|
repository: oci://registry-1.docker.io/bitnamicharts
|
||||||
version: 18.19.2
|
version: 19.0.2
|
||||||
- name: postgresql
|
- name: postgresql
|
||||||
repository: oci://registry-1.docker.io/bitnamicharts
|
repository: oci://registry-1.docker.io/bitnamicharts
|
||||||
version: 13.4.6
|
version: 15.2.4
|
||||||
- name: common
|
- name: common
|
||||||
repository: oci://registry-1.docker.io/bitnamicharts
|
repository: oci://registry-1.docker.io/bitnamicharts
|
||||||
version: 2.19.0
|
version: 2.19.1
|
||||||
digest: sha256:b4965a22517e61212e78abb8d1cbe86e800c8664b3139e2047f4bd62b3e55b24
|
digest: sha256:2ff034d67cb1b9c11f0243b3ab9a6a8642bf12142df2f86043f9006adf6dbba1
|
||||||
generated: "2024-03-13T11:51:34.216594+01:00"
|
generated: "2024-04-08T09:01:34.727544997Z"
|
||||||
|
|||||||
@@ -2,33 +2,33 @@ annotations:
|
|||||||
category: Infrastructure
|
category: Infrastructure
|
||||||
images: |
|
images: |
|
||||||
- name: kubeapps-apis
|
- name: kubeapps-apis
|
||||||
image: docker.io/bitnami/kubeapps-apis:2.9.0-debian-12-r19
|
image: docker.io/bitnami/kubeapps-apis:2.10.0-debian-12-r0
|
||||||
- name: kubeapps-apprepository-controller
|
- name: kubeapps-apprepository-controller
|
||||||
image: docker.io/bitnami/kubeapps-apprepository-controller:2.9.0-debian-12-r18
|
image: docker.io/bitnami/kubeapps-apprepository-controller:2.10.0-debian-12-r0
|
||||||
- name: kubeapps-asset-syncer
|
- name: kubeapps-asset-syncer
|
||||||
image: docker.io/bitnami/kubeapps-asset-syncer:2.9.0-debian-12-r19
|
image: docker.io/bitnami/kubeapps-asset-syncer:2.10.0-debian-12-r0
|
||||||
- name: kubeapps-dashboard
|
- name: kubeapps-dashboard
|
||||||
image: docker.io/bitnami/kubeapps-dashboard:2.9.0-debian-12-r18
|
image: docker.io/bitnami/kubeapps-dashboard:2.10.0-debian-12-r0
|
||||||
- name: kubeapps-oci-catalog
|
- name: kubeapps-oci-catalog
|
||||||
image: docker.io/bitnami/kubeapps-oci-catalog:2.9.0-debian-12-r17
|
image: docker.io/bitnami/kubeapps-oci-catalog:2.10.0-debian-12-r0
|
||||||
- name: kubeapps-pinniped-proxy
|
- name: kubeapps-pinniped-proxy
|
||||||
image: docker.io/bitnami/kubeapps-pinniped-proxy:2.9.0-debian-12-r17
|
image: docker.io/bitnami/kubeapps-pinniped-proxy:2.10.0-debian-12-r0
|
||||||
- name: nginx
|
- name: nginx
|
||||||
image: docker.io/bitnami/nginx:1.25.4-debian-12-r3
|
image: docker.io/bitnami/nginx:1.25.4-debian-12-r7
|
||||||
- name: oauth2-proxy
|
- name: oauth2-proxy
|
||||||
image: docker.io/bitnami/oauth2-proxy:7.6.0-debian-12-r4
|
image: docker.io/bitnami/oauth2-proxy:7.6.0-debian-12-r7
|
||||||
licenses: Apache-2.0
|
licenses: Apache-2.0
|
||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
appVersion: 2.9.0
|
appVersion: 2.10.0
|
||||||
dependencies:
|
dependencies:
|
||||||
- condition: packaging.flux.enabled
|
- condition: packaging.flux.enabled
|
||||||
name: redis
|
name: redis
|
||||||
repository: oci://registry-1.docker.io/bitnamicharts
|
repository: oci://registry-1.docker.io/bitnamicharts
|
||||||
version: 18.x.x
|
version: 19.x.x
|
||||||
- condition: packaging.helm.enabled
|
- condition: packaging.helm.enabled
|
||||||
name: postgresql
|
name: postgresql
|
||||||
repository: oci://registry-1.docker.io/bitnamicharts
|
repository: oci://registry-1.docker.io/bitnamicharts
|
||||||
version: 13.x.x
|
version: 15.x.x
|
||||||
- name: common
|
- name: common
|
||||||
repository: oci://registry-1.docker.io/bitnamicharts
|
repository: oci://registry-1.docker.io/bitnamicharts
|
||||||
tags:
|
tags:
|
||||||
@@ -51,4 +51,4 @@ maintainers:
|
|||||||
name: kubeapps
|
name: kubeapps
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/bitnami/charts/tree/main/bitnami/kubeapps
|
- https://github.com/bitnami/charts/tree/main/bitnami/kubeapps
|
||||||
version: 14.7.2
|
version: 15.0.2
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -2,7 +2,7 @@ annotations:
|
|||||||
category: Infrastructure
|
category: Infrastructure
|
||||||
licenses: Apache-2.0
|
licenses: Apache-2.0
|
||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
appVersion: 2.19.0
|
appVersion: 2.19.1
|
||||||
description: A Library Helm Chart for grouping common logic between bitnami charts.
|
description: A Library Helm Chart for grouping common logic between bitnami charts.
|
||||||
This chart is not deployable by itself.
|
This chart is not deployable by itself.
|
||||||
home: https://bitnami.com
|
home: https://bitnami.com
|
||||||
@@ -20,4 +20,4 @@ name: common
|
|||||||
sources:
|
sources:
|
||||||
- https://github.com/bitnami/charts
|
- https://github.com/bitnami/charts
|
||||||
type: library
|
type: library
|
||||||
version: 2.19.0
|
version: 2.19.1
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ These presets are for basic testing and not meant to be used in production
|
|||||||
{{ include "common.resources.preset" (dict "type" "nano") -}}
|
{{ include "common.resources.preset" (dict "type" "nano") -}}
|
||||||
*/}}
|
*/}}
|
||||||
{{- define "common.resources.preset" -}}
|
{{- define "common.resources.preset" -}}
|
||||||
{{/* The limits are the requests increased by 50% (except ephemeral-storage)*/}}
|
{{/* The limits are the requests increased by 50% (except ephemeral-storage and xlarge/2xlarge sizes)*/}}
|
||||||
{{- $presets := dict
|
{{- $presets := dict
|
||||||
"nano" (dict
|
"nano" (dict
|
||||||
"requests" (dict "cpu" "100m" "memory" "128Mi" "ephemeral-storage" "50Mi")
|
"requests" (dict "cpu" "100m" "memory" "128Mi" "ephemeral-storage" "50Mi")
|
||||||
@@ -34,11 +34,11 @@ These presets are for basic testing and not meant to be used in production
|
|||||||
"limits" (dict "cpu" "1.5" "memory" "3072Mi" "ephemeral-storage" "1024Mi")
|
"limits" (dict "cpu" "1.5" "memory" "3072Mi" "ephemeral-storage" "1024Mi")
|
||||||
)
|
)
|
||||||
"xlarge" (dict
|
"xlarge" (dict
|
||||||
"requests" (dict "cpu" "2.0" "memory" "4096Mi" "ephemeral-storage" "50Mi")
|
"requests" (dict "cpu" "1.5" "memory" "4096Mi" "ephemeral-storage" "50Mi")
|
||||||
"limits" (dict "cpu" "3.0" "memory" "6144Mi" "ephemeral-storage" "1024Mi")
|
"limits" (dict "cpu" "3.0" "memory" "6144Mi" "ephemeral-storage" "1024Mi")
|
||||||
)
|
)
|
||||||
"2xlarge" (dict
|
"2xlarge" (dict
|
||||||
"requests" (dict "cpu" "4.0" "memory" "8192Mi" "ephemeral-storage" "50Mi")
|
"requests" (dict "cpu" "1.5" "memory" "4096Mi" "ephemeral-storage" "50Mi")
|
||||||
"limits" (dict "cpu" "6.0" "memory" "12288Mi" "ephemeral-storage" "1024Mi")
|
"limits" (dict "cpu" "6.0" "memory" "12288Mi" "ephemeral-storage" "1024Mi")
|
||||||
)
|
)
|
||||||
}}
|
}}
|
||||||
@@ -47,4 +47,4 @@ These presets are for basic testing and not meant to be used in production
|
|||||||
{{- else -}}
|
{{- else -}}
|
||||||
{{- printf "ERROR: Preset key '%s' invalid. Allowed values are %s" .type (join "," (keys $presets)) | fail -}}
|
{{- printf "ERROR: Preset key '%s' invalid. Allowed values are %s" .type (join "," (keys $presets)) | fail -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|||||||
@@ -35,4 +35,4 @@ maintainers:
|
|||||||
name: redis
|
name: redis
|
||||||
sources:
|
sources:
|
||||||
- https://github.com/bitnami/charts/tree/main/bitnami/redis
|
- https://github.com/bitnami/charts/tree/main/bitnami/redis
|
||||||
version: 18.19.2
|
version: 19.0.2
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -28,8 +28,8 @@ spec:
|
|||||||
{{- if .Values.metrics.podMonitor.honorLabels }}
|
{{- if .Values.metrics.podMonitor.honorLabels }}
|
||||||
honorLabels: {{ .Values.metrics.podMonitor.honorLabels }}
|
honorLabels: {{ .Values.metrics.podMonitor.honorLabels }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.metrics.podMonitor.relabellings }}
|
{{- with concat .Values.metrics.podMonitor.relabelings .Values.metrics.podMonitor.relabellings }}
|
||||||
relabelings: {{- toYaml .Values.metrics.podMonitor.relabellings | nindent 6 }}
|
relabelings: {{- toYaml . | nindent 6 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.metrics.podMonitor.metricRelabelings }}
|
{{- if .Values.metrics.podMonitor.metricRelabelings }}
|
||||||
metricRelabelings: {{- toYaml .Values.metrics.podMonitor.metricRelabelings | nindent 6 }}
|
metricRelabelings: {{- toYaml .Values.metrics.podMonitor.metricRelabelings | nindent 6 }}
|
||||||
@@ -45,8 +45,8 @@ spec:
|
|||||||
{{- if .honorLabels }}
|
{{- if .honorLabels }}
|
||||||
honorLabels: {{ .honorLabels }}
|
honorLabels: {{ .honorLabels }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .relabellings }}
|
{{- with concat .Values.metrics.podMonitor.relabelings .Values.metrics.podMonitor.relabellings }}
|
||||||
relabelings: {{- toYaml .relabellings | nindent 6 }}
|
relabelings: {{- toYaml . | nindent 6 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .metricRelabelings }}
|
{{- if .metricRelabelings }}
|
||||||
metricRelabelings: {{- toYaml .metricRelabelings | nindent 6 }}
|
metricRelabelings: {{- toYaml .metricRelabelings | nindent 6 }}
|
||||||
|
|||||||
@@ -598,8 +598,9 @@ spec:
|
|||||||
image: {{ template "redis.kubectl.image" . }}
|
image: {{ template "redis.kubectl.image" . }}
|
||||||
imagePullPolicy: {{ .Values.kubectl.image.pullPolicy | quote }}
|
imagePullPolicy: {{ .Values.kubectl.image.pullPolicy | quote }}
|
||||||
command: {{- toYaml .Values.kubectl.command | nindent 12 }}
|
command: {{- toYaml .Values.kubectl.command | nindent 12 }}
|
||||||
securityContext:
|
{{- if .Values.kubectl.containerSecurityContext.enabled }}
|
||||||
runAsUser: 0
|
securityContext: {{- include "common.compatibility.renderSecurityContext" (dict "secContext" .Values.kubectl.containerSecurityContext "context" $) | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: kubectl-shared
|
- name: kubectl-shared
|
||||||
mountPath: /etc/shared
|
mountPath: /etc/shared
|
||||||
|
|||||||
@@ -28,8 +28,8 @@ spec:
|
|||||||
{{- if .Values.metrics.serviceMonitor.honorLabels }}
|
{{- if .Values.metrics.serviceMonitor.honorLabels }}
|
||||||
honorLabels: {{ .Values.metrics.serviceMonitor.honorLabels }}
|
honorLabels: {{ .Values.metrics.serviceMonitor.honorLabels }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.metrics.serviceMonitor.relabellings }}
|
{{- with concat .Values.metrics.serviceMonitor.relabelings .Values.metrics.serviceMonitor.relabellings }}
|
||||||
relabelings: {{- toYaml .Values.metrics.serviceMonitor.relabellings | nindent 6 }}
|
relabelings: {{- toYaml . | nindent 6 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .Values.metrics.serviceMonitor.metricRelabelings }}
|
{{- if .Values.metrics.serviceMonitor.metricRelabelings }}
|
||||||
metricRelabelings: {{- toYaml .Values.metrics.serviceMonitor.metricRelabelings | nindent 6 }}
|
metricRelabelings: {{- toYaml .Values.metrics.serviceMonitor.metricRelabelings | nindent 6 }}
|
||||||
@@ -45,8 +45,8 @@ spec:
|
|||||||
{{- if .honorLabels }}
|
{{- if .honorLabels }}
|
||||||
honorLabels: {{ .honorLabels }}
|
honorLabels: {{ .honorLabels }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .relabellings }}
|
{{- with concat .Values.metrics.serviceMonitor.relabelings .Values.metrics.serviceMonitor.relabellings }}
|
||||||
relabelings: {{- toYaml .relabellings | nindent 6 }}
|
relabelings: {{- toYaml . | nindent 6 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if .metricRelabelings }}
|
{{- if .metricRelabelings }}
|
||||||
metricRelabelings: {{- toYaml .metricRelabelings | nindent 6 }}
|
metricRelabelings: {{- toYaml .metricRelabelings | nindent 6 }}
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ global:
|
|||||||
openshift:
|
openshift:
|
||||||
## @param global.compatibility.openshift.adaptSecurityContext Adapt the securityContext sections of the deployment to make them compatible with Openshift restricted-v2 SCC: remove runAsUser, runAsGroup and fsGroup and let the platform use their allowed default IDs. Possible values: auto (apply if the detected running cluster is Openshift), force (perform the adaptation always), disabled (do not perform adaptation)
|
## @param global.compatibility.openshift.adaptSecurityContext Adapt the securityContext sections of the deployment to make them compatible with Openshift restricted-v2 SCC: remove runAsUser, runAsGroup and fsGroup and let the platform use their allowed default IDs. Possible values: auto (apply if the detected running cluster is Openshift), force (perform the adaptation always), disabled (do not perform adaptation)
|
||||||
##
|
##
|
||||||
adaptSecurityContext: disabled
|
adaptSecurityContext: auto
|
||||||
## @section Common parameters
|
## @section Common parameters
|
||||||
##
|
##
|
||||||
|
|
||||||
@@ -275,7 +275,7 @@ master:
|
|||||||
## @param master.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if master.resources is set (master.resources is recommended for production).
|
## @param master.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if master.resources is set (master.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "nano"
|
||||||
## @param master.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
## @param master.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## Example:
|
## Example:
|
||||||
## resources:
|
## resources:
|
||||||
@@ -315,12 +315,12 @@ master:
|
|||||||
##
|
##
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: {}
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
seccompProfile:
|
seccompProfile:
|
||||||
type: RuntimeDefault
|
type: RuntimeDefault
|
||||||
capabilities:
|
capabilities:
|
||||||
@@ -737,7 +737,7 @@ replica:
|
|||||||
## @param replica.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if replica.resources is set (replica.resources is recommended for production).
|
## @param replica.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if replica.resources is set (replica.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "nano"
|
||||||
## @param replica.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
## @param replica.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## Example:
|
## Example:
|
||||||
## resources:
|
## resources:
|
||||||
@@ -777,12 +777,12 @@ replica:
|
|||||||
##
|
##
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: {}
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
seccompProfile:
|
seccompProfile:
|
||||||
type: RuntimeDefault
|
type: RuntimeDefault
|
||||||
capabilities:
|
capabilities:
|
||||||
@@ -1306,7 +1306,7 @@ sentinel:
|
|||||||
## @param sentinel.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if sentinel.resources is set (sentinel.resources is recommended for production).
|
## @param sentinel.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if sentinel.resources is set (sentinel.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "nano"
|
||||||
## @param sentinel.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
## @param sentinel.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## Example:
|
## Example:
|
||||||
## resources:
|
## resources:
|
||||||
@@ -1332,12 +1332,12 @@ sentinel:
|
|||||||
##
|
##
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: {}
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
seccompProfile:
|
seccompProfile:
|
||||||
type: RuntimeDefault
|
type: RuntimeDefault
|
||||||
capabilities:
|
capabilities:
|
||||||
@@ -1708,12 +1708,12 @@ metrics:
|
|||||||
##
|
##
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: {}
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
seccompProfile:
|
seccompProfile:
|
||||||
type: RuntimeDefault
|
type: RuntimeDefault
|
||||||
capabilities:
|
capabilities:
|
||||||
@@ -1729,7 +1729,7 @@ metrics:
|
|||||||
## @param metrics.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if metrics.resources is set (metrics.resources is recommended for production).
|
## @param metrics.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if metrics.resources is set (metrics.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "nano"
|
||||||
## @param metrics.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
## @param metrics.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## Example:
|
## Example:
|
||||||
## resources:
|
## resources:
|
||||||
@@ -1812,7 +1812,10 @@ metrics:
|
|||||||
## @param metrics.serviceMonitor.scrapeTimeout The timeout after which the scrape is ended
|
## @param metrics.serviceMonitor.scrapeTimeout The timeout after which the scrape is ended
|
||||||
##
|
##
|
||||||
scrapeTimeout: ""
|
scrapeTimeout: ""
|
||||||
## @param metrics.serviceMonitor.relabellings Metrics RelabelConfigs to apply to samples before scraping.
|
## @param metrics.serviceMonitor.relabelings Metrics RelabelConfigs to apply to samples before scraping.
|
||||||
|
##
|
||||||
|
relabelings: []
|
||||||
|
## @skip metrics.serviceMonitor.relabellings DEPRECATED: Use `metrics.serviceMonitor.relabelings` instead.
|
||||||
##
|
##
|
||||||
relabellings: []
|
relabellings: []
|
||||||
## @param metrics.serviceMonitor.metricRelabelings Metrics RelabelConfigs to apply to samples before ingestion.
|
## @param metrics.serviceMonitor.metricRelabelings Metrics RelabelConfigs to apply to samples before ingestion.
|
||||||
@@ -1866,7 +1869,10 @@ metrics:
|
|||||||
## @param metrics.podMonitor.scrapeTimeout The timeout after which the scrape is ended
|
## @param metrics.podMonitor.scrapeTimeout The timeout after which the scrape is ended
|
||||||
##
|
##
|
||||||
scrapeTimeout: ""
|
scrapeTimeout: ""
|
||||||
## @param metrics.podMonitor.relabellings Metrics RelabelConfigs to apply to samples before scraping.
|
## @param metrics.podMonitor.relabelings Metrics RelabelConfigs to apply to samples before scraping.
|
||||||
|
##
|
||||||
|
relabelings: []
|
||||||
|
## @skip metrics.podMonitor.relabellings DEPRECATED: Use `metrics.podMonitor.relabelings` instead.
|
||||||
##
|
##
|
||||||
relabellings: []
|
relabellings: []
|
||||||
## @param metrics.podMonitor.metricRelabelings Metrics RelabelConfigs to apply to samples before ingestion.
|
## @param metrics.podMonitor.metricRelabelings Metrics RelabelConfigs to apply to samples before ingestion.
|
||||||
@@ -1988,7 +1994,7 @@ volumePermissions:
|
|||||||
## @param volumePermissions.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if volumePermissions.resources is set (volumePermissions.resources is recommended for production).
|
## @param volumePermissions.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if volumePermissions.resources is set (volumePermissions.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "nano"
|
||||||
## @param volumePermissions.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
## @param volumePermissions.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## Example:
|
## Example:
|
||||||
## resources:
|
## resources:
|
||||||
@@ -2009,7 +2015,7 @@ volumePermissions:
|
|||||||
## "auto" is especially useful for OpenShift which has scc with dynamic user ids (and 0 is not allowed)
|
## "auto" is especially useful for OpenShift which has scc with dynamic user ids (and 0 is not allowed)
|
||||||
##
|
##
|
||||||
containerSecurityContext:
|
containerSecurityContext:
|
||||||
seLinuxOptions: null
|
seLinuxOptions: {}
|
||||||
runAsUser: 0
|
runAsUser: 0
|
||||||
|
|
||||||
## Kubectl InitContainer
|
## Kubectl InitContainer
|
||||||
@@ -2046,6 +2052,30 @@ kubectl:
|
|||||||
## @param kubectl.command kubectl command to execute
|
## @param kubectl.command kubectl command to execute
|
||||||
##
|
##
|
||||||
command: ["/opt/bitnami/scripts/kubectl-scripts/update-master-label.sh"]
|
command: ["/opt/bitnami/scripts/kubectl-scripts/update-master-label.sh"]
|
||||||
|
## Configure Container Security Context
|
||||||
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
|
||||||
|
## @param kubectl.containerSecurityContext.enabled Enabled kubectl containers' Security Context
|
||||||
|
## @param kubectl.containerSecurityContext.seLinuxOptions [object,nullable] Set SELinux options in container
|
||||||
|
## @param kubectl.containerSecurityContext.runAsUser Set kubectl containers' Security Context runAsUser
|
||||||
|
## @param kubectl.containerSecurityContext.runAsGroup Set kubectl containers' Security Context runAsGroup
|
||||||
|
## @param kubectl.containerSecurityContext.runAsNonRoot Set kubectl containers' Security Context runAsNonRoot
|
||||||
|
## @param kubectl.containerSecurityContext.allowPrivilegeEscalation Set kubectl containers' Security Context allowPrivilegeEscalation
|
||||||
|
## @param kubectl.containerSecurityContext.readOnlyRootFilesystem Set container's Security Context read-only root filesystem
|
||||||
|
## @param kubectl.containerSecurityContext.seccompProfile.type Set kubectl containers' Security Context seccompProfile
|
||||||
|
## @param kubectl.containerSecurityContext.capabilities.drop Set kubectl containers' Security Context capabilities to drop
|
||||||
|
##
|
||||||
|
containerSecurityContext:
|
||||||
|
enabled: true
|
||||||
|
seLinuxOptions: {}
|
||||||
|
runAsUser: 1001
|
||||||
|
runAsGroup: 1001
|
||||||
|
runAsNonRoot: true
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
capabilities:
|
||||||
|
drop: ["ALL"]
|
||||||
## Bitnami Kubectl resource requests and limits
|
## Bitnami Kubectl resource requests and limits
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
||||||
## @param kubectl.resources.limits The resources limits for the kubectl containers
|
## @param kubectl.resources.limits The resources limits for the kubectl containers
|
||||||
@@ -2096,7 +2126,7 @@ sysctl:
|
|||||||
## @param sysctl.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if sysctl.resources is set (sysctl.resources is recommended for production).
|
## @param sysctl.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if sysctl.resources is set (sysctl.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "nano"
|
||||||
## @param sysctl.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
## @param sysctl.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## Example:
|
## Example:
|
||||||
## resources:
|
## resources:
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
|
|||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.apprepository.fullname" . }}
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.apprepository.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.apprepository.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -0,0 +1,59 @@
|
|||||||
|
{{- /*
|
||||||
|
Copyright VMware, Inc.
|
||||||
|
SPDX-License-Identifier: APACHE-2.0
|
||||||
|
*/}}
|
||||||
|
|
||||||
|
{{- if and .Values.packaging.helm.enabled .Values.apprepository.networkPolicy.enabled }}
|
||||||
|
kind: NetworkPolicy
|
||||||
|
apiVersion: {{ include "common.capabilities.networkPolicy.apiVersion" . }}
|
||||||
|
metadata:
|
||||||
|
name: {{ include "kubeapps.apprepository.fullname" . }}
|
||||||
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.apprepository.image "chart" .Chart ) ) }}
|
||||||
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
app.kubernetes.io/component: apprepository
|
||||||
|
{{- if .Values.commonAnnotations }}
|
||||||
|
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
policyTypes:
|
||||||
|
- Ingress
|
||||||
|
- Egress
|
||||||
|
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.apprepository.podLabels .Values.commonLabels ) "context" . ) }}
|
||||||
|
podSelector:
|
||||||
|
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
|
||||||
|
app.kubernetes.io/component: apprepository
|
||||||
|
{{- if .Values.apprepository.networkPolicy.allowExternalEgress }}
|
||||||
|
egress:
|
||||||
|
- {}
|
||||||
|
{{- else }}
|
||||||
|
egress:
|
||||||
|
# Allow dns resolution
|
||||||
|
- ports:
|
||||||
|
- port: 53
|
||||||
|
protocol: UDP
|
||||||
|
- port: 53
|
||||||
|
protocol: TCP
|
||||||
|
{{- range $port := .Values.apprepository.networkPolicy.kubeAPIServerPorts }}
|
||||||
|
- port: {{ $port }}
|
||||||
|
{{- end }}
|
||||||
|
# Allow connection to PostgreSQL
|
||||||
|
- ports:
|
||||||
|
- port: {{ include "kubeapps.postgresql.port" . }}
|
||||||
|
{{- if .Values.postgresql.enabled }}
|
||||||
|
to:
|
||||||
|
- podSelector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: postgresql
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.apprepository.networkPolicy.extraEgress }}
|
||||||
|
{{- include "common.tplvalues.render" ( dict "value" .Values.apprepository.networkPolicy.extraEgress "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
ingress:
|
||||||
|
{{- if .Values.apprepository.networkPolicy.extraIngress }}
|
||||||
|
{{- include "common.tplvalues.render" ( dict "value" .Values.apprepository.networkPolicy.extraIngress "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -12,7 +12,7 @@ apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
|||||||
kind: Role
|
kind: Role
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.apprepository.fullname" . }}
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
app.kubernetes.io/component: apprepository
|
app.kubernetes.io/component: apprepository
|
||||||
{{- if .Values.commonAnnotations }}
|
{{- if .Values.commonAnnotations }}
|
||||||
@@ -73,7 +73,7 @@ apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
|||||||
kind: RoleBinding
|
kind: RoleBinding
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.apprepository.fullname" . }}
|
name: {{ template "kubeapps.apprepository.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
app.kubernetes.io/component: apprepository
|
app.kubernetes.io/component: apprepository
|
||||||
{{- if .Values.commonAnnotations }}
|
{{- if .Values.commonAnnotations }}
|
||||||
@@ -112,7 +112,7 @@ apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
|||||||
kind: Role
|
kind: Role
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ printf "%s-repositories-read" .Release.Name }}
|
name: {{ printf "%s-repositories-read" .Release.Name }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
app.kubernetes.io/component: apprepository
|
app.kubernetes.io/component: apprepository
|
||||||
{{- if .Values.commonAnnotations }}
|
{{- if .Values.commonAnnotations }}
|
||||||
@@ -132,7 +132,7 @@ apiVersion: {{ include "common.capabilities.rbac.apiVersion" . }}
|
|||||||
kind: Role
|
kind: Role
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ printf "%s-repositories-write" .Release.Name }}
|
name: {{ printf "%s-repositories-write" .Release.Name }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
app.kubernetes.io/component: apprepository
|
app.kubernetes.io/component: apprepository
|
||||||
{{- if .Values.commonAnnotations }}
|
{{- if .Values.commonAnnotations }}
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ apiVersion: v1
|
|||||||
kind: ServiceAccount
|
kind: ServiceAccount
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.apprepository.serviceAccountName" . }}
|
name: {{ template "kubeapps.apprepository.serviceAccountName" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.apprepository.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.apprepository.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ apiVersion: v1
|
|||||||
kind: ConfigMap
|
kind: ConfigMap
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.dashboard-config.fullname" . }}
|
name: {{ template "kubeapps.dashboard-config.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.dashboard.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.dashboard.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -3,12 +3,12 @@ Copyright VMware, Inc.
|
|||||||
SPDX-License-Identifier: APACHE-2.0
|
SPDX-License-Identifier: APACHE-2.0
|
||||||
*/}}
|
*/}}
|
||||||
|
|
||||||
{{- if .Values.dashboard.enabled -}}
|
{{- if .Values.dashboard.enabled }}
|
||||||
apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
|
apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
|
||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.dashboard.fullname" . }}
|
name: {{ template "kubeapps.dashboard.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.dashboard.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.dashboard.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -0,0 +1,71 @@
|
|||||||
|
{{- /*
|
||||||
|
Copyright VMware, Inc.
|
||||||
|
SPDX-License-Identifier: APACHE-2.0
|
||||||
|
*/}}
|
||||||
|
|
||||||
|
{{- if and .Values.dashboard.enabled .Values.dashboard.networkPolicy.enabled }}
|
||||||
|
kind: NetworkPolicy
|
||||||
|
apiVersion: {{ include "common.capabilities.networkPolicy.apiVersion" . }}
|
||||||
|
metadata:
|
||||||
|
name: {{ include "kubeapps.dashboard.fullname" . }}
|
||||||
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.dashboard.image "chart" .Chart ) ) }}
|
||||||
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
app.kubernetes.io/component: dashboard
|
||||||
|
{{- if .Values.commonAnnotations }}
|
||||||
|
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
policyTypes:
|
||||||
|
- Ingress
|
||||||
|
- Egress
|
||||||
|
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.dashboard.podLabels .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
|
podSelector:
|
||||||
|
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
|
||||||
|
app.kubernetes.io/component: dashboard
|
||||||
|
{{- if .Values.dashboard.networkPolicy.allowExternalEgress }}
|
||||||
|
egress:
|
||||||
|
- {}
|
||||||
|
{{- else }}
|
||||||
|
egress:
|
||||||
|
# Allow dns resolution
|
||||||
|
- ports:
|
||||||
|
- port: 53
|
||||||
|
protocol: UDP
|
||||||
|
- port: 53
|
||||||
|
protocol: TCP
|
||||||
|
{{- range $port := .Values.dashboard.networkPolicy.kubeAPIServerPorts }}
|
||||||
|
- port: {{ $port }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.dashboard.networkPolicy.extraEgress }}
|
||||||
|
{{- include "common.tplvalues.render" ( dict "value" .Values.dashboard.networkPolicy.extraEgress "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
ingress:
|
||||||
|
# Allow inbound connections
|
||||||
|
- ports:
|
||||||
|
- port: {{ .Values.dashboard.containerPorts.http }}
|
||||||
|
{{- if not .Values.dashboard.networkPolicy.allowExternal }}
|
||||||
|
from:
|
||||||
|
- podSelector:
|
||||||
|
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 14 }}
|
||||||
|
{{- if .Values.dashboard.networkPolicy.ingressNSMatchLabels }}
|
||||||
|
- namespaceSelector:
|
||||||
|
matchLabels:
|
||||||
|
{{- range $key, $value := .Values.dashboard.networkPolicy.ingressNSMatchLabels }}
|
||||||
|
{{ $key | quote }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.dashboard.networkPolicy.ingressNSPodMatchLabels }}
|
||||||
|
podSelector:
|
||||||
|
matchLabels:
|
||||||
|
{{- range $key, $value := .Values.dashboard.networkPolicy.ingressNSPodMatchLabels }}
|
||||||
|
{{ $key | quote }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.dashboard.networkPolicy.extraIngress }}
|
||||||
|
{{- include "common.tplvalues.render" ( dict "value" .Values.dashboard.networkPolicy.extraIngress "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -8,7 +8,7 @@ apiVersion: v1
|
|||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.dashboard.fullname" . }}
|
name: {{ template "kubeapps.dashboard.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.dashboard.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.dashboard.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ apiVersion: v1
|
|||||||
kind: ConfigMap
|
kind: ConfigMap
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.frontend-config.fullname" . }}
|
name: {{ template "kubeapps.frontend-config.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.frontend.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.frontend.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
|
|||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "common.names.fullname" . }}
|
name: {{ template "common.names.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.frontend.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.frontend.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -0,0 +1,77 @@
|
|||||||
|
{{- /*
|
||||||
|
Copyright VMware, Inc.
|
||||||
|
SPDX-License-Identifier: APACHE-2.0
|
||||||
|
*/}}
|
||||||
|
|
||||||
|
{{- if .Values.frontend.networkPolicy.enabled }}
|
||||||
|
kind: NetworkPolicy
|
||||||
|
apiVersion: {{ include "common.capabilities.networkPolicy.apiVersion" . }}
|
||||||
|
metadata:
|
||||||
|
name: {{ include "common.names.fullname" . }}
|
||||||
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.frontend.image "chart" .Chart ) ) }}
|
||||||
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
app.kubernetes.io/component: frontend
|
||||||
|
{{- if .Values.commonAnnotations }}
|
||||||
|
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
policyTypes:
|
||||||
|
- Ingress
|
||||||
|
- Egress
|
||||||
|
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.frontend.podLabels .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
|
podSelector:
|
||||||
|
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
|
||||||
|
app.kubernetes.io/component: frontend
|
||||||
|
{{- if .Values.frontend.networkPolicy.allowExternalEgress }}
|
||||||
|
egress:
|
||||||
|
- {}
|
||||||
|
{{- else }}
|
||||||
|
egress:
|
||||||
|
# Allow dns resolution
|
||||||
|
- ports:
|
||||||
|
- port: 53
|
||||||
|
protocol: UDP
|
||||||
|
- port: 53
|
||||||
|
protocol: TCP
|
||||||
|
{{- range $port := .Values.frontend.networkPolicy.kubeAPIServerPorts }}
|
||||||
|
- port: {{ $port }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.frontend.networkPolicy.extraEgress }}
|
||||||
|
{{- include "common.tplvalues.render" ( dict "value" .Values.frontend.networkPolicy.extraEgress "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
ingress:
|
||||||
|
# Allow inbound connections
|
||||||
|
- ports:
|
||||||
|
- port: {{ .Values.frontend.containerPorts.http }}
|
||||||
|
{{- if and .Values.authProxy.enabled (not .Values.authProxy.external) }}
|
||||||
|
- port: {{ .Values.authProxy.containerPorts.proxy }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.pinnipedProxy.enabled }}
|
||||||
|
- port: {{ .Values.pinnipedProxy.containerPorts.pinnipedProxy }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if not .Values.frontend.networkPolicy.allowExternal }}
|
||||||
|
from:
|
||||||
|
- podSelector:
|
||||||
|
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 14 }}
|
||||||
|
{{- if .Values.frontend.networkPolicy.ingressNSMatchLabels }}
|
||||||
|
- namespaceSelector:
|
||||||
|
matchLabels:
|
||||||
|
{{- range $key, $value := .Values.frontend.networkPolicy.ingressNSMatchLabels }}
|
||||||
|
{{ $key | quote }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.frontend.networkPolicy.ingressNSPodMatchLabels }}
|
||||||
|
podSelector:
|
||||||
|
matchLabels:
|
||||||
|
{{- range $key, $value := .Values.frontend.networkPolicy.ingressNSPodMatchLabels }}
|
||||||
|
{{ $key | quote }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.frontend.networkPolicy.extraIngress }}
|
||||||
|
{{- include "common.tplvalues.render" ( dict "value" .Values.frontend.networkPolicy.extraIngress "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -8,7 +8,7 @@ apiVersion: v1
|
|||||||
kind: Secret
|
kind: Secret
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.oauth2_proxy-secret.name" . }}
|
name: {{ template "kubeapps.oauth2_proxy-secret.name" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.frontend.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.frontend.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ apiVersion: v1
|
|||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "common.names.fullname" . }}
|
name: {{ template "common.names.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.frontend.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.frontend.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
@@ -64,7 +64,7 @@ apiVersion: v1
|
|||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.pinniped-proxy.fullname" . }}
|
name: {{ template "kubeapps.pinniped-proxy.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||||
app.kubernetes.io/component: frontend
|
app.kubernetes.io/component: frontend
|
||||||
{{- if or .Values.pinnipedProxy.service.annotations .Values.commonAnnotations }}
|
{{- if or .Values.pinnipedProxy.service.annotations .Values.commonAnnotations }}
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }}
|
|||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "common.names.fullname" . }}-http-api
|
name: {{ template "common.names.fullname" . }}-http-api
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||||
{{- if or .Values.ingress.annotations .Values.commonAnnotations }}
|
{{- if or .Values.ingress.annotations .Values.commonAnnotations }}
|
||||||
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.ingress.annotations .Values.commonAnnotations ) "context" . ) }}
|
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.ingress.annotations .Values.commonAnnotations ) "context" . ) }}
|
||||||
@@ -75,7 +75,7 @@ apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }}
|
|||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "common.names.fullname" . }}
|
name: {{ template "common.names.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||||
{{- if or .Values.featureFlags.apiOnly.grpc.annotations .Values.ingress.annotations .Values.commonAnnotations }}
|
{{- if or .Values.featureFlags.apiOnly.grpc.annotations .Values.ingress.annotations .Values.commonAnnotations }}
|
||||||
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.featureFlags.apiOnly.grpc.annotations .Values.ingress.annotations .Values.commonAnnotations ) "context" . ) }}
|
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.featureFlags.apiOnly.grpc.annotations .Values.ingress.annotations .Values.commonAnnotations ) "context" . ) }}
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ apiVersion: {{ include "common.capabilities.ingress.apiVersion" . }}
|
|||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "common.names.fullname" . }}
|
name: {{ template "common.names.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||||
{{- if or .Values.ingress.annotations .Values.commonAnnotations }}
|
{{- if or .Values.ingress.annotations .Values.commonAnnotations }}
|
||||||
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.ingress.annotations .Values.commonAnnotations ) "context" . ) }}
|
{{- $annotations := include "common.tplvalues.merge" ( dict "values" ( list .Values.ingress.annotations .Values.commonAnnotations ) "context" . ) }}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ apiVersion: v1
|
|||||||
kind: ConfigMap
|
kind: ConfigMap
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ printf "%s-configmap" (include "kubeapps.kubeappsapis.fullname" .) }}
|
name: {{ printf "%s-configmap" (include "kubeapps.kubeappsapis.fullname" .) }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.kubeappsapis.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.kubeappsapis.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ apiVersion: {{ include "common.capabilities.deployment.apiVersion" . }}
|
|||||||
kind: Deployment
|
kind: Deployment
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.kubeappsapis.fullname" . }}
|
name: {{ template "kubeapps.kubeappsapis.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.kubeappsapis.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.kubeappsapis.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -0,0 +1,74 @@
|
|||||||
|
{{- /*
|
||||||
|
Copyright VMware, Inc.
|
||||||
|
SPDX-License-Identifier: APACHE-2.0
|
||||||
|
*/}}
|
||||||
|
|
||||||
|
{{- if .Values.kubeappsapis.networkPolicy.enabled }}
|
||||||
|
kind: NetworkPolicy
|
||||||
|
apiVersion: {{ include "common.capabilities.networkPolicy.apiVersion" . }}
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubeapps.kubeappsapis.fullname" . }}
|
||||||
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.kubeappsapis.image "chart" .Chart ) ) }}
|
||||||
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
app.kubernetes.io/component: kubeappsapis
|
||||||
|
{{- if .Values.commonAnnotations }}
|
||||||
|
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
policyTypes:
|
||||||
|
- Ingress
|
||||||
|
- Egress
|
||||||
|
{{- $podLabels := include "common.tplvalues.merge" ( dict "values" ( list .Values.kubeappsapis.podLabels .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
|
podSelector:
|
||||||
|
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" $podLabels "context" $ ) | nindent 6 }}
|
||||||
|
app.kubernetes.io/component: kubeappsapis
|
||||||
|
{{- if .Values.kubeappsapis.networkPolicy.allowExternalEgress }}
|
||||||
|
egress:
|
||||||
|
- {}
|
||||||
|
{{- else }}
|
||||||
|
egress:
|
||||||
|
# Allow dns resolution
|
||||||
|
- ports:
|
||||||
|
- port: 53
|
||||||
|
protocol: UDP
|
||||||
|
- port: 53
|
||||||
|
protocol: TCP
|
||||||
|
{{- range $port := .Values.kubeappsapis.networkPolicy.kubeAPIServerPorts }}
|
||||||
|
- port: {{ $port }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.kubeappsapis.networkPolicy.extraEgress }}
|
||||||
|
{{- include "common.tplvalues.render" ( dict "value" .Values.kubeappsapis.networkPolicy.extraEgress "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
ingress:
|
||||||
|
# Allow inbound connections
|
||||||
|
- ports:
|
||||||
|
- port: {{ .Values.kubeappsapis.containerPorts.http }}
|
||||||
|
{{- if .Values.ociCatalog.enabled }}
|
||||||
|
- port: {{ .Values.ociCatalog.containerPorts.grpc }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if not .Values.kubeappsapis.networkPolicy.allowExternal }}
|
||||||
|
from:
|
||||||
|
- podSelector:
|
||||||
|
matchLabels: {{- include "common.labels.matchLabels" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 14 }}
|
||||||
|
{{- if .Values.kubeappsapis.networkPolicy.ingressNSMatchLabels }}
|
||||||
|
- namespaceSelector:
|
||||||
|
matchLabels:
|
||||||
|
{{- range $key, $value := .Values.kubeappsapis.networkPolicy.ingressNSMatchLabels }}
|
||||||
|
{{ $key | quote }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.kubeappsapis.networkPolicy.ingressNSPodMatchLabels }}
|
||||||
|
podSelector:
|
||||||
|
matchLabels:
|
||||||
|
{{- range $key, $value := .Values.kubeappsapis.networkPolicy.ingressNSPodMatchLabels }}
|
||||||
|
{{ $key | quote }}: {{ $value | quote }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.kubeappsapis.networkPolicy.extraIngress }}
|
||||||
|
{{- include "common.tplvalues.render" ( dict "value" .Values.kubeappsapis.networkPolicy.extraIngress "context" $ ) | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -53,6 +53,6 @@ roleRef:
|
|||||||
subjects:
|
subjects:
|
||||||
- kind: ServiceAccount
|
- kind: ServiceAccount
|
||||||
name: {{ template "kubeapps.kubeappsapis.serviceAccountName" . }}
|
name: {{ template "kubeapps.kubeappsapis.serviceAccountName" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ apiVersion: v1
|
|||||||
kind: Service
|
kind: Service
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.kubeappsapis.fullname" . }}
|
name: {{ template "kubeapps.kubeappsapis.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.kubeappsapis.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.kubeappsapis.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ apiVersion: v1
|
|||||||
kind: ServiceAccount
|
kind: ServiceAccount
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.kubeappsapis.serviceAccountName" . }}
|
name: {{ template "kubeapps.kubeappsapis.serviceAccountName" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.kubeappsapis.image "chart" .Chart ) ) }}
|
{{- $versionLabel := dict "app.kubernetes.io/version" ( include "common.images.version" ( dict "imageRoot" .Values.kubeappsapis.image "chart" .Chart ) ) }}
|
||||||
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
{{- $labels := include "common.tplvalues.merge" ( dict "values" ( list .Values.commonLabels $versionLabel ) "context" . ) }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" $labels "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ apiVersion: v1
|
|||||||
kind: ConfigMap
|
kind: ConfigMap
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ template "kubeapps.clusters-config.fullname" . }}
|
name: {{ template "kubeapps.clusters-config.fullname" . }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||||
{{- if .Values.commonAnnotations }}
|
{{- if .Values.commonAnnotations }}
|
||||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ apiVersion: v1
|
|||||||
kind: Secret
|
kind: Secret
|
||||||
metadata:
|
metadata:
|
||||||
name: {{ $secretName }}
|
name: {{ $secretName }}
|
||||||
namespace: {{ .Release.Namespace | quote }}
|
namespace: {{ include "common.names.namespace" . | quote }}
|
||||||
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
labels: {{- include "common.labels.standard" ( dict "customLabels" .Values.commonLabels "context" $ ) | nindent 4 }}
|
||||||
{{- if .Values.commonAnnotations }}
|
{{- if .Values.commonAnnotations }}
|
||||||
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
annotations: {{- include "common.tplvalues.render" ( dict "value" .Values.commonAnnotations "context" $ ) | nindent 4 }}
|
||||||
|
|||||||
@@ -26,7 +26,7 @@ global:
|
|||||||
openshift:
|
openshift:
|
||||||
## @param global.compatibility.openshift.adaptSecurityContext Adapt the securityContext sections of the deployment to make them compatible with Openshift restricted-v2 SCC: remove runAsUser, runAsGroup and fsGroup and let the platform use their allowed default IDs. Possible values: auto (apply if the detected running cluster is Openshift), force (perform the adaptation always), disabled (do not perform adaptation)
|
## @param global.compatibility.openshift.adaptSecurityContext Adapt the securityContext sections of the deployment to make them compatible with Openshift restricted-v2 SCC: remove runAsUser, runAsGroup and fsGroup and let the platform use their allowed default IDs. Possible values: auto (apply if the detected running cluster is Openshift), force (perform the adaptation always), disabled (do not perform adaptation)
|
||||||
##
|
##
|
||||||
adaptSecurityContext: disabled
|
adaptSecurityContext: auto
|
||||||
## @section Common parameters
|
## @section Common parameters
|
||||||
|
|
||||||
## @param kubeVersion Override Kubernetes version
|
## @param kubeVersion Override Kubernetes version
|
||||||
@@ -211,7 +211,7 @@ frontend:
|
|||||||
image:
|
image:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: bitnami/nginx
|
repository: bitnami/nginx
|
||||||
tag: 1.25.4-debian-12-r3
|
tag: 1.25.4-debian-12-r7
|
||||||
digest: ""
|
digest: ""
|
||||||
## Specify a imagePullPolicy
|
## Specify a imagePullPolicy
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||||
@@ -258,22 +258,21 @@ frontend:
|
|||||||
type: RollingUpdate
|
type: RollingUpdate
|
||||||
## Frontend containers' resource requests and limits
|
## Frontend containers' resource requests and limits
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
||||||
## @param frontend.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if frontend.resources is set (frontend.resources is recommended for production).
|
## @param frontend.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if frontend.resources is set (frontend.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "micro"
|
||||||
## @param frontend.resources.limits.cpu The CPU limits for the NGINX container
|
## @param frontend.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## @param frontend.resources.limits.memory The memory limits for the NGINX container
|
## Example:
|
||||||
## @param frontend.resources.requests.cpu The requested CPU for the NGINX container
|
## resources:
|
||||||
## @param frontend.resources.requests.memory The requested memory for the NGINX container
|
## requests:
|
||||||
|
## cpu: 2
|
||||||
|
## memory: 512Mi
|
||||||
|
## limits:
|
||||||
|
## cpu: 3
|
||||||
|
## memory: 1024Mi
|
||||||
##
|
##
|
||||||
resources:
|
resources: {}
|
||||||
limits:
|
|
||||||
cpu: 250m
|
|
||||||
memory: 128Mi
|
|
||||||
requests:
|
|
||||||
cpu: 25m
|
|
||||||
memory: 32Mi
|
|
||||||
## @param frontend.extraEnvVars Array with extra environment variables to add to the NGINX container
|
## @param frontend.extraEnvVars Array with extra environment variables to add to the NGINX container
|
||||||
## e.g:
|
## e.g:
|
||||||
## extraEnvVars:
|
## extraEnvVars:
|
||||||
@@ -322,10 +321,10 @@ frontend:
|
|||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: null
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
privileged: false
|
privileged: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
drop: ["ALL"]
|
drop: ["ALL"]
|
||||||
@@ -537,6 +536,64 @@ frontend:
|
|||||||
## timeoutSeconds: 300
|
## timeoutSeconds: 300
|
||||||
##
|
##
|
||||||
sessionAffinityConfig: {}
|
sessionAffinityConfig: {}
|
||||||
|
## Network Policies
|
||||||
|
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
|
||||||
|
##
|
||||||
|
networkPolicy:
|
||||||
|
## @param frontend.networkPolicy.enabled Specifies whether a NetworkPolicy should be created
|
||||||
|
##
|
||||||
|
enabled: true
|
||||||
|
## @param frontend.networkPolicy.allowExternal Don't require server label for connections
|
||||||
|
## The Policy model to apply. When set to false, only pods with the correct
|
||||||
|
## server label will have network access to the ports server is listening
|
||||||
|
## on. When true, server will accept connections from any source
|
||||||
|
## (with the correct destination port).
|
||||||
|
##
|
||||||
|
allowExternal: true
|
||||||
|
## @param frontend.networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations.
|
||||||
|
##
|
||||||
|
allowExternalEgress: true
|
||||||
|
## @param frontend.networkPolicy.kubeAPIServerPorts [array] List of possible endpoints to kube-apiserver (limit to your cluster settings to increase security)
|
||||||
|
##
|
||||||
|
kubeAPIServerPorts: [443, 6443, 8443]
|
||||||
|
## @param frontend.networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolice
|
||||||
|
## e.g:
|
||||||
|
## extraIngress:
|
||||||
|
## - ports:
|
||||||
|
## - port: 1234
|
||||||
|
## from:
|
||||||
|
## - podSelector:
|
||||||
|
## - matchLabels:
|
||||||
|
## - role: frontend
|
||||||
|
## - podSelector:
|
||||||
|
## - matchExpressions:
|
||||||
|
## - key: role
|
||||||
|
## operator: In
|
||||||
|
## values:
|
||||||
|
## - frontend
|
||||||
|
extraIngress: []
|
||||||
|
## @param frontend.networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy
|
||||||
|
## e.g:
|
||||||
|
## extraEgress:
|
||||||
|
## - ports:
|
||||||
|
## - port: 1234
|
||||||
|
## to:
|
||||||
|
## - podSelector:
|
||||||
|
## - matchLabels:
|
||||||
|
## - role: frontend
|
||||||
|
## - podSelector:
|
||||||
|
## - matchExpressions:
|
||||||
|
## - key: role
|
||||||
|
## operator: In
|
||||||
|
## values:
|
||||||
|
## - frontend
|
||||||
|
##
|
||||||
|
extraEgress: []
|
||||||
|
## @param frontend.networkPolicy.ingressNSMatchLabels [object] Labels to match to allow traffic from other namespaces
|
||||||
|
## @param frontend.networkPolicy.ingressNSPodMatchLabels [object] Pod labels to match to allow traffic from other namespaces
|
||||||
|
##
|
||||||
|
ingressNSMatchLabels: {}
|
||||||
|
ingressNSPodMatchLabels: {}
|
||||||
## @section Dashboard parameters
|
## @section Dashboard parameters
|
||||||
|
|
||||||
## Dashboard parameters
|
## Dashboard parameters
|
||||||
@@ -558,7 +615,7 @@ dashboard:
|
|||||||
image:
|
image:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: bitnami/kubeapps-dashboard
|
repository: bitnami/kubeapps-dashboard
|
||||||
tag: 2.9.0-debian-12-r18
|
tag: 2.10.0-debian-12-r0
|
||||||
digest: ""
|
digest: ""
|
||||||
## Specify a imagePullPolicy
|
## Specify a imagePullPolicy
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||||
@@ -654,22 +711,21 @@ dashboard:
|
|||||||
http: 8080
|
http: 8080
|
||||||
## Dashboard containers' resource requests and limits
|
## Dashboard containers' resource requests and limits
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
||||||
## @param dashboard.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if dashboard.resources is set (dashboard.resources is recommended for production).
|
## @param dashboard.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if dashboard.resources is set (dashboard.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "micro"
|
||||||
## @param dashboard.resources.limits.cpu The CPU limits for the Dashboard container
|
## @param dashboard.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## @param dashboard.resources.limits.memory The memory limits for the Dashboard container
|
## Example:
|
||||||
## @param dashboard.resources.requests.cpu The requested CPU for the Dashboard container
|
## resources:
|
||||||
## @param dashboard.resources.requests.memory The requested memory for the Dashboard container
|
## requests:
|
||||||
|
## cpu: 2
|
||||||
|
## memory: 512Mi
|
||||||
|
## limits:
|
||||||
|
## cpu: 3
|
||||||
|
## memory: 1024Mi
|
||||||
##
|
##
|
||||||
resources:
|
resources: {}
|
||||||
limits:
|
|
||||||
cpu: 250m
|
|
||||||
memory: 128Mi
|
|
||||||
requests:
|
|
||||||
cpu: 25m
|
|
||||||
memory: 32Mi
|
|
||||||
## Configure Pods Security Context
|
## Configure Pods Security Context
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
|
||||||
## @param dashboard.podSecurityContext.enabled Enabled Dashboard pods' Security Context
|
## @param dashboard.podSecurityContext.enabled Enabled Dashboard pods' Security Context
|
||||||
@@ -701,10 +757,10 @@ dashboard:
|
|||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: null
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
privileged: false
|
privileged: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
drop: ["ALL"]
|
drop: ["ALL"]
|
||||||
@@ -876,6 +932,64 @@ dashboard:
|
|||||||
## @param dashboard.service.annotations Additional custom annotations for Dashboard service
|
## @param dashboard.service.annotations Additional custom annotations for Dashboard service
|
||||||
##
|
##
|
||||||
annotations: {}
|
annotations: {}
|
||||||
|
## Network Policies
|
||||||
|
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
|
||||||
|
##
|
||||||
|
networkPolicy:
|
||||||
|
## @param dashboard.networkPolicy.enabled Specifies whether a NetworkPolicy should be created
|
||||||
|
##
|
||||||
|
enabled: true
|
||||||
|
## @param dashboard.networkPolicy.allowExternal Don't require server label for connections
|
||||||
|
## The Policy model to apply. When set to false, only pods with the correct
|
||||||
|
## server label will have network access to the ports server is listening
|
||||||
|
## on. When true, server will accept connections from any source
|
||||||
|
## (with the correct destination port).
|
||||||
|
##
|
||||||
|
allowExternal: true
|
||||||
|
## @param dashboard.networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations.
|
||||||
|
##
|
||||||
|
allowExternalEgress: true
|
||||||
|
## @param dashboard.networkPolicy.kubeAPIServerPorts [array] List of possible endpoints to kube-apiserver (limit to your cluster settings to increase security)
|
||||||
|
##
|
||||||
|
kubeAPIServerPorts: [443, 6443, 8443]
|
||||||
|
## @param dashboard.networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolice
|
||||||
|
## e.g:
|
||||||
|
## extraIngress:
|
||||||
|
## - ports:
|
||||||
|
## - port: 1234
|
||||||
|
## from:
|
||||||
|
## - podSelector:
|
||||||
|
## - matchLabels:
|
||||||
|
## - role: frontend
|
||||||
|
## - podSelector:
|
||||||
|
## - matchExpressions:
|
||||||
|
## - key: role
|
||||||
|
## operator: In
|
||||||
|
## values:
|
||||||
|
## - frontend
|
||||||
|
extraIngress: []
|
||||||
|
## @param dashboard.networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy
|
||||||
|
## e.g:
|
||||||
|
## extraEgress:
|
||||||
|
## - ports:
|
||||||
|
## - port: 1234
|
||||||
|
## to:
|
||||||
|
## - podSelector:
|
||||||
|
## - matchLabels:
|
||||||
|
## - role: frontend
|
||||||
|
## - podSelector:
|
||||||
|
## - matchExpressions:
|
||||||
|
## - key: role
|
||||||
|
## operator: In
|
||||||
|
## values:
|
||||||
|
## - frontend
|
||||||
|
##
|
||||||
|
extraEgress: []
|
||||||
|
## @param dashboard.networkPolicy.ingressNSMatchLabels [object] Labels to match to allow traffic from other namespaces
|
||||||
|
## @param dashboard.networkPolicy.ingressNSPodMatchLabels [object] Pod labels to match to allow traffic from other namespaces
|
||||||
|
##
|
||||||
|
ingressNSMatchLabels: {}
|
||||||
|
ingressNSPodMatchLabels: {}
|
||||||
## @section AppRepository Controller parameters
|
## @section AppRepository Controller parameters
|
||||||
|
|
||||||
## AppRepository Controller parameters
|
## AppRepository Controller parameters
|
||||||
@@ -893,7 +1007,7 @@ apprepository:
|
|||||||
image:
|
image:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: bitnami/kubeapps-apprepository-controller
|
repository: bitnami/kubeapps-apprepository-controller
|
||||||
tag: 2.9.0-debian-12-r18
|
tag: 2.10.0-debian-12-r0
|
||||||
digest: ""
|
digest: ""
|
||||||
## Specify a imagePullPolicy
|
## Specify a imagePullPolicy
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||||
@@ -920,7 +1034,7 @@ apprepository:
|
|||||||
syncImage:
|
syncImage:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: bitnami/kubeapps-asset-syncer
|
repository: bitnami/kubeapps-asset-syncer
|
||||||
tag: 2.9.0-debian-12-r19
|
tag: 2.10.0-debian-12-r0
|
||||||
digest: ""
|
digest: ""
|
||||||
## Specify a imagePullPolicy
|
## Specify a imagePullPolicy
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||||
@@ -1029,22 +1143,21 @@ apprepository:
|
|||||||
type: RollingUpdate
|
type: RollingUpdate
|
||||||
## AppRepository Controller containers' resource requests and limits
|
## AppRepository Controller containers' resource requests and limits
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
||||||
## @param apprepository.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if apprepository.resources is set (apprepository.resources is recommended for production).
|
## @param apprepository.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if apprepository.resources is set (apprepository.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "micro"
|
||||||
## @param apprepository.resources.limits.cpu The CPU limits for the AppRepository Controller container
|
## @param apprepository.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## @param apprepository.resources.limits.memory The memory limits for the AppRepository Controller container
|
## Example:
|
||||||
## @param apprepository.resources.requests.cpu The requested CPU for the AppRepository Controller container
|
## resources:
|
||||||
## @param apprepository.resources.requests.memory The requested memory for the AppRepository Controller container
|
## requests:
|
||||||
|
## cpu: 2
|
||||||
|
## memory: 512Mi
|
||||||
|
## limits:
|
||||||
|
## cpu: 3
|
||||||
|
## memory: 1024Mi
|
||||||
##
|
##
|
||||||
resources:
|
resources: {}
|
||||||
limits:
|
|
||||||
cpu: 250m
|
|
||||||
memory: 128Mi
|
|
||||||
requests:
|
|
||||||
cpu: 25m
|
|
||||||
memory: 32Mi
|
|
||||||
## Configure Pods Security Context
|
## Configure Pods Security Context
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
|
||||||
## @param apprepository.podSecurityContext.enabled Enabled AppRepository Controller pods' Security Context
|
## @param apprepository.podSecurityContext.enabled Enabled AppRepository Controller pods' Security Context
|
||||||
@@ -1076,10 +1189,10 @@ apprepository:
|
|||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: null
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
privileged: false
|
privileged: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
drop: ["ALL"]
|
drop: ["ALL"]
|
||||||
@@ -1199,6 +1312,52 @@ apprepository:
|
|||||||
## command: ['sh', '-c', 'echo "hello world"']
|
## command: ['sh', '-c', 'echo "hello world"']
|
||||||
##
|
##
|
||||||
initContainers: []
|
initContainers: []
|
||||||
|
## Network Policies
|
||||||
|
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
|
||||||
|
##
|
||||||
|
networkPolicy:
|
||||||
|
## @param apprepository.networkPolicy.enabled Specifies whether a NetworkPolicy should be created
|
||||||
|
##
|
||||||
|
enabled: true
|
||||||
|
## @param apprepository.networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations.
|
||||||
|
##
|
||||||
|
allowExternalEgress: true
|
||||||
|
## @param apprepository.networkPolicy.kubeAPIServerPorts [array] List of possible endpoints to kube-apiserver (limit to your cluster settings to increase security)
|
||||||
|
##
|
||||||
|
kubeAPIServerPorts: [443, 6443, 8443]
|
||||||
|
## @param apprepository.networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolice
|
||||||
|
## e.g:
|
||||||
|
## extraIngress:
|
||||||
|
## - ports:
|
||||||
|
## - port: 1234
|
||||||
|
## from:
|
||||||
|
## - podSelector:
|
||||||
|
## - matchLabels:
|
||||||
|
## - role: frontend
|
||||||
|
## - podSelector:
|
||||||
|
## - matchExpressions:
|
||||||
|
## - key: role
|
||||||
|
## operator: In
|
||||||
|
## values:
|
||||||
|
## - frontend
|
||||||
|
extraIngress: []
|
||||||
|
## @param apprepository.networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy
|
||||||
|
## e.g:
|
||||||
|
## extraEgress:
|
||||||
|
## - ports:
|
||||||
|
## - port: 1234
|
||||||
|
## to:
|
||||||
|
## - podSelector:
|
||||||
|
## - matchLabels:
|
||||||
|
## - role: frontend
|
||||||
|
## - podSelector:
|
||||||
|
## - matchExpressions:
|
||||||
|
## - key: role
|
||||||
|
## operator: In
|
||||||
|
## values:
|
||||||
|
## - frontend
|
||||||
|
##
|
||||||
|
extraEgress: []
|
||||||
## AppRepository Controller Service Account
|
## AppRepository Controller Service Account
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
|
||||||
## @param apprepository.serviceAccount.create Specifies whether a ServiceAccount should be created
|
## @param apprepository.serviceAccount.create Specifies whether a ServiceAccount should be created
|
||||||
@@ -1232,7 +1391,7 @@ authProxy:
|
|||||||
image:
|
image:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: bitnami/oauth2-proxy
|
repository: bitnami/oauth2-proxy
|
||||||
tag: 7.6.0-debian-12-r4
|
tag: 7.6.0-debian-12-r7
|
||||||
digest: ""
|
digest: ""
|
||||||
## Specify a imagePullPolicy
|
## Specify a imagePullPolicy
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||||
@@ -1342,10 +1501,10 @@ authProxy:
|
|||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: null
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
privileged: false
|
privileged: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
drop: ["ALL"]
|
drop: ["ALL"]
|
||||||
@@ -1353,22 +1512,21 @@ authProxy:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
## OAuth2 Proxy containers' resource requests and limits
|
## OAuth2 Proxy containers' resource requests and limits
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
||||||
## @param authProxy.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if authProxy.resources is set (authProxy.resources is recommended for production).
|
## @param authProxy.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if authProxy.resources is set (authProxy.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "micro"
|
||||||
## @param authProxy.resources.limits.cpu The CPU limits for the OAuth2 Proxy container
|
## @param authProxy.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## @param authProxy.resources.limits.memory The memory limits for the OAuth2 Proxy container
|
## Example:
|
||||||
## @param authProxy.resources.requests.cpu The requested CPU for the OAuth2 Proxy container
|
## resources:
|
||||||
## @param authProxy.resources.requests.memory The requested memory for the OAuth2 Proxy container
|
## requests:
|
||||||
|
## cpu: 2
|
||||||
|
## memory: 512Mi
|
||||||
|
## limits:
|
||||||
|
## cpu: 3
|
||||||
|
## memory: 1024Mi
|
||||||
##
|
##
|
||||||
resources:
|
resources: {}
|
||||||
limits:
|
|
||||||
cpu: 250m
|
|
||||||
memory: 128Mi
|
|
||||||
requests:
|
|
||||||
cpu: 25m
|
|
||||||
memory: 32Mi
|
|
||||||
## @section Pinniped Proxy parameters
|
## @section Pinniped Proxy parameters
|
||||||
|
|
||||||
## Pinniped Proxy configuration for converting user OIDC tokens to k8s client authorization certs
|
## Pinniped Proxy configuration for converting user OIDC tokens to k8s client authorization certs
|
||||||
@@ -1389,7 +1547,7 @@ pinnipedProxy:
|
|||||||
image:
|
image:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: bitnami/kubeapps-pinniped-proxy
|
repository: bitnami/kubeapps-pinniped-proxy
|
||||||
tag: 2.9.0-debian-12-r17
|
tag: 2.10.0-debian-12-r0
|
||||||
digest: ""
|
digest: ""
|
||||||
## Specify a imagePullPolicy
|
## Specify a imagePullPolicy
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||||
@@ -1473,10 +1631,10 @@ pinnipedProxy:
|
|||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: null
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
privileged: false
|
privileged: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
drop: ["ALL"]
|
drop: ["ALL"]
|
||||||
@@ -1484,24 +1642,21 @@ pinnipedProxy:
|
|||||||
type: "RuntimeDefault"
|
type: "RuntimeDefault"
|
||||||
## Pinniped Proxy containers' resource requests and limits
|
## Pinniped Proxy containers' resource requests and limits
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
||||||
## @param pinnipedProxy.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if pinnipedProxy.resources is set (pinnipedProxy.resources is recommended for production).
|
## @param pinnipedProxy.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if pinnipedProxy.resources is set (pinnipedProxy.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "micro"
|
||||||
## Pinniped Proxy containers' resource requests and limits
|
## @param pinnipedProxy.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
## Example:
|
||||||
## @param pinnipedProxy.resources.limits.cpu The CPU limits for the Pinniped Proxy container
|
## resources:
|
||||||
## @param pinnipedProxy.resources.limits.memory The memory limits for the Pinniped Proxy container
|
## requests:
|
||||||
## @param pinnipedProxy.resources.requests.cpu The requested CPU for the Pinniped Proxy container
|
## cpu: 2
|
||||||
## @param pinnipedProxy.resources.requests.memory The requested memory for the Pinniped Proxy container
|
## memory: 512Mi
|
||||||
|
## limits:
|
||||||
|
## cpu: 3
|
||||||
|
## memory: 1024Mi
|
||||||
##
|
##
|
||||||
resources:
|
resources: {}
|
||||||
limits:
|
|
||||||
cpu: 250m
|
|
||||||
memory: 128Mi
|
|
||||||
requests:
|
|
||||||
cpu: 25m
|
|
||||||
memory: 32Mi
|
|
||||||
## Pinniped Proxy service parameters
|
## Pinniped Proxy service parameters
|
||||||
##
|
##
|
||||||
service:
|
service:
|
||||||
@@ -1609,19 +1764,22 @@ postgresql:
|
|||||||
enabled: false
|
enabled: false
|
||||||
## PostgreSQL containers' resource requests and limits
|
## PostgreSQL containers' resource requests and limits
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
||||||
## @param postgresql.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if postgresql.resources is set (postgresql.resources is recommended for production).
|
## @param postgresql.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if postgresql.resources is set (postgresql.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "micro"
|
||||||
## @param postgresql.resources.limits The resources limits for the PostgreSQL container
|
## @param postgresql.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## @param postgresql.resources.requests.cpu The requested CPU for the PostgreSQL container
|
## Example:
|
||||||
## @param postgresql.resources.requests.memory The requested memory for the PostgreSQL container
|
## resources:
|
||||||
|
## requests:
|
||||||
|
## cpu: 2
|
||||||
|
## memory: 512Mi
|
||||||
|
## limits:
|
||||||
|
## cpu: 3
|
||||||
|
## memory: 1024Mi
|
||||||
##
|
##
|
||||||
resources:
|
##
|
||||||
limits: {}
|
resources: {}
|
||||||
requests:
|
|
||||||
memory: 256Mi
|
|
||||||
cpu: 250m
|
|
||||||
## @section kubeappsapis parameters
|
## @section kubeappsapis parameters
|
||||||
kubeappsapis:
|
kubeappsapis:
|
||||||
## @param kubeappsapis.enabledPlugins Manually override which plugins are enabled for the Kubeapps-APIs service
|
## @param kubeappsapis.enabledPlugins Manually override which plugins are enabled for the Kubeapps-APIs service
|
||||||
@@ -1704,7 +1862,7 @@ kubeappsapis:
|
|||||||
image:
|
image:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: bitnami/kubeapps-apis
|
repository: bitnami/kubeapps-apis
|
||||||
tag: 2.9.0-debian-12-r19
|
tag: 2.10.0-debian-12-r0
|
||||||
digest: ""
|
digest: ""
|
||||||
## Specify a imagePullPolicy
|
## Specify a imagePullPolicy
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||||
@@ -1765,22 +1923,21 @@ kubeappsapis:
|
|||||||
http: 50051
|
http: 50051
|
||||||
## KubeappsAPIs containers' resource requests and limits
|
## KubeappsAPIs containers' resource requests and limits
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
||||||
## @param kubeappsapis.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if kubeappsapis.resources is set (kubeappsapis.resources is recommended for production).
|
## @param kubeappsapis.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if kubeappsapis.resources is set (kubeappsapis.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "micro"
|
||||||
## @param kubeappsapis.resources.limits.cpu The CPU limits for the KubeappsAPIs container
|
## @param kubeappsapis.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## @param kubeappsapis.resources.limits.memory The memory limits for the KubeappsAPIs container
|
## Example:
|
||||||
## @param kubeappsapis.resources.requests.cpu The requested CPU for the KubeappsAPIs container
|
## resources:
|
||||||
## @param kubeappsapis.resources.requests.memory The requested memory for the KubeappsAPIs container
|
## requests:
|
||||||
|
## cpu: 2
|
||||||
|
## memory: 512Mi
|
||||||
|
## limits:
|
||||||
|
## cpu: 3
|
||||||
|
## memory: 1024Mi
|
||||||
##
|
##
|
||||||
resources:
|
resources: {}
|
||||||
limits:
|
|
||||||
cpu: 250m
|
|
||||||
memory: 256Mi
|
|
||||||
requests:
|
|
||||||
cpu: 25m
|
|
||||||
memory: 32Mi
|
|
||||||
## Configure Pods Security Context
|
## Configure Pods Security Context
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-pod
|
||||||
## @param kubeappsapis.podSecurityContext.enabled Enabled KubeappsAPIs pods' Security Context
|
## @param kubeappsapis.podSecurityContext.enabled Enabled KubeappsAPIs pods' Security Context
|
||||||
@@ -1812,10 +1969,10 @@ kubeappsapis:
|
|||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: null
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
privileged: false
|
privileged: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
drop: ["ALL"]
|
drop: ["ALL"]
|
||||||
@@ -1987,6 +2144,64 @@ kubeappsapis:
|
|||||||
## @param kubeappsapis.service.annotations Additional custom annotations for KubeappsAPIs service
|
## @param kubeappsapis.service.annotations Additional custom annotations for KubeappsAPIs service
|
||||||
##
|
##
|
||||||
annotations: {}
|
annotations: {}
|
||||||
|
## Network Policies
|
||||||
|
## Ref: https://kubernetes.io/docs/concepts/services-networking/network-policies/
|
||||||
|
##
|
||||||
|
networkPolicy:
|
||||||
|
## @param kubeappsapis.networkPolicy.enabled Specifies whether a NetworkPolicy should be created
|
||||||
|
##
|
||||||
|
enabled: true
|
||||||
|
## @param kubeappsapis.networkPolicy.allowExternal Don't require server label for connections
|
||||||
|
## The Policy model to apply. When set to false, only pods with the correct
|
||||||
|
## server label will have network access to the ports server is listening
|
||||||
|
## on. When true, server will accept connections from any source
|
||||||
|
## (with the correct destination port).
|
||||||
|
##
|
||||||
|
allowExternal: true
|
||||||
|
## @param kubeappsapis.networkPolicy.allowExternalEgress Allow the pod to access any range of port and all destinations.
|
||||||
|
##
|
||||||
|
allowExternalEgress: true
|
||||||
|
## @param kubeappsapis.networkPolicy.kubeAPIServerPorts [array] List of possible endpoints to kube-apiserver (limit to your cluster settings to increase security)
|
||||||
|
##
|
||||||
|
kubeAPIServerPorts: [443, 6443, 8443]
|
||||||
|
## @param kubeappsapis.networkPolicy.extraIngress [array] Add extra ingress rules to the NetworkPolice
|
||||||
|
## e.g:
|
||||||
|
## extraIngress:
|
||||||
|
## - ports:
|
||||||
|
## - port: 1234
|
||||||
|
## from:
|
||||||
|
## - podSelector:
|
||||||
|
## - matchLabels:
|
||||||
|
## - role: frontend
|
||||||
|
## - podSelector:
|
||||||
|
## - matchExpressions:
|
||||||
|
## - key: role
|
||||||
|
## operator: In
|
||||||
|
## values:
|
||||||
|
## - frontend
|
||||||
|
extraIngress: []
|
||||||
|
## @param kubeappsapis.networkPolicy.extraEgress [array] Add extra ingress rules to the NetworkPolicy
|
||||||
|
## e.g:
|
||||||
|
## extraEgress:
|
||||||
|
## - ports:
|
||||||
|
## - port: 1234
|
||||||
|
## to:
|
||||||
|
## - podSelector:
|
||||||
|
## - matchLabels:
|
||||||
|
## - role: frontend
|
||||||
|
## - podSelector:
|
||||||
|
## - matchExpressions:
|
||||||
|
## - key: role
|
||||||
|
## operator: In
|
||||||
|
## values:
|
||||||
|
## - frontend
|
||||||
|
##
|
||||||
|
extraEgress: []
|
||||||
|
## @param kubeappsapis.networkPolicy.ingressNSMatchLabels [object] Labels to match to allow traffic from other namespaces
|
||||||
|
## @param kubeappsapis.networkPolicy.ingressNSPodMatchLabels [object] Pod labels to match to allow traffic from other namespaces
|
||||||
|
##
|
||||||
|
ingressNSMatchLabels: {}
|
||||||
|
ingressNSPodMatchLabels: {}
|
||||||
## kubeappsapis Service Account
|
## kubeappsapis Service Account
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/
|
||||||
## @param kubeappsapis.serviceAccount.create Specifies whether a ServiceAccount should be created
|
## @param kubeappsapis.serviceAccount.create Specifies whether a ServiceAccount should be created
|
||||||
@@ -2017,7 +2232,7 @@ ociCatalog:
|
|||||||
image:
|
image:
|
||||||
registry: docker.io
|
registry: docker.io
|
||||||
repository: bitnami/kubeapps-oci-catalog
|
repository: bitnami/kubeapps-oci-catalog
|
||||||
tag: 2.9.0-debian-12-r17
|
tag: 2.10.0-debian-12-r0
|
||||||
digest: ""
|
digest: ""
|
||||||
## Specify a imagePullPolicy
|
## Specify a imagePullPolicy
|
||||||
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
## Defaults to 'Always' if image tag is 'latest', else set to 'IfNotPresent'
|
||||||
@@ -2057,22 +2272,21 @@ ociCatalog:
|
|||||||
grpc: 50061
|
grpc: 50061
|
||||||
## OCI Catalog containers' resource requests and limits
|
## OCI Catalog containers' resource requests and limits
|
||||||
## ref: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
|
||||||
## @param ociCatalog.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if ociCatalog.resources is set (ociCatalog.resources is recommended for production).
|
## @param ociCatalog.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, micro, small, medium, large, xlarge, 2xlarge). This is ignored if ociCatalog.resources is set (ociCatalog.resources is recommended for production).
|
||||||
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
##
|
##
|
||||||
resourcesPreset: "none"
|
resourcesPreset: "micro"
|
||||||
## @param ociCatalog.resources.limits.cpu The CPU limits for the OCI Catalog container
|
## @param ociCatalog.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
## @param ociCatalog.resources.limits.memory The memory limits for the OCI Catalog container
|
## Example:
|
||||||
## @param ociCatalog.resources.requests.cpu The requested CPU for the OCI Catalog container
|
## resources:
|
||||||
## @param ociCatalog.resources.requests.memory The requested memory for the OCI Catalog container
|
## requests:
|
||||||
|
## cpu: 2
|
||||||
|
## memory: 512Mi
|
||||||
|
## limits:
|
||||||
|
## cpu: 3
|
||||||
|
## memory: 1024Mi
|
||||||
##
|
##
|
||||||
resources:
|
resources: {}
|
||||||
limits:
|
|
||||||
cpu: 250m
|
|
||||||
memory: 256Mi
|
|
||||||
requests:
|
|
||||||
cpu: 25m
|
|
||||||
memory: 32Mi
|
|
||||||
## Configure Container Security Context (only main container)
|
## Configure Container Security Context (only main container)
|
||||||
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
|
## ref: https://kubernetes.io/docs/tasks/configure-pod-container/security-context/#set-the-security-context-for-a-container
|
||||||
## @param ociCatalog.containerSecurityContext.enabled Enabled containers' Security Context
|
## @param ociCatalog.containerSecurityContext.enabled Enabled containers' Security Context
|
||||||
@@ -2090,10 +2304,10 @@ ociCatalog:
|
|||||||
enabled: true
|
enabled: true
|
||||||
seLinuxOptions: null
|
seLinuxOptions: null
|
||||||
runAsUser: 1001
|
runAsUser: 1001
|
||||||
runAsGroup: 0
|
runAsGroup: 1001
|
||||||
runAsNonRoot: true
|
runAsNonRoot: true
|
||||||
privileged: false
|
privileged: false
|
||||||
readOnlyRootFilesystem: false
|
readOnlyRootFilesystem: true
|
||||||
allowPrivilegeEscalation: false
|
allowPrivilegeEscalation: false
|
||||||
capabilities:
|
capabilities:
|
||||||
drop: ["ALL"]
|
drop: ["ALL"]
|
||||||
@@ -2211,6 +2425,23 @@ redis:
|
|||||||
## @param redis.master.persistence.enabled Enable Redis® master data persistence using PVC
|
## @param redis.master.persistence.enabled Enable Redis® master data persistence using PVC
|
||||||
##
|
##
|
||||||
enabled: false
|
enabled: false
|
||||||
|
## Redis® master resource requests and limits
|
||||||
|
## ref: https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/
|
||||||
|
## @param redis.master.resourcesPreset Set container resources according to one common preset (allowed values: none, nano, small, medium, large, xlarge, 2xlarge). This is ignored if master.resources is set (master.resources is recommended for production).
|
||||||
|
## More information: https://github.com/bitnami/charts/blob/main/bitnami/common/templates/_resources.tpl#L15
|
||||||
|
##
|
||||||
|
resourcesPreset: "nano"
|
||||||
|
## @param redis.master.resources Set container requests and limits for different resources like CPU or memory (essential for production workloads)
|
||||||
|
## Example:
|
||||||
|
## resources:
|
||||||
|
## requests:
|
||||||
|
## cpu: 2
|
||||||
|
## memory: 512Mi
|
||||||
|
## limits:
|
||||||
|
## cpu: 3
|
||||||
|
## memory: 1024Mi
|
||||||
|
##
|
||||||
|
resources: {}
|
||||||
replica:
|
replica:
|
||||||
## @param redis.replica.replicaCount Number of Redis® replicas to deploy
|
## @param redis.replica.replicaCount Number of Redis® replicas to deploy
|
||||||
##
|
##
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"containerimage.config.digest": "sha256:ebf11c0997c964a7eeadabecf3bade4c42f623cd03d4c742c8e0748d744f2b48",
|
"containerimage.config.digest": "sha256:78b413d1c9a4ecf3bec9383444b3e85c01d8b33bf903c6443bfa5bdfd8b5bc04",
|
||||||
"containerimage.digest": "sha256:1f2ba6374064bdc927fc7e61c95f58a6f76c121c828d438d212f8772bc52b170"
|
"containerimage.digest": "sha256:ddfaadb33e33123f553a36a3ee5857a1bf53f312043f91d76ad24316591fd26e"
|
||||||
}
|
}
|
||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/aenix-io/cozystack/dashboard:v0.3.1
|
ghcr.io/aenix-io/cozystack/dashboard:v0.4.0
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# Copyright 2018-2023 the Kubeapps contributors.
|
# Copyright 2018-2023 the Kubeapps contributors.
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
FROM bitnami/node:20.11.0 AS build
|
FROM bitnami/node:20.12.1 AS build
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
ARG VERSION=2.9.0
|
ARG VERSION=2.10.0
|
||||||
RUN wget -O- https://github.com/vmware-tanzu/kubeapps/archive/refs/tags/v${VERSION}.tar.gz | tar xzf - --strip-components=2 kubeapps-${VERSION}/dashboard
|
RUN wget -O- https://github.com/vmware-tanzu/kubeapps/archive/refs/tags/v${VERSION}.tar.gz | tar xzf - --strip-components=2 kubeapps-${VERSION}/dashboard
|
||||||
|
|
||||||
COPY apple-touch-icon.png favicon-16x16.png favicon-32x32.png favicon.ico mstile-144x144.png mstile-150x150.png mstile-310x150.png mstile-310x310.png mstile-70x70.png safari-pinned-tab.svg public/
|
COPY apple-touch-icon.png favicon-16x16.png favicon-32x32.png favicon.ico mstile-144x144.png mstile-150x150.png mstile-310x150.png mstile-310x310.png mstile-70x70.png safari-pinned-tab.svg public/
|
||||||
@@ -26,8 +26,22 @@ RUN yarn install --frozen-lockfile
|
|||||||
RUN yarn run prettier-check && yarn run ts-compile-check
|
RUN yarn run prettier-check && yarn run ts-compile-check
|
||||||
RUN yarn run build
|
RUN yarn run build
|
||||||
|
|
||||||
RUN sed -i 's/hsl(206, 25%, 25%)/hsl(225, 6%, 13%)/g' $(grep -rl 'hsl(206, 25\%, 25\%)')
|
RUN sed -i \
|
||||||
RUN sed -i 's/#304250/#202124/g' $(grep -rl "#304250")
|
-e 's/#2d4048/#202124/g' \
|
||||||
|
-e 's/#25333d/#1e2023/g' \
|
||||||
|
-e 's/#fcfdfd/#f3f4f5/g' \
|
||||||
|
-e 's/#f1f6f8/#e7e9eb/g' \
|
||||||
|
-e 's/#e3eaed/#d3d6da/g' \
|
||||||
|
-e 's/#cbd4d8/#b7bbc1/g' \
|
||||||
|
-e 's/#aeb8bc/#989da3/g' \
|
||||||
|
-e 's/#859399/#7b7f85/g' \
|
||||||
|
-e 's/#6a7a81/#5b686e/g' \
|
||||||
|
-e 's/#4f6169/#4f5256/g' \
|
||||||
|
-e 's/#3a4d55/#3a3d41/g' \
|
||||||
|
-e 's/#2d4048/#202124/g' \
|
||||||
|
-e 's/#21333b/#383d44/g' \
|
||||||
|
-e 's/#1b2b32/#2a2d2f/g' \
|
||||||
|
$(grep -rl "#2d4048\|#25333d\|#fcfdfd\|#f1f6f8\|#e3eaed\|#cbd4d8\|#aeb8bc\|#859399\|#6a7a81\|#4f6169\|#3a4d55\|#2d4048\|#21333b\|#1b2b32")
|
||||||
|
|
||||||
FROM bitnami/nginx:1.25.2
|
FROM bitnami/nginx:1.25.2
|
||||||
COPY --from=build /app/build /app
|
COPY --from=build /app/build /app
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
{
|
{
|
||||||
"containerimage.config.digest": "sha256:e5f295cce1b460e2423f07326e812a201fac6ab594ecfc75eddfa81f46fd10fb",
|
"containerimage.config.digest": "sha256:273a8e7055816068b2975d8ac10f0f7d114cafef74057680ffc60414d4d8cf4c",
|
||||||
"containerimage.digest": "sha256:6e32bb3f1afaf93e4e619d5655c43dcd1bf10e0d30aa8136e738484f1b0bd474"
|
"containerimage.digest": "sha256:5e111f09ee9c34281e2ef02cb0d41700943f8c036014110765bb002831148547"
|
||||||
}
|
}
|
||||||
@@ -1 +1 @@
|
|||||||
ghcr.io/aenix-io/cozystack/kubeapps-apis:v0.3.1
|
ghcr.io/aenix-io/cozystack/kubeapps-apis:v0.4.0
|
||||||
|
|||||||
@@ -1,21 +1,19 @@
|
|||||||
# Copyright 2021-2023 the Kubeapps contributors.
|
# Copyright 2021-2024 the Kubeapps contributors.
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
|
||||||
# syntax = docker/dockerfile:1
|
# syntax = docker/dockerfile:1
|
||||||
|
|
||||||
FROM alpine as source
|
FROM alpine as source
|
||||||
ARG VERSION=v2.9.0
|
ARG VERSION=v2.10.0
|
||||||
RUN apk add --no-cache patch
|
RUN apk add --no-cache patch
|
||||||
WORKDIR /source
|
WORKDIR /source
|
||||||
RUN wget -O- https://github.com/vmware-tanzu/kubeapps/archive/refs/tags/${VERSION}.tar.gz | tar xzf - --strip-components=1
|
RUN wget -O- https://github.com/vmware-tanzu/kubeapps/archive/refs/tags/${VERSION}.tar.gz | tar xzf - --strip-components=1
|
||||||
COPY fix-flux.diff /patches/fix-flux.diff
|
|
||||||
COPY labels.diff /patches/labels.diff
|
COPY labels.diff /patches/labels.diff
|
||||||
COPY reconcile-strategy.diff /patches/reconcile-strategy.diff
|
COPY reconcile-strategy.diff /patches/reconcile-strategy.diff
|
||||||
RUN patch -p1 < /patches/fix-flux.diff
|
|
||||||
RUN patch -p1 < /patches/labels.diff
|
RUN patch -p1 < /patches/labels.diff
|
||||||
RUN patch -p1 < /patches/reconcile-strategy.diff
|
RUN patch -p1 < /patches/reconcile-strategy.diff
|
||||||
|
|
||||||
FROM bitnami/golang:1.21.1 as builder
|
FROM bitnami/golang:1.22.2 as builder
|
||||||
WORKDIR /go/src/github.com/vmware-tanzu/kubeapps
|
WORKDIR /go/src/github.com/vmware-tanzu/kubeapps
|
||||||
COPY --from=source /source/go.mod /source/go.sum ./
|
COPY --from=source /source/go.mod /source/go.sum ./
|
||||||
ARG VERSION="devel"
|
ARG VERSION="devel"
|
||||||
@@ -25,16 +23,16 @@ ARG TARGETARCH
|
|||||||
ARG lint
|
ARG lint
|
||||||
|
|
||||||
# https://github.com/bufbuild/buf/releases/
|
# https://github.com/bufbuild/buf/releases/
|
||||||
ARG BUF_VERSION="1.26.0"
|
ARG BUF_VERSION="1.30.1"
|
||||||
|
|
||||||
# https://github.com/golangci/golangci-lint/releases
|
# https://github.com/golangci/golangci-lint/releases
|
||||||
ARG GOLANGCILINT_VERSION="1.53.3"
|
ARG GOLANGCILINT_VERSION="1.57.2"
|
||||||
|
|
||||||
# https://github.com/grpc-ecosystem/grpc-health-probe/releases/
|
# https://github.com/grpc-ecosystem/grpc-health-probe/releases/
|
||||||
ARG GRPC_HEALTH_PROBE_VERSION="0.4.19"
|
ARG GRPC_HEALTH_PROBE_VERSION="0.4.25"
|
||||||
|
|
||||||
# Install lint tools
|
# Install lint tools
|
||||||
RUN if [ ! -z "$lint" ]; then \
|
RUN if [ ! -z ${lint:-} ]; then \
|
||||||
go install github.com/golangci/golangci-lint/cmd/golangci-lint@v$GOLANGCILINT_VERSION; \
|
go install github.com/golangci/golangci-lint/cmd/golangci-lint@v$GOLANGCILINT_VERSION; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -55,7 +53,7 @@ RUN --mount=type=cache,target=/go/pkg/mod \
|
|||||||
COPY --from=source /source/pkg pkg
|
COPY --from=source /source/pkg pkg
|
||||||
COPY --from=source /source/cmd cmd
|
COPY --from=source /source/cmd cmd
|
||||||
|
|
||||||
RUN if [ ! -z "$lint" ]; then \
|
RUN if [ ! -z ${lint:-} ]; then \
|
||||||
# Run golangci-lint to detect issues
|
# Run golangci-lint to detect issues
|
||||||
golangci-lint run --timeout=10m ./cmd/kubeapps-apis/... && \
|
golangci-lint run --timeout=10m ./cmd/kubeapps-apis/... && \
|
||||||
golangci-lint run --timeout=10m ./pkg/...; \
|
golangci-lint run --timeout=10m ./pkg/...; \
|
||||||
@@ -67,6 +65,7 @@ RUN /tmp/buf lint ./cmd/kubeapps-apis
|
|||||||
# Build the main grpc server
|
# Build the main grpc server
|
||||||
RUN --mount=type=cache,target=/go/pkg/mod \
|
RUN --mount=type=cache,target=/go/pkg/mod \
|
||||||
--mount=type=cache,target=/root/.cache/go-build \
|
--mount=type=cache,target=/root/.cache/go-build \
|
||||||
|
GOPROXY="https://proxy.golang.org,direct" \
|
||||||
go build \
|
go build \
|
||||||
-ldflags "-X github.com/vmware-tanzu/kubeapps/cmd/kubeapps-apis/cmd.version=$VERSION" \
|
-ldflags "-X github.com/vmware-tanzu/kubeapps/cmd/kubeapps-apis/cmd.version=$VERSION" \
|
||||||
./cmd/kubeapps-apis
|
./cmd/kubeapps-apis
|
||||||
|
|||||||
@@ -1,27 +1,27 @@
|
|||||||
diff --git b/system/kubeapps/images/kubeapps-apis/Dockerfile a/system/kubeapps/images/kubeapps-apis/Dockerfile
|
|
||||||
index e5fcd8c..f72964d 100644
|
|
||||||
--- b/system/kubeapps/images/kubeapps-apis/Dockerfile
|
--- b/system/kubeapps/images/kubeapps-apis/Dockerfile
|
||||||
+++ a/system/kubeapps/images/kubeapps-apis/Dockerfile
|
+++ a/system/kubeapps/images/kubeapps-apis/Dockerfile
|
||||||
@@ -3,9 +3,17 @@
|
@@ -3,9 +3,19 @@
|
||||||
|
|
||||||
# syntax = docker/dockerfile:1
|
# syntax = docker/dockerfile:1
|
||||||
|
|
||||||
+FROM alpine as source
|
+FROM alpine as source
|
||||||
+ARG VERSION=v2.9.0
|
+ARG VERSION=v2.10.0
|
||||||
+RUN apk add --no-cache patch
|
+RUN apk add --no-cache patch
|
||||||
+WORKDIR /source
|
+WORKDIR /source
|
||||||
+RUN wget -O- https://github.com/vmware-tanzu/kubeapps/archive/refs/tags/${VERSION}.tar.gz | tar xzf - --strip-components=1
|
+RUN wget -O- https://github.com/vmware-tanzu/kubeapps/archive/refs/tags/${VERSION}.tar.gz | tar xzf - --strip-components=1
|
||||||
+COPY fix-flux.diff /patches/fix-flux.diff
|
+COPY labels.diff /patches/labels.diff
|
||||||
+RUN patch -p1 < /patches/fix-flux.diff
|
+COPY reconcile-strategy.diff /patches/reconcile-strategy.diff
|
||||||
|
+RUN patch -p1 < /patches/labels.diff
|
||||||
|
+RUN patch -p1 < /patches/reconcile-strategy.diff
|
||||||
+
|
+
|
||||||
FROM bitnami/golang:1.21.1 as builder
|
FROM bitnami/golang:1.22.2 as builder
|
||||||
WORKDIR /go/src/github.com/vmware-tanzu/kubeapps
|
WORKDIR /go/src/github.com/vmware-tanzu/kubeapps
|
||||||
-COPY go.mod go.sum ./
|
-COPY go.mod go.sum ./
|
||||||
+COPY --from=source /source/go.mod /source/go.sum ./
|
+COPY --from=source /source/go.mod /source/go.sum ./
|
||||||
ARG VERSION="devel"
|
ARG VERSION="devel"
|
||||||
ARG TARGETARCH
|
ARG TARGETARCH
|
||||||
|
|
||||||
@@ -40,8 +48,8 @@ RUN --mount=type=cache,target=/go/pkg/mod \
|
@@ -40,8 +52,8 @@
|
||||||
|
|
||||||
# We don't copy the pkg and cmd directories until here so the above layers can
|
# We don't copy the pkg and cmd directories until here so the above layers can
|
||||||
# be reused.
|
# be reused.
|
||||||
@@ -30,5 +30,5 @@ index e5fcd8c..f72964d 100644
|
|||||||
+COPY --from=source /source/pkg pkg
|
+COPY --from=source /source/pkg pkg
|
||||||
+COPY --from=source /source/cmd cmd
|
+COPY --from=source /source/cmd cmd
|
||||||
|
|
||||||
RUN if [ ! -z "$lint" ]; then \
|
RUN if [ ! -z ${lint:-} ]; then \
|
||||||
# Run golangci-lint to detect issues
|
# Run golangci-lint to detect issues
|
||||||
|
|||||||
@@ -1,28 +0,0 @@
|
|||||||
diff --git a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go
|
|
||||||
index 8886f4d479e..1ab08c074a5 100644
|
|
||||||
--- a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go
|
|
||||||
+++ b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go
|
|
||||||
@@ -579,9 +579,9 @@ func (s *repoEventSink) onAddRepo(key string, obj ctrlclient.Object) (interface{
|
|
||||||
// ref https://fluxcd.io/docs/components/source/helmrepositories/#status
|
|
||||||
func (s *repoEventSink) onAddHttpRepo(repo sourcev1.HelmRepository) ([]byte, bool, error) {
|
|
||||||
if artifact := repo.GetArtifact(); artifact != nil {
|
|
||||||
- if checksum := artifact.Checksum; checksum == "" {
|
|
||||||
+ if checksum := artifact.Digest; checksum == "" {
|
|
||||||
return nil, false, connect.NewError(connect.CodeInternal,
|
|
||||||
- fmt.Errorf("expected field status.artifact.checksum not found on HelmRepository\n[%s]",
|
|
||||||
+ fmt.Errorf("expected field status.artifact.digest not found on HelmRepository\n[%s]",
|
|
||||||
common.PrettyPrint(repo)))
|
|
||||||
} else {
|
|
||||||
return s.indexAndEncode(checksum, repo)
|
|
||||||
@@ -721,9 +721,9 @@ func (s *repoEventSink) onModifyHttpRepo(key string, oldValue interface{}, repo
|
|
||||||
// ref https://fluxcd.io/docs/components/source/helmrepositories/#status
|
|
||||||
var newChecksum string
|
|
||||||
if artifact := repo.GetArtifact(); artifact != nil {
|
|
||||||
- if newChecksum = artifact.Checksum; newChecksum == "" {
|
|
||||||
+ if newChecksum = artifact.Digest; newChecksum == "" {
|
|
||||||
return nil, false, connect.NewError(connect.CodeInternal,
|
|
||||||
- fmt.Errorf("expected field status.artifact.checksum not found on HelmRepository\n[%s]",
|
|
||||||
+ fmt.Errorf("expected field status.artifact.digest not found on HelmRepository\n[%s]",
|
|
||||||
common.PrettyPrint(repo)))
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
diff --git a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
diff --git a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
||||||
index fe7ca772d..3b46afbd1 100644
|
index c489cb6ca..8884a6484 100644
|
||||||
--- a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
--- a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
||||||
+++ b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
+++ b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
||||||
@@ -29,8 +29,10 @@ import (
|
@@ -29,8 +29,10 @@ import (
|
||||||
@@ -16,7 +16,7 @@ index fe7ca772d..3b46afbd1 100644
|
|||||||
@@ -54,7 +56,10 @@ func (s *Server) listReleasesInCluster(ctx context.Context, headers http.Header,
|
@@ -54,7 +56,10 @@ func (s *Server) listReleasesInCluster(ctx context.Context, headers http.Header,
|
||||||
// see any results created/updated/deleted after the first request is issued
|
// see any results created/updated/deleted after the first request is issued
|
||||||
// To fix this, we must make use of resourceVersion := relList.GetResourceVersion()
|
// To fix this, we must make use of resourceVersion := relList.GetResourceVersion()
|
||||||
var relList helmv2.HelmReleaseList
|
var relList helmv2beta2.HelmReleaseList
|
||||||
- if err = client.List(ctx, &relList); err != nil {
|
- if err = client.List(ctx, &relList); err != nil {
|
||||||
+ listOptions := ctrlclient.ListOptions{
|
+ listOptions := ctrlclient.ListOptions{
|
||||||
+ LabelSelector: labels.SelectorFromSet(labels.Set{"cozystack.io/ui": "true"}),
|
+ LabelSelector: labels.SelectorFromSet(labels.Set{"cozystack.io/ui": "true"}),
|
||||||
@@ -25,18 +25,18 @@ index fe7ca772d..3b46afbd1 100644
|
|||||||
return nil, connecterror.FromK8sError("list", "HelmRelease", namespace+"/*", err)
|
return nil, connecterror.FromK8sError("list", "HelmRelease", namespace+"/*", err)
|
||||||
} else {
|
} else {
|
||||||
return relList.Items, nil
|
return relList.Items, nil
|
||||||
@@ -511,6 +516,9 @@ func (s *Server) newFluxHelmRelease(chart *models.Chart, targetName types.Namesp
|
@@ -512,6 +517,9 @@ func (s *Server) newFluxHelmRelease(chart *models.Chart, targetName types.Namesp
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: chart.Name + "-" + targetName.Name,
|
Name: targetName.Name,
|
||||||
Namespace: targetName.Namespace,
|
Namespace: targetName.Namespace,
|
||||||
+ Labels: map[string]string{
|
+ Labels: map[string]string{
|
||||||
+ "cozystack.io/ui": "true",
|
+ "cozystack.io/ui": "true",
|
||||||
+ },
|
+ },
|
||||||
},
|
},
|
||||||
Spec: helmv2.HelmReleaseSpec{
|
Spec: helmv2beta2.HelmReleaseSpec{
|
||||||
Chart: helmv2.HelmChartTemplate{
|
Chart: helmv2beta2.HelmChartTemplate{
|
||||||
diff --git a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go
|
diff --git a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go
|
||||||
index 1ab08c074..cd7b3b9aa 100644
|
index 790b21514..539276a17 100644
|
||||||
--- a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go
|
--- a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go
|
||||||
+++ b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go
|
+++ b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/repo.go
|
||||||
@@ -32,6 +32,7 @@ import (
|
@@ -32,6 +32,7 @@ import (
|
||||||
@@ -49,7 +49,7 @@ index 1ab08c074..cd7b3b9aa 100644
|
|||||||
log "k8s.io/klog/v2"
|
log "k8s.io/klog/v2"
|
||||||
@@ -64,7 +65,8 @@ func (s *Server) listReposInNamespace(ctx context.Context, headers http.Header,
|
@@ -64,7 +65,8 @@ func (s *Server) listReposInNamespace(ctx context.Context, headers http.Header,
|
||||||
|
|
||||||
var repoList sourcev1.HelmRepositoryList
|
var repoList sourcev1beta2.HelmRepositoryList
|
||||||
listOptions := ctrlclient.ListOptions{
|
listOptions := ctrlclient.ListOptions{
|
||||||
- Namespace: ns,
|
- Namespace: ns,
|
||||||
+ Namespace: ns,
|
+ Namespace: ns,
|
||||||
@@ -57,3 +57,13 @@ index 1ab08c074..cd7b3b9aa 100644
|
|||||||
}
|
}
|
||||||
if err := client.List(backgroundCtx, &repoList, &listOptions); err != nil {
|
if err := client.List(backgroundCtx, &repoList, &listOptions); err != nil {
|
||||||
return nil, connecterror.FromK8sError("list", "HelmRepository", "", err)
|
return nil, connecterror.FromK8sError("list", "HelmRepository", "", err)
|
||||||
|
@@ -927,6 +929,9 @@ func newFluxHelmRepo(
|
||||||
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
|
Name: targetName.Name,
|
||||||
|
Namespace: targetName.Namespace,
|
||||||
|
+ Labels: map[string]string{
|
||||||
|
+ "cozystack.io/ui": "true",
|
||||||
|
+ },
|
||||||
|
},
|
||||||
|
Spec: sourcev1beta2.HelmRepositorySpec{
|
||||||
|
URL: url,
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
diff --git a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
diff --git a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
||||||
index fe7ca772d..8111feb1c 100644
|
index 8884a6484..4bf77071c 100644
|
||||||
--- a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
--- a/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
||||||
+++ b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
+++ b/cmd/kubeapps-apis/plugins/fluxv2/packages/v1alpha1/release.go
|
||||||
@@ -521,6 +529,7 @@ func (s *Server) newFluxHelmRelease(chart *models.Chart, targetName types.Namesp
|
@@ -530,6 +530,7 @@ func (s *Server) newFluxHelmRelease(chart *models.Chart, targetName types.Namesp
|
||||||
Kind: sourcev1.HelmRepositoryKind,
|
Kind: sourcev1beta2.HelmRepositoryKind,
|
||||||
Namespace: chart.Repo.Namespace,
|
Namespace: chart.Repo.Namespace,
|
||||||
},
|
},
|
||||||
+ ReconcileStrategy: "Revision",
|
+ ReconcileStrategy: "Revision",
|
||||||
|
|||||||
@@ -15,3 +15,12 @@ kubeapps:
|
|||||||
#serviceaccount-selector {
|
#serviceaccount-selector {
|
||||||
display: none;
|
display: none;
|
||||||
}
|
}
|
||||||
|
.login-moreinfo {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
a[href="#/docs"] {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.login-group .clr-form-control .clr-control-label {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|||||||
3
packages/system/etcd-operator/.helmignore
Normal file
3
packages/system/etcd-operator/.helmignore
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
images
|
||||||
|
hack
|
||||||
|
.gitkeep
|
||||||
2
packages/system/etcd-operator/Chart.yaml
Normal file
2
packages/system/etcd-operator/Chart.yaml
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
name: cozy-etcd-operator
|
||||||
|
version: 0.4.0
|
||||||
8
packages/system/etcd-operator/Makefile
Normal file
8
packages/system/etcd-operator/Makefile
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
NAME=etcd-operator
|
||||||
|
NAMESPACE=cozy-${NAME}
|
||||||
|
|
||||||
|
include ../../../scripts/package-system.mk
|
||||||
|
|
||||||
|
update:
|
||||||
|
rm -rf charts
|
||||||
|
helm pull oci://ghcr.io/aenix-io/charts/etcd-operator --untar --untardir charts
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
# Patterns to ignore when building packages.
|
||||||
|
# This supports shell glob matching, relative path matching, and
|
||||||
|
# negation (prefixed with !). Only one pattern per line.
|
||||||
|
.DS_Store
|
||||||
|
# Common VCS dirs
|
||||||
|
.git/
|
||||||
|
.gitignore
|
||||||
|
.bzr/
|
||||||
|
.bzrignore
|
||||||
|
.hg/
|
||||||
|
.hgignore
|
||||||
|
.svn/
|
||||||
|
# Common backup files
|
||||||
|
*.swp
|
||||||
|
*.bak
|
||||||
|
*.tmp
|
||||||
|
*.orig
|
||||||
|
*~
|
||||||
|
# Various IDEs
|
||||||
|
.project
|
||||||
|
.idea/
|
||||||
|
*.tmproj
|
||||||
|
.vscode/
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
apiVersion: v2
|
||||||
|
appVersion: v0.2.0
|
||||||
|
name: etcd-operator
|
||||||
|
type: application
|
||||||
|
version: 0.2.0
|
||||||
63
packages/system/etcd-operator/charts/etcd-operator/README.md
Normal file
63
packages/system/etcd-operator/charts/etcd-operator/README.md
Normal file
@@ -0,0 +1,63 @@
|
|||||||
|
# etcd-operator
|
||||||
|
|
||||||
|
  
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
| Key | Type | Default | Description |
|
||||||
|
|-----|------|---------|-------------|
|
||||||
|
| affinity | object | `{}` | |
|
||||||
|
| etcdOperator.args[0] | string | `"--health-probe-bind-address=:8081"` | |
|
||||||
|
| etcdOperator.args[1] | string | `"--metrics-bind-address=127.0.0.1:8080"` | |
|
||||||
|
| etcdOperator.args[2] | string | `"--leader-elect"` | |
|
||||||
|
| etcdOperator.envVars | object | `{}` | |
|
||||||
|
| etcdOperator.image.pullPolicy | string | `"IfNotPresent"` | |
|
||||||
|
| etcdOperator.image.repository | string | `"ghcr.io/aenix-io/etcd-operator"` | |
|
||||||
|
| etcdOperator.image.tag | string | `""` | |
|
||||||
|
| etcdOperator.livenessProbe.httpGet.path | string | `"/healthz"` | |
|
||||||
|
| etcdOperator.livenessProbe.httpGet.port | int | `8081` | |
|
||||||
|
| etcdOperator.livenessProbe.initialDelaySeconds | int | `15` | |
|
||||||
|
| etcdOperator.livenessProbe.periodSeconds | int | `20` | |
|
||||||
|
| etcdOperator.readinessProbe.httpGet.path | string | `"/readyz"` | |
|
||||||
|
| etcdOperator.readinessProbe.httpGet.port | int | `8081` | |
|
||||||
|
| etcdOperator.readinessProbe.initialDelaySeconds | int | `5` | |
|
||||||
|
| etcdOperator.readinessProbe.periodSeconds | int | `10` | |
|
||||||
|
| etcdOperator.resources.limits.cpu | string | `"500m"` | |
|
||||||
|
| etcdOperator.resources.limits.memory | string | `"128Mi"` | |
|
||||||
|
| etcdOperator.resources.requests.cpu | string | `"100m"` | |
|
||||||
|
| etcdOperator.resources.requests.memory | string | `"64Mi"` | |
|
||||||
|
| etcdOperator.securityContext.allowPrivilegeEscalation | bool | `false` | |
|
||||||
|
| etcdOperator.securityContext.capabilities.drop[0] | string | `"ALL"` | |
|
||||||
|
| etcdOperator.service.port | int | `9443` | |
|
||||||
|
| etcdOperator.service.type | string | `"ClusterIP"` | |
|
||||||
|
| fullnameOverride | string | `""` | |
|
||||||
|
| imagePullSecrets | list | `[]` | |
|
||||||
|
| kubeRbacProxy.args[0] | string | `"--secure-listen-address=0.0.0.0:8443"` | |
|
||||||
|
| kubeRbacProxy.args[1] | string | `"--upstream=http://127.0.0.1:8080/"` | |
|
||||||
|
| kubeRbacProxy.args[2] | string | `"--logtostderr=true"` | |
|
||||||
|
| kubeRbacProxy.args[3] | string | `"--v=0"` | |
|
||||||
|
| kubeRbacProxy.image.pullPolicy | string | `"IfNotPresent"` | |
|
||||||
|
| kubeRbacProxy.image.repository | string | `"gcr.io/kubebuilder/kube-rbac-proxy"` | |
|
||||||
|
| kubeRbacProxy.image.tag | string | `"v0.16.0"` | |
|
||||||
|
| kubeRbacProxy.livenessProbe | object | `{}` | |
|
||||||
|
| kubeRbacProxy.readinessProbe | object | `{}` | |
|
||||||
|
| kubeRbacProxy.resources.limits.cpu | string | `"500m"` | |
|
||||||
|
| kubeRbacProxy.resources.limits.memory | string | `"128Mi"` | |
|
||||||
|
| kubeRbacProxy.resources.requests.cpu | string | `"100m"` | |
|
||||||
|
| kubeRbacProxy.resources.requests.memory | string | `"64Mi"` | |
|
||||||
|
| kubeRbacProxy.securityContext.allowPrivilegeEscalation | bool | `false` | |
|
||||||
|
| kubeRbacProxy.securityContext.capabilities.drop[0] | string | `"ALL"` | |
|
||||||
|
| kubeRbacProxy.service.port | int | `8443` | |
|
||||||
|
| kubeRbacProxy.service.type | string | `"ClusterIP"` | |
|
||||||
|
| kubernetesClusterDomain | string | `"cluster.local"` | |
|
||||||
|
| nameOverride | string | `""` | |
|
||||||
|
| nodeSelector | object | `{}` | |
|
||||||
|
| podAnnotations | object | `{}` | |
|
||||||
|
| podLabels | object | `{}` | |
|
||||||
|
| podSecurityContext | object | `{}` | |
|
||||||
|
| replicaCount | int | `1` | |
|
||||||
|
| securityContext.runAsNonRoot | bool | `true` | |
|
||||||
|
| serviceAccount.annotations | object | `{}` | |
|
||||||
|
| serviceAccount.create | bool | `true` | |
|
||||||
|
| tolerations | list | `[]` | |
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,51 @@
|
|||||||
|
{{/*
|
||||||
|
Expand the name of the chart.
|
||||||
|
*/}}
|
||||||
|
{{- define "etcd-operator.name" -}}
|
||||||
|
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create a default fully qualified app name.
|
||||||
|
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
|
||||||
|
If release name contains chart name it will be used as a full name.
|
||||||
|
*/}}
|
||||||
|
{{- define "etcd-operator.fullname" -}}
|
||||||
|
{{- if .Values.fullnameOverride }}
|
||||||
|
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- $name := default .Chart.Name .Values.nameOverride }}
|
||||||
|
{{- if contains $name .Release.Name }}
|
||||||
|
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- else }}
|
||||||
|
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Create chart name and version as used by the chart label.
|
||||||
|
*/}}
|
||||||
|
{{- define "etcd-operator.chart" -}}
|
||||||
|
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Common labels
|
||||||
|
*/}}
|
||||||
|
{{- define "etcd-operator.labels" -}}
|
||||||
|
helm.sh/chart: {{ include "etcd-operator.chart" . }}
|
||||||
|
{{ include "etcd-operator.selectorLabels" . }}
|
||||||
|
{{- if .Chart.AppVersion }}
|
||||||
|
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||||
|
{{- end }}
|
||||||
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{/*
|
||||||
|
Selector labels
|
||||||
|
*/}}
|
||||||
|
{{- define "etcd-operator.selectorLabels" -}}
|
||||||
|
app.kubernetes.io/name: {{ include "etcd-operator.name" . }}
|
||||||
|
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||||
|
{{- end }}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-serving-cert
|
||||||
|
spec:
|
||||||
|
dnsNames:
|
||||||
|
- {{ include "etcd-operator.fullname" . }}-webhook-service.{{ .Release.Namespace }}.svc
|
||||||
|
- {{ include "etcd-operator.fullname" . }}-webhook-service.{{ .Release.Namespace }}.svc.{{ .Values.kubernetesClusterDomain }}
|
||||||
|
issuerRef:
|
||||||
|
kind: Issuer
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-selfsigned-issuer
|
||||||
|
secretName: webhook-server-cert
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Issuer
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-selfsigned-issuer
|
||||||
|
spec:
|
||||||
|
selfSigned: {}
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
apiVersion: admissionregistration.k8s.io/v1
|
||||||
|
kind: MutatingWebhookConfiguration
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/inject-ca-from: {{ .Release.Namespace }}/{{ include "etcd-operator.fullname" . }}-serving-cert
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-mutating-webhook-configuration
|
||||||
|
webhooks:
|
||||||
|
- admissionReviewVersions:
|
||||||
|
- v1
|
||||||
|
clientConfig:
|
||||||
|
service:
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-webhook-service
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
path: /mutate-etcd-aenix-io-v1alpha1-etcdcluster
|
||||||
|
failurePolicy: Fail
|
||||||
|
name: metcdcluster.kb.io
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- etcd.aenix.io
|
||||||
|
apiVersions:
|
||||||
|
- v1alpha1
|
||||||
|
operations:
|
||||||
|
- CREATE
|
||||||
|
- UPDATE
|
||||||
|
resources:
|
||||||
|
- etcdclusters
|
||||||
|
sideEffects: None
|
||||||
@@ -0,0 +1,29 @@
|
|||||||
|
apiVersion: admissionregistration.k8s.io/v1
|
||||||
|
kind: ValidatingWebhookConfiguration
|
||||||
|
metadata:
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/inject-ca-from: {{ .Release.Namespace }}/{{ include "etcd-operator.fullname" . }}-serving-cert
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-validating-webhook-configuration
|
||||||
|
webhooks:
|
||||||
|
- admissionReviewVersions:
|
||||||
|
- v1
|
||||||
|
clientConfig:
|
||||||
|
service:
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-webhook-service
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
path: /validate-etcd-aenix-io-v1alpha1-etcdcluster
|
||||||
|
failurePolicy: Fail
|
||||||
|
name: vetcdcluster.kb.io
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- etcd.aenix.io
|
||||||
|
apiVersions:
|
||||||
|
- v1alpha1
|
||||||
|
operations:
|
||||||
|
- CREATE
|
||||||
|
- UPDATE
|
||||||
|
resources:
|
||||||
|
- etcdclusters
|
||||||
|
sideEffects: None
|
||||||
@@ -0,0 +1,81 @@
|
|||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-manager-role
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- ""
|
||||||
|
resources:
|
||||||
|
- configmaps
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- delete
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- patch
|
||||||
|
- update
|
||||||
|
- watch
|
||||||
|
- apiGroups:
|
||||||
|
- ""
|
||||||
|
resources:
|
||||||
|
- services
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- delete
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- patch
|
||||||
|
- update
|
||||||
|
- watch
|
||||||
|
- apiGroups:
|
||||||
|
- apps
|
||||||
|
resources:
|
||||||
|
- statefulsets
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- delete
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- patch
|
||||||
|
- update
|
||||||
|
- watch
|
||||||
|
- apiGroups:
|
||||||
|
- etcd.aenix.io
|
||||||
|
resources:
|
||||||
|
- etcdclusters
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- delete
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- patch
|
||||||
|
- update
|
||||||
|
- watch
|
||||||
|
- apiGroups:
|
||||||
|
- etcd.aenix.io
|
||||||
|
resources:
|
||||||
|
- etcdclusters/finalizers
|
||||||
|
verbs:
|
||||||
|
- update
|
||||||
|
- apiGroups:
|
||||||
|
- etcd.aenix.io
|
||||||
|
resources:
|
||||||
|
- etcdclusters/status
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- patch
|
||||||
|
- update
|
||||||
|
- apiGroups:
|
||||||
|
- policy
|
||||||
|
resources:
|
||||||
|
- poddisruptionbudgets
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- delete
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- patch
|
||||||
|
- update
|
||||||
|
- watch
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-metrics-reader
|
||||||
|
rules:
|
||||||
|
- nonResourceURLs:
|
||||||
|
- /metrics
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRole
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-proxy-role
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- authentication.k8s.io
|
||||||
|
resources:
|
||||||
|
- tokenreviews
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- apiGroups:
|
||||||
|
- authorization.k8s.io
|
||||||
|
resources:
|
||||||
|
- subjectaccessreviews
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-manager-rolebinding
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-manager-role
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-controller-manager
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: ClusterRoleBinding
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-proxy-rolebinding
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: ClusterRole
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-proxy-role
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-controller-manager
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
@@ -0,0 +1,38 @@
|
|||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: Role
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-leader-election-role
|
||||||
|
rules:
|
||||||
|
- apiGroups:
|
||||||
|
- ""
|
||||||
|
resources:
|
||||||
|
- configmaps
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- watch
|
||||||
|
- create
|
||||||
|
- update
|
||||||
|
- patch
|
||||||
|
- delete
|
||||||
|
- apiGroups:
|
||||||
|
- coordination.k8s.io
|
||||||
|
resources:
|
||||||
|
- leases
|
||||||
|
verbs:
|
||||||
|
- get
|
||||||
|
- list
|
||||||
|
- watch
|
||||||
|
- create
|
||||||
|
- update
|
||||||
|
- patch
|
||||||
|
- delete
|
||||||
|
- apiGroups:
|
||||||
|
- ""
|
||||||
|
resources:
|
||||||
|
- events
|
||||||
|
verbs:
|
||||||
|
- create
|
||||||
|
- patch
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: rbac.authorization.k8s.io/v1
|
||||||
|
kind: RoleBinding
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-leader-election-rolebinding
|
||||||
|
roleRef:
|
||||||
|
apiGroup: rbac.authorization.k8s.io
|
||||||
|
kind: Role
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-leader-election-role
|
||||||
|
subjects:
|
||||||
|
- kind: ServiceAccount
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-controller-manager
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
@@ -0,0 +1,16 @@
|
|||||||
|
{{- if .Values.etcdOperator.envVars }}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: {{ include "etcd-operator.labels" . }}-env
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
data:
|
||||||
|
{{- range $k, $v := .Values.etcdOperator.envVars }}
|
||||||
|
{{- if typeOf $v | eq "string" }}
|
||||||
|
{{- print (tpl $k $) ": " (tpl $v $ | quote) | nindent 2 }}
|
||||||
|
{{- else }}
|
||||||
|
{{- print (tpl $k $) ": " ($v | quote) | nindent 2 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -0,0 +1,114 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-controller-manager
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
replicas: {{ .Values.replicaCount }}
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
{{- include "etcd-operator.selectorLabels" . | nindent 6 }}
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
{{- with .Values.podAnnotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 8 }}
|
||||||
|
{{- with .Values.podLabels }}
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
spec:
|
||||||
|
{{- with .Values.imagePullSecrets }}
|
||||||
|
imagePullSecrets:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
containers:
|
||||||
|
- name: etcd-operator
|
||||||
|
image: {{ .Values.etcdOperator.image.repository }}:{{ .Values.etcdOperator.image.tag | default .Chart.AppVersion }}
|
||||||
|
imagePullPolicy: {{ .Values.etcdOperator.image.pullPolicy }}
|
||||||
|
{{- with .Values.etcdOperator.args }}
|
||||||
|
args:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
ports:
|
||||||
|
- containerPort: {{ .Values.etcdOperator.service.port }}
|
||||||
|
name: webhook-server
|
||||||
|
protocol: TCP
|
||||||
|
{{- with .Values.etcdOperator.livenessProbe }}
|
||||||
|
livenessProbe:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.etcdOperator.readinessProbe }}
|
||||||
|
readinessProbe:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.etcdOperator.resources }}
|
||||||
|
resources:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.etcdOperator.securityContext }}
|
||||||
|
securityContext:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- if .Values.etcdOperator.envVars }}
|
||||||
|
envFrom:
|
||||||
|
- configMapRef:
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-env
|
||||||
|
{{- end }}
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /tmp/k8s-webhook-server/serving-certs
|
||||||
|
name: cert
|
||||||
|
readOnly: true
|
||||||
|
- name: kube-rbac-proxy
|
||||||
|
image: {{ .Values.kubeRbacProxy.image.repository }}:{{ .Values.kubeRbacProxy.image.tag }}
|
||||||
|
imagePullPolicy: {{ .Values.kubeRbacProxy.image.pullPolicy }}
|
||||||
|
{{- with .Values.kubeRbacProxy.args }}
|
||||||
|
args:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
ports:
|
||||||
|
- containerPort: {{ .Values.kubeRbacProxy.service.port }}
|
||||||
|
name: https
|
||||||
|
protocol: TCP
|
||||||
|
{{- with .Values.kubeRbacProxy.livenessProbe }}
|
||||||
|
livenessProbe:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.kubeRbacProxy.readinessProbe }}
|
||||||
|
readinessProbe:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.kubeRbacProxy.resources }}
|
||||||
|
resources:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.kubeRbacProxy.securityContext }}
|
||||||
|
securityContext:
|
||||||
|
{{- toYaml . | nindent 12 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.podSecurityContext }}
|
||||||
|
securityContext:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
serviceAccountName: {{ include "etcd-operator.fullname" . }}-controller-manager
|
||||||
|
terminationGracePeriodSeconds: 10
|
||||||
|
volumes:
|
||||||
|
- name: cert
|
||||||
|
secret:
|
||||||
|
defaultMode: 420
|
||||||
|
secretName: webhook-server-cert
|
||||||
|
{{- with .Values.nodeSelector }}
|
||||||
|
nodeSelector:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.affinity }}
|
||||||
|
affinity:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- with .Values.tolerations }}
|
||||||
|
tolerations:
|
||||||
|
{{- toYaml . | nindent 8 }}
|
||||||
|
{{- end }}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-controller-manager-metrics-service
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
type: {{ .Values.kubeRbacProxy.service.type }}
|
||||||
|
ports:
|
||||||
|
- name: https
|
||||||
|
port: {{ .Values.kubeRbacProxy.service.port }}
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: https
|
||||||
|
selector:
|
||||||
|
{{- include "etcd-operator.selectorLabels" . | nindent 4 }}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-webhook-service
|
||||||
|
spec:
|
||||||
|
type: {{ .Values.etcdOperator.service.type }}
|
||||||
|
ports:
|
||||||
|
- port: 443
|
||||||
|
protocol: TCP
|
||||||
|
targetPort: {{ .Values.etcdOperator.service.port }}
|
||||||
|
selector:
|
||||||
|
{{- include "etcd-operator.selectorLabels" . | nindent 4 }}
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
{{- if .Values.serviceAccount.create -}}
|
||||||
|
apiVersion: v1
|
||||||
|
kind: ServiceAccount
|
||||||
|
metadata:
|
||||||
|
name: {{ include "etcd-operator.fullname" . }}-controller-manager
|
||||||
|
labels:
|
||||||
|
{{- include "etcd-operator.labels" . | nindent 4 }}
|
||||||
|
{{- with .Values.serviceAccount.annotations }}
|
||||||
|
annotations:
|
||||||
|
{{- toYaml . | nindent 4 }}
|
||||||
|
{{- end }}
|
||||||
|
{{- end }}
|
||||||
@@ -0,0 +1,284 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
||||||
|
"properties": {
|
||||||
|
"affinity": {
|
||||||
|
"properties": {},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"etcdOperator": {
|
||||||
|
"properties": {
|
||||||
|
"args": {
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"type": "array"
|
||||||
|
},
|
||||||
|
"envVars": {
|
||||||
|
"properties": {},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"image": {
|
||||||
|
"properties": {
|
||||||
|
"pullPolicy": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"tag": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"livenessProbe": {
|
||||||
|
"properties": {
|
||||||
|
"httpGet": {
|
||||||
|
"properties": {
|
||||||
|
"path": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"port": {
|
||||||
|
"type": "integer"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"initialDelaySeconds": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"periodSeconds": {
|
||||||
|
"type": "integer"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"readinessProbe": {
|
||||||
|
"properties": {
|
||||||
|
"httpGet": {
|
||||||
|
"properties": {
|
||||||
|
"path": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"port": {
|
||||||
|
"type": "integer"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"initialDelaySeconds": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"periodSeconds": {
|
||||||
|
"type": "integer"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"resources": {
|
||||||
|
"properties": {
|
||||||
|
"limits": {
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"requests": {
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"securityContext": {
|
||||||
|
"properties": {
|
||||||
|
"allowPrivilegeEscalation": {
|
||||||
|
"type": "boolean"
|
||||||
|
},
|
||||||
|
"capabilities": {
|
||||||
|
"properties": {
|
||||||
|
"drop": {
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"type": "array"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"service": {
|
||||||
|
"properties": {
|
||||||
|
"port": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"type": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"fullnameOverride": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"imagePullSecrets": {
|
||||||
|
"type": "array"
|
||||||
|
},
|
||||||
|
"kubeRbacProxy": {
|
||||||
|
"properties": {
|
||||||
|
"args": {
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"type": "array"
|
||||||
|
},
|
||||||
|
"image": {
|
||||||
|
"properties": {
|
||||||
|
"pullPolicy": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"repository": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"tag": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"livenessProbe": {
|
||||||
|
"properties": {},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"readinessProbe": {
|
||||||
|
"properties": {},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"resources": {
|
||||||
|
"properties": {
|
||||||
|
"limits": {
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"requests": {
|
||||||
|
"properties": {
|
||||||
|
"cpu": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"memory": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"securityContext": {
|
||||||
|
"properties": {
|
||||||
|
"allowPrivilegeEscalation": {
|
||||||
|
"type": "boolean"
|
||||||
|
},
|
||||||
|
"capabilities": {
|
||||||
|
"properties": {
|
||||||
|
"drop": {
|
||||||
|
"items": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"type": "array"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"service": {
|
||||||
|
"properties": {
|
||||||
|
"port": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"type": {
|
||||||
|
"type": "string"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"kubernetesClusterDomain": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"nameOverride": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"nodeSelector": {
|
||||||
|
"properties": {},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"podAnnotations": {
|
||||||
|
"properties": {},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"podLabels": {
|
||||||
|
"properties": {},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"podSecurityContext": {
|
||||||
|
"properties": {},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"replicaCount": {
|
||||||
|
"type": "integer"
|
||||||
|
},
|
||||||
|
"securityContext": {
|
||||||
|
"properties": {
|
||||||
|
"runAsNonRoot": {
|
||||||
|
"type": "boolean"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"serviceAccount": {
|
||||||
|
"properties": {
|
||||||
|
"annotations": {
|
||||||
|
"properties": {},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"create": {
|
||||||
|
"type": "boolean"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
},
|
||||||
|
"tolerations": {
|
||||||
|
"type": "array"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"type": "object"
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user