mirror of
https://github.com/bjw-s-labs/helm-charts.git
synced 2025-07-04 00:47:04 +02:00
feat(common)!: Release version 0.2.0
- 🛑 BREAKING - Removed support for the openvpn and wireguard VPN types.
- Update container versions
- Added support for adding serviceMonitors to services.
- ConfigMap checksum logic now only looks at ConfigMap data
- Explicitly convert defaultMode to decimal notation in code-server addon.
This commit is contained in:
parent
5deacc33ba
commit
4d09009bf8
28 changed files with 248 additions and 508 deletions
|
@ -2,15 +2,19 @@
|
|||
apiVersion: v2
|
||||
description: A common powered chart template. This can be useful for small projects that don't have their own chart.
|
||||
name: app-template
|
||||
version: 0.1.1
|
||||
version: 0.2.0
|
||||
maintainers:
|
||||
- name: bjw-s
|
||||
email: me@bjw-s.dev
|
||||
dependencies:
|
||||
- name: common
|
||||
repository: https://bjw-s.github.io/helm-charts
|
||||
version: 0.1.0
|
||||
version: 0.2.0
|
||||
annotations:
|
||||
artifacthub.io/changes: |-
|
||||
- kind: added
|
||||
description: Automatically set `global.nameOverride` to release name
|
||||
- kind: changed
|
||||
description: |
|
||||
**BREAKING** Updated library version to 0.2.0.
|
||||
links:
|
||||
- name: Common library chart definition
|
||||
url: https://github.com/bjw-s/helm-charts/blob/main/charts/library/common/Chart.yaml
|
||||
|
|
|
@ -35,7 +35,7 @@ tests:
|
|||
- documentIndex: *DeploymentDocument
|
||||
equal:
|
||||
path: spec.template.spec.containers[1].name
|
||||
value: openvpn
|
||||
value: gluetun
|
||||
|
||||
- it: addon enabled with configFile should pass
|
||||
set:
|
||||
|
@ -56,7 +56,7 @@ tests:
|
|||
contains:
|
||||
path: spec.template.spec.containers[1].volumeMounts
|
||||
content:
|
||||
mountPath: /vpn/vpn.conf
|
||||
mountPath: /gluetun/config.conf
|
||||
name: vpnconfig
|
||||
subPath: vpnConfigfile
|
||||
- documentIndex: *DeploymentDocument
|
||||
|
@ -90,7 +90,7 @@ tests:
|
|||
contains:
|
||||
path: spec.template.spec.containers[1].volumeMounts
|
||||
content:
|
||||
mountPath: /vpn/vpn.conf
|
||||
mountPath: /gluetun/config.conf
|
||||
name: vpnconfig
|
||||
subPath: vpnConfigfile
|
||||
- documentIndex: *DeploymentDocument
|
||||
|
@ -104,32 +104,6 @@ tests:
|
|||
path: vpnConfigfile
|
||||
secretName: test-secret
|
||||
|
||||
- it: addon enabled with managed secret should pass
|
||||
set:
|
||||
addons:
|
||||
vpn:
|
||||
enabled: true
|
||||
openvpn:
|
||||
auth: |
|
||||
<auth>
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 3
|
||||
- documentIndex: &SecretDocument 0
|
||||
isKind:
|
||||
of: Secret
|
||||
- documentIndex: &DeploymentDocument 1
|
||||
isKind:
|
||||
of: Deployment
|
||||
- documentIndex: 2
|
||||
isKind:
|
||||
of: Service
|
||||
- documentIndex: *DeploymentDocument
|
||||
not: true
|
||||
equal:
|
||||
path: spec.template.spec.containers[0].name
|
||||
value: vpn
|
||||
|
||||
- it: addon enabled with custom env vars dict should pass
|
||||
set:
|
||||
addons:
|
||||
|
|
|
@ -21,7 +21,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
|
||||
- it: custom metadata should pass
|
||||
set:
|
||||
|
@ -48,7 +48,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
||||
- it: custom metadata with global metadata should pass
|
||||
|
@ -83,5 +83,5 @@ tests:
|
|||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
global_label: test
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
|
|
@ -7,6 +7,8 @@ tests:
|
|||
configmap:
|
||||
config:
|
||||
enabled: true
|
||||
data:
|
||||
test: value 1
|
||||
asserts:
|
||||
- documentIndex: &ControllerDoc 1
|
||||
isKind:
|
||||
|
@ -15,4 +17,4 @@ tests:
|
|||
equal:
|
||||
path: spec.template.metadata.annotations
|
||||
value:
|
||||
checksum/config: df9353f1f56b09774c9982674bda7fde05cde68ad7bcbf9594a66f3610bce501
|
||||
checksum/config: afdf20f511621d5cb358c5e8b0da2d14cdbe2549fb12fa123f6a6e9baabef26e
|
||||
|
|
|
@ -19,7 +19,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
|
||||
- it: custom metadata should pass
|
||||
set:
|
||||
|
@ -45,7 +45,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
||||
- it: custom metadata with global metadata should pass
|
||||
|
@ -79,5 +79,5 @@ tests:
|
|||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
global_label: test
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
|
|
@ -19,7 +19,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
|
||||
- it: custom metadata should pass
|
||||
set:
|
||||
|
@ -45,7 +45,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
||||
- it: custom metadata with global metadata should pass
|
||||
|
@ -79,5 +79,5 @@ tests:
|
|||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
global_label: test
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
|
|
@ -19,7 +19,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
|
||||
- it: custom metadata should pass
|
||||
set:
|
||||
|
@ -45,7 +45,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
||||
- it: custom metadata with global metadata should pass
|
||||
|
@ -79,5 +79,5 @@ tests:
|
|||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
global_label: test
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
|
|
@ -19,7 +19,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
|
||||
- it: custom metadata should pass
|
||||
set:
|
||||
|
@ -45,7 +45,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
||||
- it: custom metadata with global metadata should pass
|
||||
|
@ -79,5 +79,5 @@ tests:
|
|||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
global_label: test
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
|
|
@ -19,7 +19,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
|
||||
- it: retain enabled should pass
|
||||
set:
|
||||
|
@ -42,7 +42,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
|
||||
- it: custom metadata should pass
|
||||
set:
|
||||
|
@ -68,7 +68,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
||||
- it: custom metadata with global metadata should pass
|
||||
|
@ -102,5 +102,5 @@ tests:
|
|||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
global_label: test
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
|
|
@ -17,7 +17,8 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
app.kubernetes.io/service: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
|
||||
- it: custom metadata should pass
|
||||
set:
|
||||
|
@ -43,7 +44,8 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
app.kubernetes.io/service: RELEASE-NAME
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
||||
- it: custom metadata with global metadata should pass
|
||||
|
@ -76,6 +78,7 @@ tests:
|
|||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/managed-by: Helm
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
app.kubernetes.io/service: RELEASE-NAME
|
||||
global_label: test
|
||||
helm.sh/chart: app-template-0.1.1
|
||||
helm.sh/chart: app-template-0.2.0
|
||||
test_label: test
|
||||
|
|
109
charts/other/app-template/tests/service/servicemonitor_test.yaml
Normal file
109
charts/other/app-template/tests/service/servicemonitor_test.yaml
Normal file
|
@ -0,0 +1,109 @@
|
|||
suite: service values
|
||||
templates:
|
||||
- common.yaml
|
||||
tests:
|
||||
- it: a serviceMonitor is not created by default
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 2
|
||||
- documentIndex: &ServiceDocument 0
|
||||
isKind:
|
||||
of: Deployment
|
||||
- documentIndex: &ServiceDocument 1
|
||||
isKind:
|
||||
of: Service
|
||||
|
||||
- it: a serviceMonitor is not created when disabled
|
||||
set:
|
||||
service:
|
||||
main:
|
||||
monitor:
|
||||
enabled: false
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 2
|
||||
- documentIndex: &ServiceDocument 0
|
||||
isKind:
|
||||
of: Deployment
|
||||
- documentIndex: &ServiceDocument 1
|
||||
isKind:
|
||||
of: Service
|
||||
|
||||
- it: a serviceMonitor is created
|
||||
set:
|
||||
service:
|
||||
main:
|
||||
monitor:
|
||||
enabled: true
|
||||
endpoints:
|
||||
- port: http
|
||||
scheme: http
|
||||
path: /metrics
|
||||
interval: 1m
|
||||
scrapeTimeout: 10s
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 3
|
||||
- documentIndex: &ServiceMonitorDocument 2
|
||||
isKind:
|
||||
of: ServiceMonitor
|
||||
- documentIndex: *ServiceMonitorDocument
|
||||
equal:
|
||||
path: metadata.name
|
||||
value: RELEASE-NAME
|
||||
- documentIndex: *ServiceMonitorDocument
|
||||
equal:
|
||||
path: spec.selector.matchLabels
|
||||
value:
|
||||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
app.kubernetes.io/service: RELEASE-NAME
|
||||
- documentIndex: *ServiceMonitorDocument
|
||||
equal:
|
||||
path: spec.endpoints
|
||||
value:
|
||||
- port: http
|
||||
scheme: http
|
||||
path: /metrics
|
||||
interval: 1m
|
||||
scrapeTimeout: 10s
|
||||
|
||||
- it: a serviceMonitor is created with nameOverride
|
||||
set:
|
||||
service:
|
||||
main:
|
||||
nameOverride: test
|
||||
monitor:
|
||||
enabled: true
|
||||
endpoints:
|
||||
- port: http
|
||||
scheme: http
|
||||
path: /metrics
|
||||
interval: 1m
|
||||
scrapeTimeout: 10s
|
||||
asserts:
|
||||
- hasDocuments:
|
||||
count: 3
|
||||
- documentIndex: &ServiceMonitorDocument 2
|
||||
isKind:
|
||||
of: ServiceMonitor
|
||||
- documentIndex: *ServiceMonitorDocument
|
||||
equal:
|
||||
path: metadata.name
|
||||
value: RELEASE-NAME-test
|
||||
- documentIndex: *ServiceMonitorDocument
|
||||
equal:
|
||||
path: spec.selector.matchLabels
|
||||
value:
|
||||
app.kubernetes.io/instance: RELEASE-NAME
|
||||
app.kubernetes.io/name: RELEASE-NAME
|
||||
app.kubernetes.io/service: RELEASE-NAME-test
|
||||
- documentIndex: *ServiceMonitorDocument
|
||||
equal:
|
||||
path: spec.endpoints
|
||||
value:
|
||||
- port: http
|
||||
scheme: http
|
||||
path: /metrics
|
||||
interval: 1m
|
||||
scrapeTimeout: 10s
|
Loading…
Add table
Add a link
Reference in a new issue