chart: appVersion: 0.1.0 version: 0.1.0 suite: Add prometheus basic auth variables release: name: reposilite-unittest namespace: testing templates: - templates/deployment.yaml - templates/secretPrometheusBasicAuth.yaml tests: - it: Rendering default environment variables with enabled prometheus metrics serviceMonitor set: prometheus.metrics.enabled: true prometheus.metrics.serviceMonitor.enabled: true asserts: - exists: path: spec.template.metadata.annotations.checksum/secret-reposilite-unittest-basic-auth-credentials template: templates/deployment.yaml - contains: path: spec.template.spec.containers[0].env content: name: REPOSILITE_PROMETHEUS_PASSWORD valueFrom: secretKeyRef: name: reposilite-unittest-basic-auth-credentials key: password template: templates/deployment.yaml - contains: path: spec.template.spec.containers[0].env content: name: REPOSILITE_PROMETHEUS_USER valueFrom: secretKeyRef: name: reposilite-unittest-basic-auth-credentials key: username template: templates/deployment.yaml - it: Rendering default environment variables with enabled prometheus metrics serviceMonitor and external secret set: prometheus.metrics.enabled: true prometheus.metrics.secret.existing.enabled: true prometheus.metrics.secret.existing.basicAuthUsernameKey: my-username-key prometheus.metrics.secret.existing.basicAuthPasswordKey: my-password-key prometheus.metrics.secret.existing.secretName: my-secret prometheus.metrics.serviceMonitor.enabled: true asserts: - notExists: path: spec.template.metadata.annotations.checksum/secret-reposilite-unittest-basic-auth-credentials template: templates/deployment.yaml - contains: path: spec.template.spec.containers[0].env content: name: REPOSILITE_PROMETHEUS_PASSWORD valueFrom: secretKeyRef: name: my-secret key: my-password-key template: templates/deployment.yaml - contains: path: spec.template.spec.containers[0].env content: name: REPOSILITE_PROMETHEUS_USER valueFrom: secretKeyRef: name: my-secret key: my-username-key template: templates/deployment.yaml - it: Fail when existing secret name is undefined set: prometheus.metrics.enabled: true prometheus.metrics.secret.existing.enabled: true prometheus.metrics.secret.existing.basicAuthUsernameKey: "my-username-key" prometheus.metrics.secret.existing.basicAuthPasswordKey: "my-password-key" prometheus.metrics.secret.existing.secretName: "" prometheus.metrics.serviceMonitor.enabled: true asserts: - failedTemplate: errorMessage: "Name of the existing secret that contains the credentials for basic auth is not defined!" template: templates/deployment.yaml - it: Fail when the name of the key in the secret that contains the username for basic auth is undefined set: prometheus.metrics.enabled: true prometheus.metrics.secret.existing.enabled: true prometheus.metrics.secret.existing.basicAuthUsernameKey: "" prometheus.metrics.secret.existing.basicAuthPasswordKey: "my-password-key" prometheus.metrics.secret.existing.secretName: "my-secret" prometheus.metrics.serviceMonitor.enabled: true asserts: - failedTemplate: errorMessage: "Name of the key in the secret that contains the username for basic auth is not defined!" template: templates/deployment.yaml - it: Fail when the name of the key in the secret that contains the password for basic auth is undefined set: prometheus.metrics.enabled: true prometheus.metrics.secret.existing.enabled: true prometheus.metrics.secret.existing.basicAuthUsernameKey: "my-username-key" prometheus.metrics.secret.existing.basicAuthPasswordKey: "" prometheus.metrics.secret.existing.secretName: "my-secret" prometheus.metrics.serviceMonitor.enabled: true asserts: - failedTemplate: errorMessage: "Name of the key in the secret that contains the password for basic auth is not defined!" template: templates/deployment.yaml