Compare commits
47 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 314defb171 | |||
| 576204759f | |||
| fff72a0222 | |||
| 6d25c17397 | |||
| 5f96ab341d | |||
| ac8ad047b4 | |||
| 00becd0fab | |||
| 0b7faf42ac | |||
| 6480058dba | |||
| e2d2025c38 | |||
| 118cd8e1cb | |||
| 93892ec341 | |||
| 0a1db3d5cf | |||
| 56604353a2 | |||
| 96cbc7ec18 | |||
| 2389545811 | |||
| 3da5c3eb13 | |||
| 295e43c993 | |||
| 6d8fb2930e | |||
| d0d78eb1be | |||
| 8a95436200 | |||
| afcfc36e5f | |||
| 966f0672c7 | |||
| 51ba51320a | |||
| 35cb630582 | |||
| 49396e0b8a | |||
| 9a6bbba2de | |||
| c8fcb7359f | |||
| 5c6164c2d6 | |||
| 8a8b63bab9 | |||
| c3df85fef6 | |||
| 5e19d886e5 | |||
| 95b686d20c | |||
| 285a6cca10 | |||
| 3ee1679e1d | |||
| 7d49989247 | |||
| b17db72a63 | |||
| 0f6e89dbe0 | |||
| 14cd62652c | |||
| a788cff019 | |||
| d951961c49 | |||
| 1ba0e4df60 | |||
| b761286e38 | |||
| 1400b4a58d | |||
| e2f8f0042a | |||
| 059523dbf2 | |||
| b9392c085c |
@@ -7,25 +7,32 @@ lint:
|
||||
helm lint charts/onechart/
|
||||
helm lint charts/cron-job/
|
||||
helm lint charts/namespaces/
|
||||
helm lint charts/static-site
|
||||
|
||||
kubeval:
|
||||
rm -rf manifests && true
|
||||
mkdir manifests
|
||||
helm template charts/onechart --output-dir manifests
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.13.0
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.18.0
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.20.0
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.24.0
|
||||
|
||||
rm -rf manifests && true
|
||||
mkdir manifests
|
||||
helm template charts/cron-job --output-dir manifests
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.13.0
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.18.0
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.20.0
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.24.0
|
||||
|
||||
rm -rf manifests && true
|
||||
mkdir manifests
|
||||
helm template charts/namespaces --output-dir manifests
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.13.0
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.18.0
|
||||
helm template charts/namespaces --output-dir manifests -f charts/namespaces/fixture.yaml
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.20.0
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.24.0
|
||||
|
||||
rm -rf manifests && true
|
||||
mkdir manifests
|
||||
helm template charts/static-site --output-dir manifests
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.20.0
|
||||
find manifests/ -name '*.yaml' | xargs kubeval --ignore-missing-schemas -v 1.24.0
|
||||
|
||||
test:
|
||||
helm dependency update charts/onechart
|
||||
@@ -36,16 +43,23 @@ test:
|
||||
|
||||
helm unittest charts/namespaces
|
||||
|
||||
helm unittest charts/static-site
|
||||
|
||||
package:
|
||||
helm dependency update charts/onechart
|
||||
helm package charts/onechart
|
||||
mv onechart*.tgz docs
|
||||
|
||||
helm dependency update charts/cron-job
|
||||
helm package charts/cron-job
|
||||
mv cron-job*.tgz docs
|
||||
|
||||
helm package charts/namespaces
|
||||
mv namespaces*.tgz docs
|
||||
|
||||
helm package charts/static-site
|
||||
mv static-site*.tgz docs
|
||||
|
||||
helm repo index docs --url https://chart.onechart.dev
|
||||
|
||||
debug:
|
||||
|
||||
@@ -4,7 +4,7 @@ A generic Helm chart for your application deployments.
|
||||
|
||||
Because no-one can remember the Kubernetes yaml syntax.
|
||||
|
||||
https://gimlet.io/docs
|
||||
https://gimlet.io/docs/onechart-reference
|
||||
|
||||
## Getting started
|
||||
|
||||
@@ -30,7 +30,7 @@ helm install my-release onechart/onechart \
|
||||
--set image.tag=1.19.3
|
||||
```
|
||||
|
||||
See all [Examples](/examples/deploying-an-image)
|
||||
See all [Examples](/website/docs/examples/)
|
||||
|
||||
## Contribution Guidelines
|
||||
|
||||
|
||||
@@ -15,4 +15,4 @@ type: library
|
||||
# This is the chart version. This version number should be incremented each time you make changes
|
||||
# to the chart and its templates, including the app version.
|
||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||
version: 0.1.0
|
||||
version: 0.2.0
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
{{- define "common.customFileConfigmap.tpl" -}}
|
||||
{{- range .Values.volumes }}
|
||||
{{- if .fileName }}
|
||||
|
||||
apiVersion: v1
|
||||
kind: ConfigMap
|
||||
metadata:
|
||||
name: {{ template "common.robustName" .fileName }}
|
||||
namespace: {{ $.Release.Namespace }}
|
||||
data:
|
||||
{{ .fileName }}: |
|
||||
{{- .fileContent | nindent 4 }}
|
||||
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
@@ -1,6 +1,6 @@
|
||||
{{- define "common.pvc.tpl" -}}
|
||||
{{- range .Values.volumes }}
|
||||
{{- if not .existingClaim }}
|
||||
{{- if not (or .existingClaim .hostPath .fileName .emptyDir .existingConfigMap) }}
|
||||
{{- $robustName := include "common.robustName" $.Release.Name }}
|
||||
---
|
||||
apiVersion: v1
|
||||
@@ -8,13 +8,19 @@ kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: {{ printf "%s-%s" $robustName .name }}
|
||||
namespace: {{ $.Release.Namespace }}
|
||||
{{- if .pvcAnnotations }}
|
||||
annotations:
|
||||
{{- toYaml .pvcAnnotations | nindent 4 }}
|
||||
{{- end }}
|
||||
spec:
|
||||
accessModes:
|
||||
- {{ .accessMode | default "ReadWriteOnce" }}
|
||||
storageClassName: {{ .storageClass | default "local-path" }}
|
||||
{{- if .storageClass }}
|
||||
storageClassName: {{ .storageClass }}
|
||||
{{- end }}
|
||||
resources:
|
||||
requests:
|
||||
storage: {{ .size | default "1Gi" }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
{{- end -}}
|
||||
@@ -1,10 +1,15 @@
|
||||
{{- define "common.volumeMountsRef.tpl" -}}
|
||||
{{- if or (or (.Values.volumes) (.Values.sealedFileSecrets)) .Values.fileSecrets }}
|
||||
{{- if or (or (or (.Values.volumes) (.Values.sealedFileSecrets)) .Values.fileSecrets) .Values.existingFileSecrets }}
|
||||
volumeMounts: &volumeMounts
|
||||
{{- range .Values.volumes }}
|
||||
{{- if not (hasPrefix "init-" .name) }}
|
||||
- name: {{ .name }}
|
||||
mountPath: {{ .path }}
|
||||
{{- end }}
|
||||
{{- if .subPath }}
|
||||
subPath: {{ .subPath }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- range .Values.sealedFileSecrets }}
|
||||
- name: {{ .name }}
|
||||
mountPath: {{ .path }}
|
||||
@@ -15,5 +20,14 @@ volumeMounts: &volumeMounts
|
||||
mountPath: {{ .path }}
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
{{- range .Values.existingFileSecrets }}
|
||||
- name: {{ .name }}
|
||||
mountPath: {{ .path }}
|
||||
{{- if .subPath}}
|
||||
subPath: {{ .subPath }}
|
||||
{{- end }}
|
||||
readOnly: true
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
|
||||
@@ -1,15 +1,31 @@
|
||||
{{- define "common.volumesRef.tpl" -}}
|
||||
{{- if or (or (.Values.volumes) (.Values.sealedFileSecrets)) .Values.fileSecrets }}
|
||||
{{- if or (or (or (.Values.volumes) (.Values.sealedFileSecrets)) .Values.fileSecrets) .Values.existingFileSecrets }}
|
||||
volumes:
|
||||
{{- range .Values.volumes }}
|
||||
- name: {{ .name }}
|
||||
{{- if .emptyDir }}
|
||||
emptyDir: {}
|
||||
{{- else if .existingConfigMap }}
|
||||
configMap:
|
||||
name: {{ .existingConfigMap }}
|
||||
{{- else if .fileName }}
|
||||
configMap:
|
||||
name: {{ template "common.robustName" .fileName }}
|
||||
{{- else if .hostPath }}
|
||||
hostPath:
|
||||
path: {{ .hostPath.path }}
|
||||
{{- if .hostPath.type }}
|
||||
type: {{ .hostPath.type }}
|
||||
{{- end }}
|
||||
{{- else }}
|
||||
persistentVolumeClaim:
|
||||
{{- if .existingClaim }}
|
||||
claimName: {{ .existingClaim }}
|
||||
{{ else }}
|
||||
claimName: {{ printf "%s-%s" $.Release.Name .name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- range .Values.sealedFileSecrets }}
|
||||
- name: {{ .name }}
|
||||
secret:
|
||||
@@ -20,5 +36,10 @@ volumes:
|
||||
secret:
|
||||
secretName: {{ printf "%s-%s" $.Release.Name .name }}
|
||||
{{- end }}
|
||||
{{- range .Values.existingFileSecrets }}
|
||||
- name: {{ .name }}
|
||||
secret:
|
||||
secretName: {{ .name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
digest: sha256:636a65e9846bdff17cc4e65b0849061f783759a37aa51fb85ff6fd8ba5e68467
|
||||
generated: "2021-08-05T10:18:17.533366128+02:00"
|
||||
version: 0.2.0
|
||||
digest: sha256:ea028bf07fdc361daabca0c0155e4511cc4fffda94d2f697f4d16013f250c8a8
|
||||
generated: "2023-02-17T15:14:21.719376584+01:00"
|
||||
|
||||
@@ -15,9 +15,9 @@ type: application
|
||||
# This is the chart version. This version number should be incremented each time you make changes
|
||||
# to the chart and its templates, including the app version.
|
||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||
version: 0.34.0
|
||||
version: 0.47.0
|
||||
|
||||
dependencies:
|
||||
- name: common
|
||||
version: 0.1.0
|
||||
version: 0.2.0
|
||||
repository: file://../common
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -1,4 +1,4 @@
|
||||
apiVersion: batch/v1beta1
|
||||
apiVersion: batch/v1
|
||||
kind: CronJob
|
||||
metadata:
|
||||
name: {{ .Release.Name }}
|
||||
|
||||
@@ -15,4 +15,4 @@ type: application
|
||||
# This is the chart version. This version number should be incremented each time you make changes
|
||||
# to the chart and its templates, including the app version.
|
||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||
version: 0.2.0
|
||||
version: 0.3.0
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
namespaces:
|
||||
- name: staging
|
||||
quota:
|
||||
cpu: 32
|
||||
memory: "64Gi"
|
||||
storage: "500Gi"
|
||||
overcommit:
|
||||
cpu: 1
|
||||
memory: 1
|
||||
podMaximumResources:
|
||||
cpu: 4
|
||||
memory: "8Gi"
|
||||
podDefaultResources:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
podResourceOvercommit:
|
||||
cpu: 2
|
||||
memory: 1
|
||||
@@ -1,22 +1,5 @@
|
||||
{{- range .Values.namespaces }}
|
||||
{{- $limits := $.Values.pod.limits }}
|
||||
{{- if .pod }}
|
||||
{{- if .pod.limits }}
|
||||
{{- $limits = .pod.limits }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- $overcommit := $.Values.pod.overcommit }}
|
||||
{{- if .pod }}
|
||||
{{- if .pod.overcommit }}
|
||||
{{- $overcommit = .pod.overcommit }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- $defaults := $.Values.pod.defaults }}
|
||||
{{- if .pod }}
|
||||
{{- if .pod.defaults }}
|
||||
{{- $defaults = .pod.defaults }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if and .podMaximumResources (and .podDefaultResources .podResourceOvercommit) }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: LimitRange
|
||||
@@ -26,19 +9,26 @@ metadata:
|
||||
spec:
|
||||
limits:
|
||||
- type: Container
|
||||
{{- if .podMaximumResources }}
|
||||
max:
|
||||
cpu: 4
|
||||
memory: "8Gi"
|
||||
min:
|
||||
cpu: "100m"
|
||||
memory: "50Mi"
|
||||
cpu: {{ .podMaximumResources.cpu }}
|
||||
memory: {{ .podMaximumResources.memory }}
|
||||
{{- end }}
|
||||
{{- if .podDefaultResources }}
|
||||
default:
|
||||
cpu: {{ $defaults.cpu }}
|
||||
memory: {{ $defaults.memory }}
|
||||
cpu: {{ .podDefaultResources.cpu }}
|
||||
memory: {{ .podDefaultResources.memory }}
|
||||
defaultRequest:
|
||||
cpu: {{ $defaults.cpu }}
|
||||
memory: {{ $defaults.memory }}
|
||||
cpu: {{ .podDefaultResources.cpu }}
|
||||
memory: {{ .podDefaultResources.memory }}
|
||||
{{- end }}
|
||||
maxLimitRequestRatio:
|
||||
cpu: {{ $overcommit.cpu }}
|
||||
memory: {{ $overcommit.memory }}
|
||||
{{- if .podResourceOvercommit }}
|
||||
cpu: {{ .podResourceOvercommit.cpu }}
|
||||
memory: {{ .podResourceOvercommit.memory }}
|
||||
{{ else }}
|
||||
cpu: 1
|
||||
memory: 1
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
@@ -4,8 +4,8 @@ apiVersion: v1
|
||||
kind: Namespace
|
||||
metadata:
|
||||
name: {{ .name }}
|
||||
{{- if .annotations }}
|
||||
annotations:
|
||||
{{- if .annotations }}
|
||||
{{- toYaml .annotations | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
@@ -1,16 +1,5 @@
|
||||
{{- range .Values.namespaces }}
|
||||
{{- $budget := $.Values.namespace.budget }}
|
||||
{{- if .namespace }}
|
||||
{{- if .namespace.budget }}
|
||||
{{- $budget = .namespace.budget }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- $overcommit := $.Values.namespace.overcommit }}
|
||||
{{- if .namespace }}
|
||||
{{- if .namespace.overcommit }}
|
||||
{{- $overcommit = .namespace.overcommit }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- if and .quota .overcommit }}
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: ResourceQuota
|
||||
@@ -18,9 +7,10 @@ metadata:
|
||||
name: {{ .name }}
|
||||
spec:
|
||||
hard:
|
||||
limits.cpu: {{ $budget.cpu | mul $overcommit.cpu }}
|
||||
limits.memory: {{ $budget.memory | regexFind "[1-9]+" | mul $overcommit.memory }}{{ $budget.memory | regexFind "[a-zA-Z]+" }}
|
||||
requests.cpu: {{ $budget.cpu }}
|
||||
requests.memory: {{ $budget.memory }}
|
||||
requests.storage: {{ $budget.storage }}
|
||||
limits.cpu: {{ .quota.cpu | mul .overcommit.cpu }}
|
||||
limits.memory: {{ .quota.memory | regexFind "[1-9]+" | mul .overcommit.memory }}{{ .quota.memory | regexFind "[a-zA-Z]+" }}
|
||||
requests.cpu: {{ .quota.cpu }}
|
||||
requests.memory: {{ .quota.memory }}
|
||||
requests.storage: {{ .quota.storage }}
|
||||
{{- end }}
|
||||
{{- end -}}
|
||||
|
||||
@@ -2,52 +2,19 @@ suite: test deployment
|
||||
templates:
|
||||
- limit-range.yaml
|
||||
tests:
|
||||
- it: Should set default limits
|
||||
set:
|
||||
pod:
|
||||
limits:
|
||||
cpu: 4
|
||||
memory: "8Gi"
|
||||
defaults:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
overcommit:
|
||||
cpu: 10
|
||||
memory: 2
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.limits
|
||||
value:
|
||||
- type: Container
|
||||
max:
|
||||
cpu: 4
|
||||
memory: "8Gi"
|
||||
min:
|
||||
cpu: "100m"
|
||||
memory: "50Mi"
|
||||
default:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
defaultRequest:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
maxLimitRequestRatio:
|
||||
cpu: 10
|
||||
memory: 2
|
||||
- it: Should set namespace specific limits
|
||||
set:
|
||||
namespaces:
|
||||
- name: staging
|
||||
pod:
|
||||
limits:
|
||||
cpu: 4
|
||||
memory: "8Gi"
|
||||
defaults:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
overcommit:
|
||||
cpu: 10
|
||||
memory: 2
|
||||
podMaximumResources:
|
||||
cpu: 4
|
||||
memory: "8Gi"
|
||||
podDefaultResources:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
podResourceOvercommit:
|
||||
cpu: 2
|
||||
memory: 1
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.limits
|
||||
@@ -56,9 +23,6 @@ tests:
|
||||
max:
|
||||
cpu: 4
|
||||
memory: "8Gi"
|
||||
min:
|
||||
cpu: "100m"
|
||||
memory: "50Mi"
|
||||
default:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
@@ -66,5 +30,5 @@ tests:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
maxLimitRequestRatio:
|
||||
cpu: 10
|
||||
memory: 2
|
||||
cpu: 2
|
||||
memory: 1
|
||||
|
||||
@@ -10,3 +10,10 @@ tests:
|
||||
- equal:
|
||||
path: metadata.name
|
||||
value: staging
|
||||
- it: Should not set annotations if none provided in values
|
||||
set:
|
||||
namespaces:
|
||||
- name: staging
|
||||
asserts:
|
||||
- isNull:
|
||||
path: metadata.annotations
|
||||
|
||||
@@ -2,16 +2,37 @@ suite: test deployment
|
||||
templates:
|
||||
- resource-quota.yaml
|
||||
tests:
|
||||
- it: Should set default quota values
|
||||
- it: Should set namespace specific quotas
|
||||
set:
|
||||
namespace:
|
||||
budget:
|
||||
cpu: 32
|
||||
memory: "64Gi"
|
||||
storage: "500Gi"
|
||||
overcommit:
|
||||
cpu: 2
|
||||
memory: 1
|
||||
namespaces:
|
||||
- name: staging
|
||||
quota:
|
||||
cpu: 32
|
||||
memory: "64Gi"
|
||||
storage: "500Gi"
|
||||
overcommit:
|
||||
cpu: 1
|
||||
memory: 1
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.hard
|
||||
value:
|
||||
limits.cpu: 32
|
||||
limits.memory: "64Gi"
|
||||
requests.cpu: 32
|
||||
requests.memory: "64Gi"
|
||||
requests.storage: "500Gi"
|
||||
- it: Should handle overcommit
|
||||
set:
|
||||
namespaces:
|
||||
- name: staging
|
||||
quota:
|
||||
cpu: 32
|
||||
memory: "64Gi"
|
||||
storage: "500Gi"
|
||||
overcommit:
|
||||
cpu: 2
|
||||
memory: 1
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.hard
|
||||
@@ -21,29 +42,3 @@ tests:
|
||||
requests.cpu: 32
|
||||
requests.memory: "64Gi"
|
||||
requests.storage: "500Gi"
|
||||
- it: Should set namespace specific quotas
|
||||
set:
|
||||
namespaces:
|
||||
- name: staging
|
||||
namespace:
|
||||
budget:
|
||||
cpu: 8
|
||||
memory: "16Gi"
|
||||
storage: "100Gi"
|
||||
namespace:
|
||||
budget:
|
||||
cpu: 32
|
||||
memory: "64Gi"
|
||||
storage: "500Gi"
|
||||
overcommit:
|
||||
cpu: 2
|
||||
memory: 1
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.hard
|
||||
value:
|
||||
limits.cpu: 16
|
||||
limits.memory: "16Gi"
|
||||
requests.cpu: 8
|
||||
requests.memory: "16Gi"
|
||||
requests.storage: "100Gi"
|
||||
|
||||
@@ -1,715 +0,0 @@
|
||||
{
|
||||
"$schema": "http://json-schema.org/draft-07/schema",
|
||||
"$id": "http://example.com/example.json",
|
||||
"type": "object",
|
||||
"title": "The root schema",
|
||||
"description": "The root schema comprises the entire JSON document.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"namespaces": [
|
||||
{
|
||||
"name": "staging",
|
||||
"namespace": {
|
||||
"budget": {
|
||||
"cpu": 32,
|
||||
"memory": "64Gi",
|
||||
"storage": "500Gi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 2,
|
||||
"memory": 1
|
||||
}
|
||||
},
|
||||
"pod": {
|
||||
"limits": {
|
||||
"cpu": 4,
|
||||
"memory": "8Gi"
|
||||
},
|
||||
"defaults": {
|
||||
"cpu": "200m",
|
||||
"memory": "200Mi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 10,
|
||||
"memory": 2
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"namespace": {
|
||||
"budget": {
|
||||
"cpu": 32,
|
||||
"memory": "64Gi",
|
||||
"storage": "500Gi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 2,
|
||||
"memory": 1
|
||||
}
|
||||
},
|
||||
"pod": {
|
||||
"limits": {
|
||||
"cpu": 4,
|
||||
"memory": "8Gi"
|
||||
},
|
||||
"defaults": {
|
||||
"cpu": "200m",
|
||||
"memory": "200Mi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 10,
|
||||
"memory": 2
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"namespaces",
|
||||
"namespace",
|
||||
"pod"
|
||||
],
|
||||
"properties": {
|
||||
"namespaces": {
|
||||
"$id": "#/properties/namespaces",
|
||||
"type": "array",
|
||||
"title": "The namespaces schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": [],
|
||||
"examples": [
|
||||
[
|
||||
{
|
||||
"name": "staging",
|
||||
"namespace": {
|
||||
"budget": {
|
||||
"cpu": 32,
|
||||
"memory": "64Gi",
|
||||
"storage": "500Gi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 2,
|
||||
"memory": 1
|
||||
}
|
||||
},
|
||||
"pod": {
|
||||
"limits": {
|
||||
"cpu": 4,
|
||||
"memory": "8Gi"
|
||||
},
|
||||
"defaults": {
|
||||
"cpu": "200m",
|
||||
"memory": "200Mi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 10,
|
||||
"memory": 2
|
||||
}
|
||||
}
|
||||
}
|
||||
]
|
||||
],
|
||||
"additionalItems": true,
|
||||
"items": {
|
||||
"$id": "#/properties/namespaces/items",
|
||||
"anyOf": [
|
||||
{
|
||||
"$id": "#/properties/namespaces/items/anyOf/0",
|
||||
"type": "object",
|
||||
"title": "The first anyOf schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"name": "staging",
|
||||
"namespace": {
|
||||
"budget": {
|
||||
"cpu": 32,
|
||||
"memory": "64Gi",
|
||||
"storage": "500Gi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 2,
|
||||
"memory": 1
|
||||
}
|
||||
},
|
||||
"pod": {
|
||||
"limits": {
|
||||
"cpu": 4,
|
||||
"memory": "8Gi"
|
||||
},
|
||||
"defaults": {
|
||||
"cpu": "200m",
|
||||
"memory": "200Mi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 10,
|
||||
"memory": 2
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"name",
|
||||
"namespace",
|
||||
"pod"
|
||||
],
|
||||
"properties": {
|
||||
"name": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/name",
|
||||
"type": "string",
|
||||
"title": "The name schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"staging"
|
||||
]
|
||||
},
|
||||
"namespace": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/namespace",
|
||||
"type": "object",
|
||||
"title": "The namespace schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"budget": {
|
||||
"cpu": 32,
|
||||
"memory": "64Gi",
|
||||
"storage": "500Gi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 2,
|
||||
"memory": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"budget",
|
||||
"overcommit"
|
||||
],
|
||||
"properties": {
|
||||
"budget": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/namespace/properties/budget",
|
||||
"type": "object",
|
||||
"title": "The budget schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": 32,
|
||||
"memory": "64Gi",
|
||||
"storage": "500Gi"
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory",
|
||||
"storage"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/namespace/properties/budget/properties/cpu",
|
||||
"type": "integer",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
32
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/namespace/properties/budget/properties/memory",
|
||||
"type": "string",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"64Gi"
|
||||
]
|
||||
},
|
||||
"storage": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/namespace/properties/budget/properties/storage",
|
||||
"type": "string",
|
||||
"title": "The storage schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"500Gi"
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
},
|
||||
"overcommit": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/namespace/properties/overcommit",
|
||||
"type": "object",
|
||||
"title": "The overcommit schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": 2,
|
||||
"memory": 1
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/namespace/properties/overcommit/properties/cpu",
|
||||
"type": "integer",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
2
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/namespace/properties/overcommit/properties/memory",
|
||||
"type": "integer",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
1
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
},
|
||||
"pod": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod",
|
||||
"type": "object",
|
||||
"title": "The pod schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"limits": {
|
||||
"cpu": 4,
|
||||
"memory": "8Gi"
|
||||
},
|
||||
"defaults": {
|
||||
"cpu": "200m",
|
||||
"memory": "200Mi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 10,
|
||||
"memory": 2
|
||||
}
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"limits",
|
||||
"defaults",
|
||||
"overcommit"
|
||||
],
|
||||
"properties": {
|
||||
"limits": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod/properties/limits",
|
||||
"type": "object",
|
||||
"title": "The limits schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": 4,
|
||||
"memory": "8Gi"
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod/properties/limits/properties/cpu",
|
||||
"type": "integer",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
4
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod/properties/limits/properties/memory",
|
||||
"type": "string",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"8Gi"
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
},
|
||||
"defaults": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod/properties/defaults",
|
||||
"type": "object",
|
||||
"title": "The defaults schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": "200m",
|
||||
"memory": "200Mi"
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod/properties/defaults/properties/cpu",
|
||||
"type": "string",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"200m"
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod/properties/defaults/properties/memory",
|
||||
"type": "string",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"200Mi"
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
},
|
||||
"overcommit": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod/properties/overcommit",
|
||||
"type": "object",
|
||||
"title": "The overcommit schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": 10,
|
||||
"memory": 2
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod/properties/overcommit/properties/cpu",
|
||||
"type": "integer",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
10
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/namespaces/items/anyOf/0/properties/pod/properties/overcommit/properties/memory",
|
||||
"type": "integer",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
2
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"namespace": {
|
||||
"$id": "#/properties/namespace",
|
||||
"type": "object",
|
||||
"title": "The namespace schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"budget": {
|
||||
"cpu": 32,
|
||||
"memory": "64Gi",
|
||||
"storage": "500Gi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 2,
|
||||
"memory": 1
|
||||
}
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"budget",
|
||||
"overcommit"
|
||||
],
|
||||
"properties": {
|
||||
"budget": {
|
||||
"$id": "#/properties/namespace/properties/budget",
|
||||
"type": "object",
|
||||
"title": "The budget schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": 32,
|
||||
"memory": "64Gi",
|
||||
"storage": "500Gi"
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory",
|
||||
"storage"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/namespace/properties/budget/properties/cpu",
|
||||
"type": "integer",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
32
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/namespace/properties/budget/properties/memory",
|
||||
"type": "string",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"64Gi"
|
||||
]
|
||||
},
|
||||
"storage": {
|
||||
"$id": "#/properties/namespace/properties/budget/properties/storage",
|
||||
"type": "string",
|
||||
"title": "The storage schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"500Gi"
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
},
|
||||
"overcommit": {
|
||||
"$id": "#/properties/namespace/properties/overcommit",
|
||||
"type": "object",
|
||||
"title": "The overcommit schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": 2,
|
||||
"memory": 1
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/namespace/properties/overcommit/properties/cpu",
|
||||
"type": "integer",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
2
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/namespace/properties/overcommit/properties/memory",
|
||||
"type": "integer",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
1
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
},
|
||||
"pod": {
|
||||
"$id": "#/properties/pod",
|
||||
"type": "object",
|
||||
"title": "The pod schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"limits": {
|
||||
"cpu": 4,
|
||||
"memory": "8Gi"
|
||||
},
|
||||
"defaults": {
|
||||
"cpu": "200m",
|
||||
"memory": "200Mi"
|
||||
},
|
||||
"overcommit": {
|
||||
"cpu": 10,
|
||||
"memory": 2
|
||||
}
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"limits",
|
||||
"defaults",
|
||||
"overcommit"
|
||||
],
|
||||
"properties": {
|
||||
"limits": {
|
||||
"$id": "#/properties/pod/properties/limits",
|
||||
"type": "object",
|
||||
"title": "The limits schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": 4,
|
||||
"memory": "8Gi"
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/pod/properties/limits/properties/cpu",
|
||||
"type": "integer",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
4
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/pod/properties/limits/properties/memory",
|
||||
"type": "string",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"8Gi"
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
},
|
||||
"defaults": {
|
||||
"$id": "#/properties/pod/properties/defaults",
|
||||
"type": "object",
|
||||
"title": "The defaults schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": "200m",
|
||||
"memory": "200Mi"
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/pod/properties/defaults/properties/cpu",
|
||||
"type": "string",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"200m"
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/pod/properties/defaults/properties/memory",
|
||||
"type": "string",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"200Mi"
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
},
|
||||
"overcommit": {
|
||||
"$id": "#/properties/pod/properties/overcommit",
|
||||
"type": "object",
|
||||
"title": "The overcommit schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"cpu": 10,
|
||||
"memory": 2
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"cpu",
|
||||
"memory"
|
||||
],
|
||||
"properties": {
|
||||
"cpu": {
|
||||
"$id": "#/properties/pod/properties/overcommit/properties/cpu",
|
||||
"type": "integer",
|
||||
"title": "The cpu schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
10
|
||||
]
|
||||
},
|
||||
"memory": {
|
||||
"$id": "#/properties/pod/properties/overcommit/properties/memory",
|
||||
"type": "integer",
|
||||
"title": "The memory schema",
|
||||
"description": "An explanation about the purpose of this instance.",
|
||||
"default": 0,
|
||||
"examples": [
|
||||
2
|
||||
]
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
}
|
||||
},
|
||||
"additionalProperties": true
|
||||
}
|
||||
@@ -1,40 +1 @@
|
||||
namespaces:
|
||||
- name: staging
|
||||
namespace:
|
||||
budget:
|
||||
cpu: 32
|
||||
memory: "64Gi"
|
||||
storage: "500Gi"
|
||||
overcommit:
|
||||
cpu: 2
|
||||
memory: 1
|
||||
pod:
|
||||
limits:
|
||||
cpu: 4
|
||||
memory: "8Gi"
|
||||
defaults:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
overcommit:
|
||||
cpu: 10
|
||||
memory: 2
|
||||
|
||||
namespace:
|
||||
budget:
|
||||
cpu: 32
|
||||
memory: "64Gi"
|
||||
storage: "500Gi"
|
||||
overcommit:
|
||||
cpu: 2
|
||||
memory: 1
|
||||
|
||||
pod:
|
||||
limits:
|
||||
cpu: 4
|
||||
memory: "8Gi"
|
||||
defaults:
|
||||
cpu: "200m"
|
||||
memory: "200Mi"
|
||||
overcommit:
|
||||
cpu: 10
|
||||
memory: 2
|
||||
namespaces: []
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
digest: sha256:636a65e9846bdff17cc4e65b0849061f783759a37aa51fb85ff6fd8ba5e68467
|
||||
generated: "2021-08-05T10:39:10.053810673+02:00"
|
||||
version: 0.2.0
|
||||
digest: sha256:ea028bf07fdc361daabca0c0155e4511cc4fffda94d2f697f4d16013f250c8a8
|
||||
generated: "2023-02-17T15:13:57.926786542+01:00"
|
||||
|
||||
@@ -15,9 +15,9 @@ type: application
|
||||
# This is the chart version. This version number should be incremented each time you make changes
|
||||
# to the chart and its templates, including the app version.
|
||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||
version: 0.34.0
|
||||
version: 0.47.0
|
||||
|
||||
dependencies:
|
||||
- name: common
|
||||
version: 0.1.0
|
||||
version: 0.2.0
|
||||
repository: file://../common
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@@ -112,7 +112,18 @@
|
||||
"schemaIDs": [
|
||||
"#/properties/volumes"
|
||||
],
|
||||
"uiSchema": {},
|
||||
"uiSchema": {
|
||||
"#/properties/volumes": {
|
||||
"items": {
|
||||
"emptyDir": {
|
||||
"ui:widget": "hidden"
|
||||
},
|
||||
"configMapValue": {
|
||||
"ui:widget": "textarea"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"metaData": {
|
||||
"name": "Volumes",
|
||||
"icon": "M4 7v10c0 2.21 3.582 4 8 4s8-1.79 8-4V7M4 7c0 2.21 3.582 4 8 4s8-1.79 8-4M4 7c0-2.21 3.582-4 8-4s8 1.79 8 4m0 5c0 2.21-3.582 4-8 4s-8-1.79-8-4"
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
{{- include "common.customFileConfigmap.tpl" . -}}
|
||||
@@ -5,10 +5,11 @@ metadata:
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "helm-chart.labels" . | nindent 4 }}
|
||||
{{- if .Values.gitSha }}
|
||||
annotations:
|
||||
kubectl.kubernetes.io/default-container: {{ template "robustName" .Release.Name }}
|
||||
{{- if .Values.gitSha }}
|
||||
gimlet.io/git-sha: {{ .Values.gitSha }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicas }}
|
||||
selector:
|
||||
@@ -49,6 +50,26 @@ spec:
|
||||
{{- if .Values.serviceAccount }}
|
||||
serviceAccountName: {{ .Values.serviceAccount }}
|
||||
{{- end }}
|
||||
initContainers:
|
||||
{{- range .Values.initContainers }}
|
||||
- name: {{ .name }}
|
||||
image: "{{ .image }}:{{ .tag }}"
|
||||
imagePullPolicy: {{ .imagePullPolicy | default "IfNotPresent" }}
|
||||
{{- include "common.envFromRef.tpl" $ | nindent 10 }}
|
||||
{{- if .command }}
|
||||
command:
|
||||
- {{ $.Values.shell }}
|
||||
- -c
|
||||
- {{ .command | quote}}
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
{{- range $.Values.volumes }}
|
||||
{{if (or (hasPrefix "shared-" .name) (hasPrefix "init-" .name))}}
|
||||
- mountPath: {{ .path }}
|
||||
name: {{ .name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
containers:
|
||||
- name: {{ template "robustName" .Release.Name }}
|
||||
securityContext: &securityContext
|
||||
@@ -95,8 +116,10 @@ spec:
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
{{- include "common.volumeMountsRef.tpl" . | nindent 10 }}
|
||||
{{- if not .Values.resources.ignore }}
|
||||
resources:
|
||||
{{- toYaml .Values.resources | nindent 12 }}
|
||||
{{- end }}
|
||||
{{- if .Values.sidecar }}
|
||||
- name: {{ template "robustName" .Release.Name }}-sidecar
|
||||
securityContext: *securityContext
|
||||
|
||||
@@ -0,0 +1,3 @@
|
||||
{{- if .Values.extraDeploy }}
|
||||
{{ .Values.extraDeploy }}
|
||||
{{- end }}
|
||||
@@ -1,5 +1,5 @@
|
||||
{{- if and (.Values.podDisruptionBudgetEnabled) (gt (.Values.replicas | int64) 1) }}
|
||||
apiVersion: policy/v1beta1
|
||||
apiVersion: policy/v1
|
||||
kind: PodDisruptionBudget
|
||||
metadata:
|
||||
name: {{ template "robustName" .Release.Name }}
|
||||
|
||||
@@ -0,0 +1,22 @@
|
||||
suite: test deployment
|
||||
templates:
|
||||
- custom-file-configmap.yaml
|
||||
tests:
|
||||
- it: Should create configmaps for custom string files
|
||||
set:
|
||||
volumes:
|
||||
- fileName: myFile.conf
|
||||
fileContent: |
|
||||
blablabla
|
||||
bla
|
||||
path: /randomPath/myFile.conf
|
||||
subPath: myFile.conf
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 1
|
||||
- equal:
|
||||
path: data
|
||||
value:
|
||||
myFile.conf: |
|
||||
blablabla
|
||||
bla
|
||||
@@ -0,0 +1,44 @@
|
||||
suite: test deployment
|
||||
templates:
|
||||
- deployment.yaml
|
||||
- configmap.yaml
|
||||
- pvc.yaml
|
||||
tests:
|
||||
- it: Should mount volume
|
||||
set:
|
||||
existingFileSecrets:
|
||||
- name: my-existing-secret
|
||||
path: /config
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- name: my-existing-secret
|
||||
mountPath: /config
|
||||
readOnly: true
|
||||
- it: Should mount volume with optional subPath
|
||||
set:
|
||||
existingFileSecrets:
|
||||
- name: my-existing-secret
|
||||
path: /config/config.yaml
|
||||
subPath: config.yml
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- name: my-existing-secret
|
||||
mountPath: /config/config.yaml
|
||||
subPath: config.yml
|
||||
readOnly: true
|
||||
- it: Should reference volume
|
||||
set:
|
||||
existingFileSecrets:
|
||||
- name: my-existing-secret
|
||||
path: /config
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: my-existing-secret
|
||||
secret:
|
||||
secretName: my-existing-secret
|
||||
@@ -0,0 +1,31 @@
|
||||
suite: test deployment
|
||||
templates:
|
||||
- deployment.yaml
|
||||
- configmap.yaml
|
||||
tests:
|
||||
- it: Should set name, image and tag
|
||||
set:
|
||||
initContainers:
|
||||
- name: pod1
|
||||
image: nginx
|
||||
tag: 1.2.2
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.initContainers[0].name
|
||||
value: pod1
|
||||
- equal:
|
||||
path: spec.template.spec.initContainers[0].image
|
||||
value: "nginx:1.2.2"
|
||||
- it: Should set command
|
||||
set:
|
||||
initContainers:
|
||||
- command: "while true; do date; sleep 2; done &&
|
||||
ls /data &&
|
||||
printf something"
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.initContainers[0].command
|
||||
value: ['/bin/sh', '-c', 'while true; do date; sleep 2; done && ls /data && printf something']
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
suite: test deployment
|
||||
templates:
|
||||
- deployment.yaml
|
||||
- configmap.yaml
|
||||
tests:
|
||||
- it: Should render resoucres if not ignored by default
|
||||
set:
|
||||
{}
|
||||
asserts:
|
||||
- isNotNull:
|
||||
path: spec.template.spec.containers[0].resources
|
||||
- it: Should ignore resources if ignore flag is set
|
||||
set:
|
||||
resources:
|
||||
ignore: true
|
||||
asserts:
|
||||
- isNull:
|
||||
path: spec.template.spec.containers[0].resources
|
||||
@@ -74,3 +74,148 @@ tests:
|
||||
- name: data
|
||||
persistentVolumeClaim:
|
||||
claimName: my-static-claim
|
||||
- it: Should use emptyDir
|
||||
set:
|
||||
volumes:
|
||||
- name: data
|
||||
path: /var/lib/1clickinfra/data
|
||||
emptyDir: true
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: data
|
||||
emptyDir: {}
|
||||
- it: Should use hostPath
|
||||
set:
|
||||
volumes:
|
||||
- name: data
|
||||
path: /var/lib/1clickinfra/data
|
||||
hostPath:
|
||||
path: /somewhere/over/the/rainbow
|
||||
type: DirectoryOrCreate
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: data
|
||||
hostPath:
|
||||
path: /somewhere/over/the/rainbow
|
||||
type: DirectoryOrCreate
|
||||
- it: Should use hostPath without type
|
||||
set:
|
||||
volumes:
|
||||
- name: data
|
||||
path: /var/lib/1clickinfra/data
|
||||
hostPath:
|
||||
path: /somewhere/over/the/rainbow
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: data
|
||||
hostPath:
|
||||
path: /somewhere/over/the/rainbow
|
||||
- it: Should use emptyDir
|
||||
set:
|
||||
volumes:
|
||||
- name: myScratchDisk
|
||||
path: /randomPath
|
||||
emptyDir: true
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: myScratchDisk
|
||||
emptyDir: {}
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- name: myScratchDisk
|
||||
mountPath: /randomPath
|
||||
- it: Should use a configMap
|
||||
set:
|
||||
volumes:
|
||||
- existingConfigMap: my-configmap
|
||||
name: volume-name
|
||||
path: /randomPath/app.conf
|
||||
subPath: app.conf
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: volume-name
|
||||
configMap:
|
||||
name: my-configmap
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- name: volume-name
|
||||
mountPath: /randomPath/app.conf
|
||||
subPath: app.conf
|
||||
- it: Should use a configmap with custom value
|
||||
set:
|
||||
volumes:
|
||||
- name: volume-name
|
||||
fileName: myfile.conf
|
||||
fileContent: |
|
||||
blablabla
|
||||
bla
|
||||
path: /randomPath/myfile.conf
|
||||
subPath: myfile.conf
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: volume-name
|
||||
configMap:
|
||||
name: myfile-conf
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- name: volume-name
|
||||
mountPath: /randomPath/myfile.conf
|
||||
subPath: myfile.conf
|
||||
- it: Should mount a volume only for the init container
|
||||
set:
|
||||
initContainers:
|
||||
- name : pod
|
||||
volumes:
|
||||
- name: init-volume
|
||||
path: /data
|
||||
emptyDir: true
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.volumes
|
||||
value:
|
||||
- name: init-volume
|
||||
emptyDir: {}
|
||||
- equal:
|
||||
path: spec.template.spec.initContainers[0].volumeMounts
|
||||
value:
|
||||
- name: init-volume
|
||||
mountPath: /data
|
||||
- notEqual:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- name: init-volume
|
||||
emptyDir: {}
|
||||
- it: Should mount a shared volume between the main container and the init container
|
||||
set:
|
||||
initContainers:
|
||||
- name: pod
|
||||
volumes:
|
||||
- name: shared-volume
|
||||
path: /data
|
||||
emptyDir: true
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.initContainers[0].volumeMounts
|
||||
value:
|
||||
- name: shared-volume
|
||||
mountPath: /data
|
||||
- equal:
|
||||
path: spec.template.spec.containers[0].volumeMounts
|
||||
value:
|
||||
- name: shared-volume
|
||||
mountPath: /data
|
||||
|
||||
@@ -0,0 +1,57 @@
|
||||
suite: test service
|
||||
templates:
|
||||
- extraDeploy.yaml
|
||||
tests:
|
||||
- it: Should include additional yaml pieces
|
||||
set:
|
||||
extraDeploy: |
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: NetworkPolicy
|
||||
metadata:
|
||||
name: test-network-policy
|
||||
namespace: default
|
||||
spec:
|
||||
podSelector:
|
||||
matchLabels:
|
||||
role: db
|
||||
policyTypes:
|
||||
- Ingress
|
||||
- Egress
|
||||
ingress:
|
||||
- from:
|
||||
- ipBlock:
|
||||
cidr: 172.17.0.0/16
|
||||
except:
|
||||
- 172.17.1.0/24
|
||||
- namespaceSelector:
|
||||
matchLabels:
|
||||
project: myproject
|
||||
- podSelector:
|
||||
matchLabels:
|
||||
role: frontend
|
||||
ports:
|
||||
- protocol: TCP
|
||||
port: 6379
|
||||
egress:
|
||||
- to:
|
||||
- ipBlock:
|
||||
cidr: 10.0.0.0/24
|
||||
ports:
|
||||
- protocol: TCP
|
||||
port: 5978
|
||||
asserts:
|
||||
- equal:
|
||||
path: kind
|
||||
value: NetworkPolicy
|
||||
- it: Should include multiple yaml pieces
|
||||
set:
|
||||
extraDeploy: |
|
||||
---
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: NetworkPolicy
|
||||
---
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: NetworkPolicy
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 2
|
||||
@@ -13,6 +13,20 @@ tests:
|
||||
- equal:
|
||||
path: spec.storageClassName
|
||||
value: default
|
||||
- it: Should assign annotations to the PVC
|
||||
set:
|
||||
volumes:
|
||||
- name: data
|
||||
path: /var/lib/1clickinfra/data
|
||||
size: 10Gi
|
||||
storageClass: default
|
||||
pvcAnnotations:
|
||||
rancher.io/local-path/volume-type: local
|
||||
asserts:
|
||||
- equal:
|
||||
path: metadata.annotations
|
||||
value:
|
||||
rancher.io/local-path/volume-type: local
|
||||
- it: Should not generate a claim when using existing claim
|
||||
set:
|
||||
volumes:
|
||||
@@ -22,3 +36,13 @@ tests:
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 0
|
||||
- it: Should not generate a claim when using host path
|
||||
set:
|
||||
volumes:
|
||||
- name: data
|
||||
path: /var/lib/1clickinfra/data
|
||||
hostPath:
|
||||
path: /data/test
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 0
|
||||
|
||||
@@ -84,6 +84,53 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"initContainers": {
|
||||
"$id": "#/properties/initcontainers",
|
||||
"type": "array",
|
||||
"title": "Init Containers",
|
||||
"default": [],
|
||||
"additionalItems": true,
|
||||
"items": {
|
||||
"$id": "#/properties/initcontainers/items",
|
||||
"type": "object",
|
||||
"anyOf": [
|
||||
{
|
||||
"id": "#/properties/volumes/oneOf/0",
|
||||
"title": "InitContainer",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"description": "The name of the init container"
|
||||
},
|
||||
"image": {
|
||||
"type": "string",
|
||||
"title": "Image"
|
||||
},
|
||||
"tag": {
|
||||
"type": "string",
|
||||
"title": "Tag"
|
||||
},
|
||||
"imagePullPolicy": {
|
||||
"type": "string",
|
||||
"title": "Command",
|
||||
"default": "IfNotPresent"
|
||||
},
|
||||
"command": {
|
||||
"type": "string",
|
||||
"title": "Command"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"image",
|
||||
"tag"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"replicas": {
|
||||
"$id": "#/properties/replicas",
|
||||
"type": "integer",
|
||||
@@ -226,6 +273,16 @@
|
||||
],
|
||||
"required": [],
|
||||
"properties": {
|
||||
"ignore": {
|
||||
"$id": "#/properties/resources/properties/ignore",
|
||||
"type": "boolean",
|
||||
"title": "Ignore",
|
||||
"description": "If set to true, resource configuration will be ignored",
|
||||
"default": false,
|
||||
"examples": [
|
||||
true
|
||||
]
|
||||
},
|
||||
"requests": {
|
||||
"$id": "#/properties/resources/properties/requests",
|
||||
"type": "object",
|
||||
@@ -672,7 +729,7 @@
|
||||
"$id": "#/properties/ingress/properties/annotations",
|
||||
"type": "object",
|
||||
"title": "Annotations",
|
||||
"description": "",
|
||||
"description": "Annotations are used to control ingress behavior. See the full list for the Ingress Nginx project at https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/. Use the `cert-manager.io/cluster-issuer:\"letsencrypt\"` one to request TLS certificates, `kubernetes.io/ingress.class: \"nginx\"` to select an ingress controller.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
@@ -683,6 +740,49 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"existingFileSecrets": {
|
||||
"$id": "#/properties/existingFileSecrets",
|
||||
"type": "array",
|
||||
"title": "Existing file secrets",
|
||||
"description": "Allows to mount existing secrets into a container",
|
||||
"default": [],
|
||||
"additionalItems": true,
|
||||
"items": {
|
||||
"$id": "#/properties/existingFileSecrets/items",
|
||||
"type": "object",
|
||||
"anyOf": [
|
||||
{
|
||||
"id": "#/properties/existingFileSecrets/oneOf/0",
|
||||
"title": "existingFileSecrets",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"description": "The name of the existing secret to mount",
|
||||
"default": "data"
|
||||
},
|
||||
"path": {
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The mount path inside the container",
|
||||
"default": "/data"
|
||||
},
|
||||
"subPath": {
|
||||
"type": "string",
|
||||
"title": "SubPath",
|
||||
"description": "The optinal mount subpath inside the container, to only mount a specific file but not a complete directory.",
|
||||
"default": "config.yaml"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"path"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"volumes": {
|
||||
"$id": "#/properties/volumes",
|
||||
"type": "array",
|
||||
@@ -692,64 +792,70 @@
|
||||
"items": {
|
||||
"$id": "#/properties/volumes/items",
|
||||
"type": "object",
|
||||
"oneOf": [
|
||||
"anyOf": [
|
||||
{
|
||||
"id": "#/properties/volumes/oneOf/0",
|
||||
"title": "Volume",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"$id": "#/properties/volumes/items/anyOf/0/properties/name",
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"description": "The name of the volume. Used only to recognize the volumes purpose in the config later on",
|
||||
"default": "data"
|
||||
},
|
||||
"path": {
|
||||
"$id": "#/properties/volumes/items/anyOf/0/properties/path",
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The mount path inside the container",
|
||||
"default": "/data"
|
||||
},
|
||||
"size": {
|
||||
"$id": "#/properties/volumes/items/anyOf/0/properties/size",
|
||||
"type": "string",
|
||||
"title": "Size",
|
||||
"description": "",
|
||||
"default": "10Gi"
|
||||
},
|
||||
"storageClass": {
|
||||
"$id": "#/properties/volumes/items/anyOf/0/properties/storageClass",
|
||||
"type": "string",
|
||||
"title": "Storage Class",
|
||||
"description": "The slug indicating the disk type in your cloud provider. `standard` on Google Cloud, `default` on Azure; `do-block-storage` on Digital Ocean",
|
||||
"default": ""
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name", "path", "size"
|
||||
]
|
||||
},
|
||||
{
|
||||
"title": "Use existing volume claim",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"$id": "#/properties/volumes/items/anyOf/0/properties/name",
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"description": "The name of the volume. Used only to recognize the volumes purpose in the config later on",
|
||||
"default": "data"
|
||||
},
|
||||
"path": {
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The mount path inside the container",
|
||||
"default": "/data"
|
||||
},
|
||||
"size": {
|
||||
"type": "string",
|
||||
"title": "Size",
|
||||
"description": "eg: 10Gi"
|
||||
},
|
||||
"storageClass": {
|
||||
"type": "string",
|
||||
"title": "Storage Class",
|
||||
"description": "The slug indicating the disk type in your cloud provider. `standard` on Google Cloud, `default` on Azure; `do-block-storage` on Digital Ocean"
|
||||
},
|
||||
"pvcAnnotations": {
|
||||
"type": "object",
|
||||
"title": "Annotations",
|
||||
"description": "Annotations are used to control the persistance claim behavior.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"rancher.io/local-path/volume-type": "local"
|
||||
}
|
||||
],
|
||||
"additionalProperties": true
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"path",
|
||||
"size"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "#/properties/volumes/oneOf/1",
|
||||
"title": "Use an existing volume claim",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"description": "The name of the volume. Used only to recognize the volumes purpose in the config later on",
|
||||
"default": "data"
|
||||
},
|
||||
"existingClaim": {
|
||||
"$id": "#/properties/volumes/items/anyOf/0/properties/existingClaim",
|
||||
"type": "string",
|
||||
"title": "Existing Claim",
|
||||
"description": "Use an existing PersistentVolumeClaim",
|
||||
"default": ""
|
||||
"description": "Use an existing PersistentVolumeClaim"
|
||||
},
|
||||
"path": {
|
||||
"$id": "#/properties/volumes/items/anyOf/0/properties/path",
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The mount path inside the container",
|
||||
@@ -757,7 +863,145 @@
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name", "path", "existingClaim"
|
||||
"name",
|
||||
"path",
|
||||
"existingClaim"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "#/properties/volumes/oneOf/2",
|
||||
"title": "Use a path from the host",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"description": "The name of the volume. Used only to recognize the volumes purpose in the config later on",
|
||||
"default": "data"
|
||||
},
|
||||
"hostPath": {
|
||||
"type": "object",
|
||||
"title": "Path on the host",
|
||||
"description": "Use a physical path on the host machine",
|
||||
"properties": {
|
||||
"path": {
|
||||
"type": "string",
|
||||
"title": "Path on Host",
|
||||
"description": "Use a physical path on the host machine"
|
||||
},
|
||||
"type": {
|
||||
"type": "string",
|
||||
"title": "Path Type",
|
||||
"enum": [
|
||||
"DirectoryOrCreate",
|
||||
"Directory",
|
||||
"FileOrCreate",
|
||||
"File",
|
||||
"Socket",
|
||||
"CharDevice",
|
||||
"BlockDevice"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"path"
|
||||
]
|
||||
},
|
||||
"path": {
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The mount path inside the container",
|
||||
"default": "/data"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"path",
|
||||
"hostPath"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "#/properties/volumes/oneOf/3",
|
||||
"title": "Use an ephemeral volume",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"name": {
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"default": "ephemeral-volume"
|
||||
},
|
||||
"emptyDir": {
|
||||
"type": "boolean",
|
||||
"title": "ephemeral volume (emptyDir)",
|
||||
"description": "Enable to use a non-persistent disk",
|
||||
"default": true
|
||||
},
|
||||
"path": {
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The mount path inside the container",
|
||||
"default": "/data"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"name",
|
||||
"emptyDir",
|
||||
"path"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "#/properties/volumes/oneOf/4",
|
||||
"title": "Mount an existing configMap as a file",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"existingConfigMap": {
|
||||
"type": "string",
|
||||
"title": "Name",
|
||||
"description": "The name of the configMap to mount",
|
||||
"default": "data"
|
||||
},
|
||||
"path": {
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The mount path inside the container",
|
||||
"default": "/data/dummy.conf"
|
||||
},
|
||||
"subPath": {
|
||||
"type": "string",
|
||||
"title": "subPath",
|
||||
"description": "Mount single file",
|
||||
"default": "dummy.conf"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"existingConfigMap",
|
||||
"path"
|
||||
]
|
||||
},
|
||||
{
|
||||
"id": "#/properties/volumes/oneOf/5",
|
||||
"title": "Custom string to mount as a file",
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"fileName": {
|
||||
"type": "string",
|
||||
"title": "File name"
|
||||
},
|
||||
"fileContent": {
|
||||
"type": "string",
|
||||
"title": "File content"
|
||||
},
|
||||
"path": {
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The mount path inside the container",
|
||||
"default": "/data"
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"fileName",
|
||||
"fileContent",
|
||||
"path"
|
||||
]
|
||||
}
|
||||
]
|
||||
|
||||
@@ -3,6 +3,16 @@ image:
|
||||
tag: "latest"
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
# ingress:
|
||||
# host: chart-example.local
|
||||
# ingressClassName: nginx
|
||||
# tlsEnabled: true
|
||||
# annotations:
|
||||
# cert-manager.io/cluster-issuer: letsencrypt-staging
|
||||
|
||||
# vars:
|
||||
# MY_VAR: "value"
|
||||
|
||||
replicas: 1
|
||||
|
||||
nameOverride: ""
|
||||
|
||||
@@ -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,18 @@
|
||||
apiVersion: v2
|
||||
name: static-site
|
||||
description: Chart to build and deploy static sites
|
||||
# A chart can be either an 'application' or a 'library' chart.
|
||||
#
|
||||
# Application charts are a collection of templates that can be packaged into versioned archives
|
||||
# to be deployed.
|
||||
#
|
||||
# Library charts provide useful utilities or functions for the chart developer. They're included as
|
||||
# a dependency of application charts to inject those utilities and functions into the rendering
|
||||
# pipeline. Library charts do not define any templates and therefore cannot be deployed.
|
||||
type: application
|
||||
|
||||
# This is the chart version. This version number should be incremented each time you make changes
|
||||
# to the chart and its templates, including the app version.
|
||||
# Versions are expected to follow Semantic Versioning (https://semver.org/)
|
||||
version: 0.1.0
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
[
|
||||
{
|
||||
"schemaIDs": [
|
||||
"#/properties/gitCloneUrl",
|
||||
"#/properties/buildImage",
|
||||
"#/properties/buildTag",
|
||||
"#/properties/buildScript",
|
||||
"#/properties/builtAssets"
|
||||
|
||||
],
|
||||
"uiSchema": {
|
||||
"#/properties/buildScript":{
|
||||
"ui:widget": "textarea"
|
||||
}
|
||||
},
|
||||
"metaData": {
|
||||
"name": "Build",
|
||||
"icon": "M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01"
|
||||
}
|
||||
},
|
||||
{
|
||||
"schemaIDs": [
|
||||
"#/properties/ingress"
|
||||
],
|
||||
"uiSchema": {},
|
||||
"metaData": {
|
||||
"name": "Ingress",
|
||||
"icon": "M13.828 10.172a4 4 0 00-5.656 0l-4 4a4 4 0 105.656 5.656l1.102-1.101m-.758-4.899a4 4 0 005.656 0l4-4a4 4 0 00-5.656-5.656l-1.1 1.1"
|
||||
}
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1 @@
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
{{/*
|
||||
Expand the name of the chart.
|
||||
*/}}
|
||||
{{- define "staticSite.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 "staticSite.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 "staticSite.chart" -}}
|
||||
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Common labels
|
||||
*/}}
|
||||
{{- define "staticSite.labels" -}}
|
||||
helm.sh/chart: {{ include "staticSite.chart" . }}
|
||||
{{ include "staticSite.selectorLabels" . }}
|
||||
{{- if .Chart.AppVersion }}
|
||||
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
|
||||
{{- end }}
|
||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Selector labels
|
||||
*/}}
|
||||
{{- define "staticSite.selectorLabels" -}}
|
||||
app.kubernetes.io/name: {{ include "staticSite.name" . }}
|
||||
app.kubernetes.io/instance: {{ .Release.Name }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create the name of the service account to use
|
||||
*/}}
|
||||
{{- define "staticSite.serviceAccountName" -}}
|
||||
{{- if .Values.serviceAccount.create }}
|
||||
{{- default (include "staticSite.fullname" .) .Values.serviceAccount.name }}
|
||||
{{- else }}
|
||||
{{- default "default" .Values.serviceAccount.name }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
|
||||
{{/*
|
||||
Create robustName that can be used as Kubernetes resource name, and as subdomain as well
|
||||
\w – Latin letters, digits, underscore '_' .
|
||||
\W – all but \w .
|
||||
*/}}
|
||||
{{- define "robustName" -}}
|
||||
{{ regexReplaceAll "\\W+" . "-" | replace "_" "-" | lower | trunc 63 | trimSuffix "-" }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,61 @@
|
||||
apiVersion: apps/v1
|
||||
kind: Deployment
|
||||
metadata:
|
||||
name: {{ template "robustName" .Release.Name }}
|
||||
namespace: {{ .Release.Namespace }}
|
||||
labels:
|
||||
{{- include "staticSite.labels" . | nindent 4 }}
|
||||
spec:
|
||||
replicas: {{ .Values.replicaCount }}
|
||||
selector:
|
||||
matchLabels:
|
||||
{{- include "staticSite.selectorLabels" . | nindent 6 }}
|
||||
template:
|
||||
metadata:
|
||||
{{- with .Values.podAnnotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
labels:
|
||||
{{- include "staticSite.selectorLabels" . | nindent 8 }}
|
||||
spec:
|
||||
{{- with .Values.imagePullSecrets }}
|
||||
imagePullSecrets:
|
||||
{{- toYaml . | nindent 8 }}
|
||||
{{- end }}
|
||||
serviceAccountName: {{ template "robustName" .Release.Name }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.podSecurityContext | nindent 8 }}
|
||||
volumes:
|
||||
- name: static-files
|
||||
emptyDir: {}
|
||||
initContainers:
|
||||
- name: init-con
|
||||
image: {{ .Values.buildImage }}:{{ .Values.buildTag }}
|
||||
{{- if .Values.buildScript }}
|
||||
command:
|
||||
- sh
|
||||
- -c
|
||||
- |
|
||||
git clone {{ .Values.gitCloneUrl}} &&
|
||||
cd {{ regexFind "([^\\/]+$)" .Values.gitCloneUrl | replace ".git" "" }} &&
|
||||
{{ .Values.buildScript | nindent 12}}
|
||||
mkdir -p /usr/share/nginx/html &&
|
||||
cp -r ./{{ .Values.builtAssets }}. /usr/share/nginx/html
|
||||
{{- end }}
|
||||
volumeMounts:
|
||||
- name: static-files
|
||||
mountPath: /usr/share/nginx/html
|
||||
containers:
|
||||
- name: {{ template "robustName" .Release.Name }}
|
||||
securityContext:
|
||||
{{- toYaml .Values.securityContext | nindent 12 }}
|
||||
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
|
||||
imagePullPolicy: {{ .Values.image.pullPolicy }}
|
||||
volumeMounts:
|
||||
- name: static-files
|
||||
mountPath: /usr/share/nginx/html
|
||||
ports:
|
||||
- name: http
|
||||
containerPort: {{ .Values.service.port }}
|
||||
protocol: TCP
|
||||
@@ -0,0 +1,52 @@
|
||||
{{/* OneChart ingress snippet */}}
|
||||
{{- define "onechart.ingress" }}
|
||||
{{- $robustName := include "robustName" .root.Release.Name -}}
|
||||
{{- $resourceName := $robustName -}}
|
||||
{{- if .longName }}
|
||||
{{- $resourceName = printf "%s-%s" $robustName (include "robustName" .ingress.host) -}}
|
||||
{{- end }}
|
||||
---
|
||||
apiVersion: networking.k8s.io/v1
|
||||
kind: Ingress
|
||||
metadata:
|
||||
name: {{ $resourceName }}
|
||||
namespace: {{ .root.Release.Namespace }}
|
||||
labels:
|
||||
{{- include "staticSite.labels" .root | nindent 4 }}
|
||||
{{- if or (or .root.Values.gitSha .ingress.annotations) .root.Values.gitRepository }}
|
||||
annotations:
|
||||
{{- if .ingress.annotations }}
|
||||
{{- toYaml .ingress.annotations | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
spec:
|
||||
{{- if .ingress.ingressClassName }}
|
||||
ingressClassName: {{ .ingress.ingressClassName }}
|
||||
{{- end }}
|
||||
{{- if default false .ingress.tlsEnabled }}
|
||||
tls:
|
||||
- hosts:
|
||||
- {{ .ingress.host | quote }}
|
||||
secretName: {{ printf "tls-%s" $resourceName }}
|
||||
{{- end }}
|
||||
rules:
|
||||
- host: {{ .ingress.host | quote }}
|
||||
http:
|
||||
paths:
|
||||
- path: {{ .ingress.path | default "/" | quote }}
|
||||
pathType: "Prefix"
|
||||
backend:
|
||||
service:
|
||||
name: {{ $robustName }}
|
||||
port:
|
||||
number: {{ .root.Values.service.port }}
|
||||
{{- end }}
|
||||
|
||||
{{- with .Values.ingress }}
|
||||
{{- template "onechart.ingress" (dict "root" $ "ingress" .) }}
|
||||
{{- end }}
|
||||
|
||||
{{- range .Values.ingresses }}
|
||||
{{template "onechart.ingress" (dict "root" $ "ingress" . "longName" true) }}
|
||||
{{- end }}
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: {{ template "robustName" .Release.Name }}
|
||||
labels:
|
||||
{{- include "staticSite.labels" . | nindent 4 }}
|
||||
spec:
|
||||
type: {{ .Values.service.type }}
|
||||
ports:
|
||||
- port: {{ .Values.service.port }}
|
||||
targetPort: http
|
||||
protocol: TCP
|
||||
name: http
|
||||
selector:
|
||||
{{- include "staticSite.selectorLabels" . | nindent 4 }}
|
||||
@@ -0,0 +1,12 @@
|
||||
{{- if .Values.serviceAccount.create -}}
|
||||
apiVersion: v1
|
||||
kind: ServiceAccount
|
||||
metadata:
|
||||
name: {{ template "robustName" .Release.Name }}
|
||||
labels:
|
||||
{{- include "staticSite.labels" . | nindent 4 }}
|
||||
{{- with .Values.serviceAccount.annotations }}
|
||||
annotations:
|
||||
{{- toYaml . | nindent 4 }}
|
||||
{{- end }}
|
||||
{{- end }}
|
||||
@@ -0,0 +1,15 @@
|
||||
suite: test deployment
|
||||
templates:
|
||||
- deployment.yaml
|
||||
tests:
|
||||
- it: Should set image, tag and command
|
||||
set:
|
||||
gitCloneUrl: https:/github.com/mycompany/myrepo.git
|
||||
buildImage: nginx
|
||||
buildTag: x.y.z
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.template.spec.initContainers[0].image
|
||||
value: nginx:x.y.z
|
||||
|
||||
|
||||
@@ -0,0 +1,120 @@
|
||||
suite: test deployment
|
||||
templates:
|
||||
- ingress.yaml
|
||||
tests:
|
||||
- it: Should set Ingress host name
|
||||
set:
|
||||
ingress:
|
||||
host: chart-example.local
|
||||
tlsEnabled: true
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.tls
|
||||
value:
|
||||
- hosts:
|
||||
- chart-example.local
|
||||
secretName: tls-release-name
|
||||
- equal:
|
||||
path: spec.rules
|
||||
value:
|
||||
- host: chart-example.local
|
||||
http:
|
||||
paths:
|
||||
- path: "/"
|
||||
pathType: "Prefix"
|
||||
backend:
|
||||
service:
|
||||
name: release-name
|
||||
port:
|
||||
number: 80
|
||||
- it: Should pass ingress host name as is, user must sanitize it
|
||||
set:
|
||||
ingress:
|
||||
host: feature/my_branch.local
|
||||
tlsEnabled: true
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.tls
|
||||
value:
|
||||
- hosts:
|
||||
- feature/my_branch.local
|
||||
secretName: tls-release-name
|
||||
- equal:
|
||||
path: spec.rules
|
||||
value:
|
||||
- host: feature/my_branch.local
|
||||
http:
|
||||
paths:
|
||||
- path: "/"
|
||||
pathType: "Prefix"
|
||||
backend:
|
||||
service:
|
||||
name: release-name
|
||||
port:
|
||||
number: 80
|
||||
- it: Should set Ingress annotation
|
||||
set:
|
||||
ingress:
|
||||
host: chart-example.local
|
||||
annotations:
|
||||
just/a-random: annotation
|
||||
asserts:
|
||||
- equal:
|
||||
path: metadata.annotations
|
||||
value:
|
||||
just/a-random: annotation
|
||||
- it: Should set ingress class
|
||||
set:
|
||||
ingress:
|
||||
host: chart-example.local
|
||||
ingressClassName: nginx
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.ingressClassName
|
||||
value: nginx
|
||||
- it: Should generate multiple ingresses
|
||||
set:
|
||||
ingresses:
|
||||
- host: chart-example.local
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: nginx
|
||||
- host: another.local
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: nginx
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 2
|
||||
- it: Should generate multiple ingresses
|
||||
set:
|
||||
ingress:
|
||||
host: chart-example.local
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: nginx
|
||||
ingresses:
|
||||
- host: chart-example.local
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: nginx
|
||||
- host: another.local
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: nginx
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 3
|
||||
- it: Should have unique TLS secret names
|
||||
set:
|
||||
ingresses:
|
||||
- host: chart-example.local
|
||||
tlsEnabled: true
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: nginx
|
||||
- host: another.local
|
||||
tlsEnabled: true
|
||||
annotations:
|
||||
kubernetes.io/ingress.class: nginx
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.tls
|
||||
value:
|
||||
- hosts:
|
||||
- chart-example.local
|
||||
secretName: tls-release-name-chart-example-local
|
||||
@@ -0,0 +1,21 @@
|
||||
suite: test ingress
|
||||
templates:
|
||||
- ingress.yaml
|
||||
tests:
|
||||
- it: Should default
|
||||
set:
|
||||
ingress:
|
||||
host: chart-example.local
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.rules[0].http.paths[0].path
|
||||
value: "/"
|
||||
- it: Should use path
|
||||
set:
|
||||
ingress:
|
||||
host: chart-example.local
|
||||
path: "/mypath"
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.rules[0].http.paths[0].path
|
||||
value: "/mypath"
|
||||
@@ -0,0 +1,12 @@
|
||||
suite: test deployment
|
||||
templates:
|
||||
- ingress.yaml
|
||||
tests:
|
||||
- it: Should use service port
|
||||
set:
|
||||
ingress:
|
||||
host: chart-example.local
|
||||
asserts:
|
||||
- equal:
|
||||
path: spec.rules[0].http.paths[0].backend.service.port.number
|
||||
value: 1234
|
||||
@@ -0,0 +1,125 @@
|
||||
{
|
||||
"$schema": "http://json-schema.org/draft-07/schema",
|
||||
"$id": "http://example.com/example.json",
|
||||
"type": "object",
|
||||
"title": "The root schema",
|
||||
"description": "The root schema comprises the entire JSON document.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"gitCloneUrl": "https://github.com/gimlet-io/hugo-site.git",
|
||||
"buildImage": "node",
|
||||
"buildTag": "latest",
|
||||
"buildScript": "npm install && npm install -g gatsby-cli && gatsby build",
|
||||
"builtAssets": "public/"
|
||||
}
|
||||
],
|
||||
"required": [
|
||||
"gitCloneUrl",
|
||||
"buildImage",
|
||||
"buildTag",
|
||||
"buildScript",
|
||||
"builtAssets"
|
||||
],
|
||||
"properties": {
|
||||
"gitCloneUrl": {
|
||||
"$id": "#/properties/gitCloneUrl",
|
||||
"type": "string",
|
||||
"title": "Repo url",
|
||||
"description": "The static site's git repository",
|
||||
"default": "https://github.com/gimlet-io/hugo-site.git"
|
||||
},
|
||||
"buildImage": {
|
||||
"$id": "#/properties/buildImage",
|
||||
"type": "string",
|
||||
"title": "Build image",
|
||||
"description": "The image that will be used for the build proccess",
|
||||
"default":"bitnami/git"
|
||||
},
|
||||
"buildTag": {
|
||||
"$id": "#/properties/buildTag",
|
||||
"type": "string",
|
||||
"title": "Image tag",
|
||||
"default": "latest"
|
||||
},
|
||||
"buildScript": {
|
||||
"$id": "#/properties/buildScript",
|
||||
"type": "string",
|
||||
"title": "Build script",
|
||||
"description": "Commands required for the build to be completed",
|
||||
"default": "# !/usr/bin/env bash\n# pre -reqs\napt-get update && apt-get install -y wget\n\n# Setting up Hugo \nwget https://github.com/gohugoio/hugo/releases/download/v0.111.3/hugo_0.111.3_Linux-64bit.tar.gz &&\ntar -xzf hugo_0.111.3_Linux-64bit.tar.gz &&\nchmod +x hugo\n\n./hugo"
|
||||
|
||||
},
|
||||
"builtAssets": {
|
||||
"$id": "#/properties/builtAssets",
|
||||
"type": "string",
|
||||
"title": "Built assets",
|
||||
"description": "The folder containing the build's generated files",
|
||||
"default": "public/"
|
||||
},
|
||||
"ingress": {
|
||||
"$id": "#/properties/ingress",
|
||||
"type": "object",
|
||||
"title": "Incoming traffic",
|
||||
"description": "",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"tlsEnabled": false,
|
||||
"annotations": {
|
||||
"kubernetes.io/ingress.class": "nginx"
|
||||
},
|
||||
"host": "my-release.mycompany.com"
|
||||
}
|
||||
],
|
||||
"required": [],
|
||||
"properties": {
|
||||
"host": {
|
||||
"$id": "#/properties/ingress/properties/host",
|
||||
"type": "string",
|
||||
"title": "Host Name",
|
||||
"description": "Where your application will be accessible",
|
||||
"default": "",
|
||||
"examples": [
|
||||
"my-release.mycompany.com"
|
||||
]
|
||||
},
|
||||
"path": {
|
||||
"$id": "#/properties/ingress/properties/ingressPath",
|
||||
"type": "string",
|
||||
"title": "Path",
|
||||
"description": "The API path where your service is accessible",
|
||||
"default": "/",
|
||||
"examples": [
|
||||
"/api/myservice"
|
||||
]
|
||||
},
|
||||
"tlsEnabled": {
|
||||
"$id": "#/properties/ingress/properties/tlsEnabled",
|
||||
"type": "boolean",
|
||||
"title": "HTTPS",
|
||||
"description": "",
|
||||
"default": false,
|
||||
"examples": [
|
||||
false
|
||||
]
|
||||
},
|
||||
"annotations": {
|
||||
"$id": "#/properties/ingress/properties/annotations",
|
||||
"type": "object",
|
||||
"title": "Annotations",
|
||||
"description": "Annotations are used to control ingress behavior. See the full list for the Ingress Nginx project at https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/. Use the `cert-manager.io/cluster-issuer:\"letsencrypt\"` one to request TLS certificates, `kubernetes.io/ingress.class: \"nginx\"` to select an ingress controller.",
|
||||
"default": {},
|
||||
"examples": [
|
||||
{
|
||||
"kubernetes.io/ingress.class": "nginx"
|
||||
}
|
||||
],
|
||||
"additionalProperties": true
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
},
|
||||
"additionalProperties": true
|
||||
}
|
||||
@@ -0,0 +1,79 @@
|
||||
# Default values for static-site.
|
||||
# This is a YAML-formatted file.
|
||||
# Declare variables to be passed into your templates.
|
||||
|
||||
replicaCount: 1
|
||||
|
||||
image:
|
||||
repository: nginx
|
||||
tag: latest
|
||||
pullPolicy: IfNotPresent
|
||||
|
||||
imagePullSecrets: []
|
||||
nameOverride: ""
|
||||
fullnameOverride: ""
|
||||
|
||||
serviceAccount:
|
||||
# Specifies whether a service account should be created
|
||||
create: true
|
||||
# Annotations to add to the service account
|
||||
annotations: {}
|
||||
# The name of the service account to use.
|
||||
# If not set and create is true, a name is generated using the fullname template
|
||||
name: ""
|
||||
|
||||
podAnnotations: {}
|
||||
|
||||
podSecurityContext: {}
|
||||
# fsGroup: 2000
|
||||
|
||||
securityContext:
|
||||
# capabilities:
|
||||
# drop:
|
||||
# - ALL
|
||||
# readOnlyRootFilesystem: true
|
||||
# runAsNonRoot: true
|
||||
runAsUser: 0
|
||||
|
||||
service:
|
||||
type: ClusterIP
|
||||
port: 80
|
||||
|
||||
# ingress:
|
||||
# host: dummyapp.127.0.0.1.nip.io
|
||||
# ingressClassName: nginx
|
||||
# tlsEnabled: false
|
||||
# annotations:
|
||||
# cert-manager.io/cluster-issuer: letsencrypt-staging
|
||||
|
||||
|
||||
resources:
|
||||
requests:
|
||||
cpu: 200m
|
||||
memory: 200Mi
|
||||
limits:
|
||||
cpu: 200m
|
||||
memory: 200Mi
|
||||
|
||||
nodeSelector: {}
|
||||
|
||||
tolerations: []
|
||||
|
||||
affinity: {}
|
||||
|
||||
# values to build and deploy static sites
|
||||
gitCloneUrl: https://github.com/gimlet-io/hugo-site.git
|
||||
buildImage: bitnami/git # the image must have git installed
|
||||
buildTag: latest
|
||||
buildScript: |
|
||||
# !/usr/bin/env bash
|
||||
# pre -reqs
|
||||
apt-get update && apt-get install -y wget
|
||||
|
||||
# Setting up Hugo
|
||||
wget https://github.com/gohugoio/hugo/releases/download/v0.111.3/hugo_0.111.3_Linux-64bit.tar.gz &&
|
||||
tar -xzf hugo_0.111.3_Linux-64bit.tar.gz &&
|
||||
chmod +x hugo
|
||||
|
||||
./hugo
|
||||
builtAssets: public/
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+457
-65
@@ -2,7 +2,189 @@ apiVersion: v1
|
||||
entries:
|
||||
cron-job:
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.643450597Z"
|
||||
created: "2023-03-30T12:04:56.106345761Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: ccb38e7b1d22b8829c4436cd25d91650a6b03f56b333a0ac87afd992dd6d57a0
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.46.0.tgz
|
||||
version: 0.46.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.105778066Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 22bbb11f3c5ff5c7618cda3d311bef56a3bef0223292d61c7b4380cc5dab37f4
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.45.0.tgz
|
||||
version: 0.45.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.105221872Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: d87617be659d439d5c5fabc45cc9a8277cb86b97b99118ae1d9d05c74e807e5f
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.44.0.tgz
|
||||
version: 0.44.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.104648777Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 66e0c493901d433dc9db3b186c7fbae7018cd2dc0ddc7cab70a146496c706601
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.43.0.tgz
|
||||
version: 0.43.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.104066483Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: abf83fbf901cd5bf40a3875eb3ed3490ef7ad7535bd07a797fb1cfb87ba7ad4d
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.42.0.tgz
|
||||
version: 0.42.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.103501888Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: dafa5373aa5e5153fa6be65a3d09b1ad6db2316f76889b4168fe81d3ed38484b
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.41.0.tgz
|
||||
version: 0.41.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.102968094Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 13750b39f8fecf72bd7a94bffbc6700e2c10df73527d7f8878cc7adbe0e86dbf
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.40.0.tgz
|
||||
version: 0.40.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.102404899Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 6fb6e912f104fddced69577eae37b884496d6d3ca469adb3cf9c21a119c1f5a2
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.39.0.tgz
|
||||
version: 0.39.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.101783205Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 677111225bcba92cf711236c19ff7c41e203de2074c054a036275d55c99ede03
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.38.0.tgz
|
||||
version: 0.38.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.101094212Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 0b4e969d361df6daafe5d267c1f2ff4c1aede3423c18255eaa2a489600dd31f9
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.37.0.tgz
|
||||
version: 0.37.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.099472328Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 938ddcad76bc85b54870129bb042c6b5faab5e60f23fe79ac22fe9ea58686e03
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.36.0.tgz
|
||||
version: 0.36.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.09823384Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 9e864df616e71481dadadc9e39c08ae8d5dcc47ebc3e77158a81044dc4027d6c
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.35.0.tgz
|
||||
version: 0.35.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.097696145Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 39e0d49e0e53c56911c4122541a454e1d87df444c80e9580c31330a4d0ea0299
|
||||
name: cron-job
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/cron-job-0.34.0.tgz
|
||||
version: 0.34.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.09716805Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -16,7 +198,7 @@ entries:
|
||||
- https://chart.onechart.dev/cron-job-0.33.0.tgz
|
||||
version: 0.33.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.642788775Z"
|
||||
created: "2023-03-30T12:04:56.096634355Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -30,7 +212,7 @@ entries:
|
||||
- https://chart.onechart.dev/cron-job-0.32.0.tgz
|
||||
version: 0.32.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.642073552Z"
|
||||
created: "2023-03-30T12:04:56.09609656Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -44,7 +226,7 @@ entries:
|
||||
- https://chart.onechart.dev/cron-job-0.2.2.tgz
|
||||
version: 0.2.2
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.641287726Z"
|
||||
created: "2023-03-30T12:04:56.095510866Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -58,7 +240,7 @@ entries:
|
||||
- https://chart.onechart.dev/cron-job-0.2.1.tgz
|
||||
version: 0.2.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.633587973Z"
|
||||
created: "2023-03-30T12:04:56.094932072Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -72,7 +254,7 @@ entries:
|
||||
- https://chart.onechart.dev/cron-job-0.2.0.tgz
|
||||
version: 0.2.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.632926652Z"
|
||||
created: "2023-03-30T12:04:56.094387477Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 02a23d8b4177290a518ee5de6a5e1f557f7409f94b2e04f23fedea193464188f
|
||||
@@ -82,7 +264,7 @@ entries:
|
||||
- https://chart.onechart.dev/cron-job-0.1.2.tgz
|
||||
version: 0.1.2
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.63257414Z"
|
||||
created: "2023-03-30T12:04:56.09412898Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: afab9ba533a4686827b54b0dad64f5bbf76f7fbc075e35fb1034689db9ab9dda
|
||||
@@ -92,7 +274,7 @@ entries:
|
||||
- https://chart.onechart.dev/cron-job-0.1.1.tgz
|
||||
version: 0.1.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.632239129Z"
|
||||
created: "2023-03-30T12:04:56.093816183Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 01f9fa40c1c4085d7688474ab00c9e9d21bd1d0793db6b75f2edda0e18456282
|
||||
@@ -103,16 +285,34 @@ entries:
|
||||
version: 0.1.0
|
||||
namespaces:
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.644105918Z"
|
||||
created: "2023-03-30T12:04:56.107534449Z"
|
||||
description: Chart to create namespaces and their defaults
|
||||
digest: 5af0819305a59b0b6009531d4a667a7219462407680ef5c6c3083bf13ef558a6
|
||||
digest: fc0d317e7482cb655990dc2cf1e703556bfe02394a3937462c4b18fce358aa72
|
||||
name: namespaces
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/namespaces-0.3.0.tgz
|
||||
version: 0.3.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.107327551Z"
|
||||
description: Chart to create namespaces and their defaults
|
||||
digest: a8e28dab9dc1a0044e75fbf8dd6d89c760c6fe9caa76bf16076cf5ecb311e808
|
||||
name: namespaces
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/namespaces-0.2.1.tgz
|
||||
version: 0.2.1
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.106912455Z"
|
||||
description: Chart to create namespaces and their defaults
|
||||
digest: 9539bfd2fde6d8f2b36ffec99c8a3a3eb7887462e98ee740b0ae0ea2b16b96b6
|
||||
name: namespaces
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/namespaces-0.2.0.tgz
|
||||
version: 0.2.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.643686805Z"
|
||||
created: "2023-03-30T12:04:56.106553359Z"
|
||||
description: Chart to create namespaces and their defaults
|
||||
digest: 88b06d78a9d1bda6f2ee15b1fad7f25399ac25c2320fb9a8dfa1a4fd14afdf6e
|
||||
name: namespaces
|
||||
@@ -122,7 +322,189 @@ entries:
|
||||
version: 0.1.0
|
||||
onechart:
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.685926191Z"
|
||||
created: "2023-03-30T12:04:56.161432425Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 3f5f552b4f8cdc72e26041dee2c20b1349552b9275530303a27f353a844e84df
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.46.0.tgz
|
||||
version: 0.46.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.160616833Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 8c59efd7ed0da48cc0cba293f518303715729ee2ddcd2d600292c14a6660e097
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.45.0.tgz
|
||||
version: 0.45.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.159736241Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: e84a1dde081eff22800ceec11aab3bc69b3fd16b39303f49ccff70c1c0570ee7
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.44.0.tgz
|
||||
version: 0.44.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.158907049Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 7a9a4fd45b9649090a1d15fd574dccfb36382bc98354e75e9034eb08efb4b2eb
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.43.0.tgz
|
||||
version: 0.43.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.158073257Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.2.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 9db2ac0e9e4df53f6cb2731bccb168cec9c3f676ef80c8dcaa709012a63814a5
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.42.0.tgz
|
||||
version: 0.42.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.157284565Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 79b8c435dd9736654f5023829223ebf3302a082db61f464cc4d2a5d631efe4b6
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.41.0.tgz
|
||||
version: 0.41.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.156297475Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 18c7611d7591b10d5f68a4ca44b4fecbc8b1635797b86053fe23bc0d2b71166c
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.40.0.tgz
|
||||
version: 0.40.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.155063787Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 99045bbe5babfa5be9f41de300f7044f690a1e0ae186ec19075c0485afd45b42
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.39.0.tgz
|
||||
version: 0.39.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.1536372Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 7e05eaddc56a29c6b762b36a485592ddb32f4cf1684dda79dc8fe069c34a68f2
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.38.0.tgz
|
||||
version: 0.38.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.152242714Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 8c79b4a9a53ce4b2d9bd5724b156fdeafa9f9604690c365592d4ddd87ce799d0
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.37.0.tgz
|
||||
version: 0.37.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.151466022Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 3882c5dad80044c1fd854e06ee329167c9635354a5f2ba1c20bd683c0c12090f
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.36.0.tgz
|
||||
version: 0.36.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.150699129Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 7392bba3467e4c28ffa4c868c7580852dd35dc7e0ff4956a2546adc06c7a29a7
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.35.0.tgz
|
||||
version: 0.35.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.149947336Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
version: 0.1.0
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 4eb83c83a38c56eb7883949186dc4e91c86da9dc51d6c1ffb962996004ddcd19
|
||||
name: onechart
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.34.0.tgz
|
||||
version: 0.34.0
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.149195344Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -136,7 +518,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.33.0.tgz
|
||||
version: 0.33.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.68498816Z"
|
||||
created: "2023-03-30T12:04:56.148447751Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -150,7 +532,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.32.0.tgz
|
||||
version: 0.32.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.683886524Z"
|
||||
created: "2023-03-30T12:04:56.147666959Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -164,7 +546,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.31.0.tgz
|
||||
version: 0.31.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.676261774Z"
|
||||
created: "2023-03-30T12:04:56.146934166Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -178,7 +560,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.30.0.tgz
|
||||
version: 0.30.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.674106603Z"
|
||||
created: "2023-03-30T12:04:56.14543228Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -192,7 +574,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.29.0.tgz
|
||||
version: 0.29.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.673328277Z"
|
||||
created: "2023-03-30T12:04:56.144378091Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -206,7 +588,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.28.0.tgz
|
||||
version: 0.28.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.672531551Z"
|
||||
created: "2023-03-30T12:04:56.128636644Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -220,7 +602,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.27.0.tgz
|
||||
version: 0.27.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.671787227Z"
|
||||
created: "2023-03-30T12:04:56.127905651Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -234,7 +616,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.27.0-rc3.tgz
|
||||
version: 0.27.0-rc3
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.671044102Z"
|
||||
created: "2023-03-30T12:04:56.127204458Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -248,7 +630,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.27.0-rc2.tgz
|
||||
version: 0.27.0-rc2
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.670256576Z"
|
||||
created: "2023-03-30T12:04:56.126503665Z"
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: file://../common
|
||||
@@ -262,7 +644,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.27.0-rc1.tgz
|
||||
version: 0.27.0-rc1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.669482551Z"
|
||||
created: "2023-03-30T12:04:56.125791971Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 3563a30dba0b6a9c7a1a3df358ca5c41e952882fd2f1bbe33c8103536870d651
|
||||
@@ -272,7 +654,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.26.0.tgz
|
||||
version: 0.26.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.668876931Z"
|
||||
created: "2023-03-30T12:04:56.125264377Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: efcbabde8193f1c3ecb34e4ede8f5efead1f77d8096180f4e8640ff94df07461
|
||||
@@ -282,7 +664,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.25.0.tgz
|
||||
version: 0.25.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.668323913Z"
|
||||
created: "2023-03-30T12:04:56.124738482Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 59f1389268efb3d970f84cae968e3ecbde57015df1201411f9f46becb4b09844
|
||||
@@ -292,7 +674,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.24.1.tgz
|
||||
version: 0.24.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.667740994Z"
|
||||
created: "2023-03-30T12:04:56.124205987Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 74b6fdf49a9fa5327fc0639f1d97f0cf553f89030c01379f3c91a5adb6f8a0f1
|
||||
@@ -302,7 +684,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.24.0.tgz
|
||||
version: 0.24.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.666823364Z"
|
||||
created: "2023-03-30T12:04:56.123639092Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: f8e444c2d5c5a4e73b76a971effda5246d3200427be45c2fb546bc990f197ecc
|
||||
@@ -312,7 +694,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.23.0.tgz
|
||||
version: 0.23.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.66608374Z"
|
||||
created: "2023-03-30T12:04:56.123108398Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: dfad2865c3eb54f0366300ef63b8ba1863ca69aa27e5ca5d3512c0d799d004d3
|
||||
@@ -322,7 +704,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.22.0.tgz
|
||||
version: 0.22.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.664409885Z"
|
||||
created: "2023-03-30T12:04:56.122494704Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 1b837cdefcb7025c40bffdd620a0f116df5ccb9023ac6a8c538bd8e77b3eb80a
|
||||
@@ -332,7 +714,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.21.0.tgz
|
||||
version: 0.21.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.663827666Z"
|
||||
created: "2023-03-30T12:04:56.120607222Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: a4f5741b46b89cd4328fbd96f96d85d53bae64b526730de5097ec33639c9c54f
|
||||
@@ -342,7 +724,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.20.0.tgz
|
||||
version: 0.20.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.662984038Z"
|
||||
created: "2023-03-30T12:04:56.118870839Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 59dd16db4f8519d3922da349aabcc2daec8385fc8a98d0f3163a84b98cc12f61
|
||||
@@ -352,7 +734,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.19.0.tgz
|
||||
version: 0.19.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.662420919Z"
|
||||
created: "2023-03-30T12:04:56.118195845Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 74c4c6a448e66929dfcafc5a641b5bdbaa8af6832c6065b02ce756dfeb3fc438
|
||||
@@ -362,7 +744,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.18.0.tgz
|
||||
version: 0.18.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.661763798Z"
|
||||
created: "2023-03-30T12:04:56.117592451Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: e1ba0bb54c3a3e13b661bb608839c7013d12e24d0437581ebfdbf5ce4a283d4d
|
||||
@@ -372,7 +754,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.17.0.tgz
|
||||
version: 0.17.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.653278219Z"
|
||||
created: "2023-03-30T12:04:56.117015057Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 596350a4977b305e4d5aae16dd8dcca62a17ea5cec9f444aacd82a12d6b3dcfe
|
||||
@@ -382,7 +764,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.16.0.tgz
|
||||
version: 0.16.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.652703Z"
|
||||
created: "2023-03-30T12:04:56.116460262Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: d1a5a9e9bff274f32f6849bc58b201c7886240b94dd6b70b5cf3411d9ad03393
|
||||
@@ -392,7 +774,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.15.3.tgz
|
||||
version: 0.15.3
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.652109181Z"
|
||||
created: "2023-03-30T12:04:56.115902168Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 626410479f67bbbfa7e7fc94f6dfd8aae50a2bdf9fc72ec395c835dacbd5dbe7
|
||||
@@ -402,7 +784,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.15.2.tgz
|
||||
version: 0.15.2
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.651506761Z"
|
||||
created: "2023-03-30T12:04:56.115390773Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: e6d237aff4abedee6deb5ba57e8183c7598b255d40afdd04c03f73014f706aa3
|
||||
@@ -412,7 +794,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.15.1.tgz
|
||||
version: 0.15.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.650953543Z"
|
||||
created: "2023-03-30T12:04:56.114882778Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: d45fc4cc214bc94e4c2c10d6432562d7e65ee5e55226f677aafdfe101d7f6e7f
|
||||
@@ -422,7 +804,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.15.0.tgz
|
||||
version: 0.15.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.650359424Z"
|
||||
created: "2023-03-30T12:04:56.114379083Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 7e61a72a3400e09c44539094558a2084621239015132d20551c4593be3b5bede
|
||||
@@ -432,7 +814,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.14.0.tgz
|
||||
version: 0.14.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.649765004Z"
|
||||
created: "2023-03-30T12:04:56.113889887Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 743a9b552233770713f0c22edbe8cf4f55c890a59106e1f33055c1cb31be5a27
|
||||
@@ -442,7 +824,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.13.2.tgz
|
||||
version: 0.13.2
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.648952377Z"
|
||||
created: "2023-03-30T12:04:56.113393792Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 02bf9537e13cea0da9dc3bfbcdd45d51576354cb18b7c1c7cec76f829e20105f
|
||||
@@ -452,7 +834,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.13.1.tgz
|
||||
version: 0.13.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.648302356Z"
|
||||
created: "2023-03-30T12:04:56.112911697Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 5183ed825c4f255ca5a4f0ffeb8c92bbad3c43b42fc1b798f1f1fc6de2a30bef
|
||||
@@ -462,7 +844,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.13.0.tgz
|
||||
version: 0.13.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.647343225Z"
|
||||
created: "2023-03-30T12:04:56.112437201Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: e131a502d12a6b074453f1da8d0d1ca7145e80a025f31252b24cc3d62375a4c1
|
||||
@@ -472,7 +854,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.12.2.tgz
|
||||
version: 0.12.2
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.646838508Z"
|
||||
created: "2023-03-30T12:04:56.111969206Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 8e1a25d18a546c4ec5e970991301a08e38495a964a8f6e0a2ee97f92c41c9691
|
||||
@@ -482,7 +864,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.12.1.tgz
|
||||
version: 0.12.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.646310991Z"
|
||||
created: "2023-03-30T12:04:56.111431511Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: f38a6f2fbf5c847b00a9140ecd004e0bf667d859aa83d8dac4a2d0eecd1a361f
|
||||
@@ -492,7 +874,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.12.0.tgz
|
||||
version: 0.12.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.645821375Z"
|
||||
created: "2023-03-30T12:04:56.110842317Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 75c16f84b5e99aad5aa7203f5c1ce2a9589d85b89afec4e161a2e0344a522c17
|
||||
@@ -502,7 +884,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.11.0.tgz
|
||||
version: 0.11.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.64538506Z"
|
||||
created: "2023-03-30T12:04:56.110286022Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 40f1166e858d35cb237debd1390187884641b0e8c29a80aaa195b66b0ee73516
|
||||
@@ -512,7 +894,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.10.0.tgz
|
||||
version: 0.10.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.68987482Z"
|
||||
created: "2023-03-30T12:04:56.16596978Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: cb42b08b463b401f6718bba7c171ee55c173021c5101ea1b3068ef3899a6e164
|
||||
@@ -522,7 +904,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.9.0.tgz
|
||||
version: 0.9.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.689418005Z"
|
||||
created: "2023-03-30T12:04:56.165556584Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: ce046d209a9e8fa07766712492cc896451473fafca129dbc9c675107d0e39c52
|
||||
@@ -532,7 +914,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.8.2.tgz
|
||||
version: 0.8.2
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.689017692Z"
|
||||
created: "2023-03-30T12:04:56.165179188Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 422d7e6ea1bed530d4cd5e23417b229772a6fe2e835828ca282a3e6c9b646b2b
|
||||
@@ -542,7 +924,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.8.1.tgz
|
||||
version: 0.8.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.688627779Z"
|
||||
created: "2023-03-30T12:04:56.164641393Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 8001bd02fc90ad66da7941c136ee8d0e665ea90b6e1ac27d82b048f2b12b3964
|
||||
@@ -552,7 +934,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.8.0.tgz
|
||||
version: 0.8.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.688224766Z"
|
||||
created: "2023-03-30T12:04:56.163842901Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: d1454b430eb7131d0d450f7c0a8a6698278893c61e03d48649a8112dfcf42b72
|
||||
@@ -562,7 +944,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.7.1.tgz
|
||||
version: 0.7.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.687858454Z"
|
||||
created: "2023-03-30T12:04:56.163381806Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 4bf90835f287917671ec40b5b395da9332cf18e70f248d250f8d5a72360dcb4e
|
||||
@@ -572,7 +954,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.7.0.tgz
|
||||
version: 0.7.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.687489942Z"
|
||||
created: "2023-03-30T12:04:56.162870011Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 0cade489fc74a040f5e7f71d01c6fa00d3f68b4752a4d8234ccf2c1504b4c0a1
|
||||
@@ -582,7 +964,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.6.1.tgz
|
||||
version: 0.6.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.687167631Z"
|
||||
created: "2023-03-30T12:04:56.162288016Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: d607820a7e104eaaa88c153c1f2f7f409ef4c612ad747caeb3a671cf3fce03d4
|
||||
@@ -592,7 +974,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.6.0.tgz
|
||||
version: 0.6.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.68683102Z"
|
||||
created: "2023-03-30T12:04:56.161969919Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: ddf7cf87402095d62855898744b805115fdf86c4b295e0a4def0c50408fd9138
|
||||
@@ -602,7 +984,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.5.1.tgz
|
||||
version: 0.5.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.686542511Z"
|
||||
created: "2023-03-30T12:04:56.161703122Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: adf3c2cf3a27e58ec75620599e0e1c2031a7410a061a590317beeff6d8a9ad69
|
||||
@@ -612,7 +994,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.5.0.tgz
|
||||
version: 0.5.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.686228601Z"
|
||||
created: "2023-03-30T12:04:56.155399783Z"
|
||||
description: One chart to rule them all. A generic Helm chart for your application
|
||||
deployments. Because no-one can remember the Kubernetes yaml syntax.
|
||||
digest: 8dab33263c4e632aeb4656c666871440b589497b70e76a1d6c3a5e3db1a30bba
|
||||
@@ -622,7 +1004,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.4.0.tgz
|
||||
version: 0.4.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.674895729Z"
|
||||
created: "2023-03-30T12:04:56.146180873Z"
|
||||
description: A generic Helm chart for your application deployments
|
||||
digest: fbaf6139e0ef8ad9a87cc1e41a97c7d25fdcf7ea17fa6364952f1a851a87480a
|
||||
name: onechart
|
||||
@@ -631,7 +1013,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.3.2.tgz
|
||||
version: 0.3.2
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.67464342Z"
|
||||
created: "2023-03-30T12:04:56.145942175Z"
|
||||
description: A generic Helm chart for your application deployments
|
||||
digest: bd6f5b1865ab9b05fc6925c163ab8045235bd2723dba31f09d5083d24322d1f8
|
||||
name: onechart
|
||||
@@ -640,7 +1022,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.3.1.tgz
|
||||
version: 0.3.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.674354611Z"
|
||||
created: "2023-03-30T12:04:56.145698378Z"
|
||||
description: A generic Helm chart for your application deployments
|
||||
digest: c79cef21eceab948144a289298cdf1e20e77a0782a883d7d65f9e709ccbbc271
|
||||
name: onechart
|
||||
@@ -649,7 +1031,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.3.0.tgz
|
||||
version: 0.3.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.663257547Z"
|
||||
created: "2023-03-30T12:04:56.119188436Z"
|
||||
description: A generic Helm chart for your application deployments
|
||||
digest: dd814ac5d08d5e6163a1b769df6803f5cb0f09d906045086dfcc5be522bb1ec3
|
||||
name: onechart
|
||||
@@ -658,7 +1040,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.2.0.tgz
|
||||
version: 0.2.0
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.644965047Z"
|
||||
created: "2023-03-30T12:04:56.109081734Z"
|
||||
description: A generic Helm chart for your application deployments
|
||||
digest: e46062df8053840cbfbba26c0a66a843a79f15a0b43a145ed019327513bd5098
|
||||
name: onechart
|
||||
@@ -667,7 +1049,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.1.2.tgz
|
||||
version: 0.1.2
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.644705538Z"
|
||||
created: "2023-03-30T12:04:56.108671438Z"
|
||||
description: A generic Helm chart for your application deployments
|
||||
digest: a7bbc8b7dcc008e89156cd1830282b7d39c0592e82ccdcefb77a25a42eca2a3d
|
||||
name: onechart
|
||||
@@ -676,7 +1058,7 @@ entries:
|
||||
- https://chart.onechart.dev/onechart-0.1.1.tgz
|
||||
version: 0.1.1
|
||||
- apiVersion: v2
|
||||
created: "2022-01-19T08:09:03.644396728Z"
|
||||
created: "2023-03-30T12:04:56.108226942Z"
|
||||
description: A generic Helm chart for your application deployments
|
||||
digest: 1ed8c0645abdae6c950526e9c5410dc056847a11700dc7def5f1c55eb7de0cd4
|
||||
name: onechart
|
||||
@@ -684,4 +1066,14 @@ entries:
|
||||
urls:
|
||||
- https://chart.onechart.dev/onechart-0.1.0.tgz
|
||||
version: 0.1.0
|
||||
generated: "2022-01-19T08:09:03.631717712Z"
|
||||
static-site:
|
||||
- apiVersion: v2
|
||||
created: "2023-03-30T12:04:56.166434176Z"
|
||||
description: Chart to build and deploy static sites
|
||||
digest: f8946fb4a7c6139ae70dc5327a3814b1c23a5b1c9456850f6b520e9ca2721cfe
|
||||
name: static-site
|
||||
type: application
|
||||
urls:
|
||||
- https://chart.onechart.dev/static-site-0.1.0.tgz
|
||||
version: 0.1.0
|
||||
generated: "2023-03-30T12:04:56.093371287Z"
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -7,3 +7,12 @@ gitSha: xyz
|
||||
|
||||
vars:
|
||||
MY_VAR: "value"
|
||||
|
||||
volumes:
|
||||
- name: testing
|
||||
path: /deleteme
|
||||
hostPath:
|
||||
path: /deleteme
|
||||
- name: empty
|
||||
path: /deleteme2
|
||||
emptyDir: true
|
||||
@@ -1,5 +1,5 @@
|
||||
[[redirects]]
|
||||
from = "/*"
|
||||
to = "https://gimlet.io/onechart/getting-started"
|
||||
to = "https://gimlet.io/docs/onechart-reference"
|
||||
status = 301
|
||||
force = true
|
||||
|
||||
Reference in New Issue
Block a user