UNPKG

@fairmint/canton-node-sdk

Version:
171 lines (169 loc) 5.26 kB
# Copyright (c) 2024 Digital Asset (Switzerland) GmbH and/or its affiliates. All rights reserved. # SPDX-License-Identifier: Apache-2.0 # yaml-language-server: $schema=https://raw.githubusercontent.com/helm-unittest/helm-unittest/main/schema/helm-testsuite.json suite: "sequencer values" templates: - sequencer.yaml release: # Set for testing labels name: global-domain-6 chart: # Override for testing labels version: 0.1.1 appVersion: 0.1.0 set: # Things we need just to pass the schema sequencer: driver: type: cometbft tests: - it: "sets labels as expected" documentSelector: path: kind value: Deployment asserts: # Sanity checks - equal: path: metadata.name value: global-domain-6-sequencer - equal: path: spec.template.spec.containers[0].name value: sequencer # Labels on deployment - isSubset: path: metadata.labels content: # Splice-specific app: global-domain-6-sequencer splice-component: sequencer # k8s/Helm standard app.kubernetes.io/component: sequencer app.kubernetes.io/instance: global-domain-6 app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: global-domain-6-sequencer app.kubernetes.io/version: "0.1.0" helm.sh/chart: splice-global-domain-0.1.1 # Labels on pod; should be the same as on deployment - isSubset: path: spec.template.metadata.labels content: # Splice-specific app: global-domain-6-sequencer splice-component: sequencer # k8s/Helm standard app.kubernetes.io/component: sequencer app.kubernetes.io/instance: global-domain-6 app.kubernetes.io/managed-by: Helm app.kubernetes.io/name: global-domain-6-sequencer app.kubernetes.io/version: "0.1.0" helm.sh/chart: splice-global-domain-0.1.1 - it: "can enable postgres metrics" set: sequencer: # Things we need for the postgres exporter persistence: postgresName: sequencer-6 enablePostgresMetrics: true # We named the Service like the Deployment, so I'm out of ideas on how to use documentSelector documentIndex: 2 asserts: - equal: path: metadata.name value: pge-sequencer-6-cantonnet-sequencer - equal: path: metadata.labels.app value: pge-sequencer-6-cantonnet-sequencer - it: "can enable pvc" set: # Things we need for the pvc mount pvc: size: 10Gi volumeStorageClass: standard-rwo documentSelector: path: kind value: PersistentVolumeClaim asserts: - equal: path: metadata.name value: global-domain-6-sequencer-pvc - it: "sets log-level environment variables correctly when only logLevel is provided" set: # Set log level for testing logLevel: WARN documentSelector: path: kind value: Deployment asserts: - contains: path: spec.template.spec.containers[0].env content: name: LOG_LEVEL_CANTON value: WARN - contains: path: spec.template.spec.containers[0].env content: name: LOG_LEVEL_STDOUT value: DEBUG - it: "sets log-level environment variables correctly when both logLevel and logLevelStdout are provided" set: # Set log levels for testing logLevel: DEBUG logLevelStdout: ERROR documentSelector: path: kind value: Deployment asserts: - contains: path: spec.template.spec.containers[0].env content: name: LOG_LEVEL_CANTON value: DEBUG - contains: path: spec.template.spec.containers[0].env content: name: LOG_LEVEL_STDOUT value: ERROR - it: "sets anti affinity by default" documentSelector: path: kind value: Deployment asserts: - equal: path: spec.template.spec.affinity.podAntiAffinity.requiredDuringSchedulingIgnoredDuringExecution[0].labelSelector.matchExpressions[0].values[0] value: "sequencer" - it: "sets affinity alongside default anti affinity" set: affinity: nodeAffinity: test: true documentSelector: path: kind value: Deployment asserts: - exists: path: spec.template.spec.affinity.nodeAffinity - exists: path: spec.template.spec.affinity.podAntiAffinity - it: "sets only the specified affinity" set: enableAntiAffinity: false affinity: nodeAffinity: test: true documentSelector: path: kind value: Deployment asserts: - exists: path: spec.template.spec.affinity.nodeAffinity.test - notExists: path: spec.template.spec.affinity.podAntiAffinity - it: "doesn't set any affinity" set: enableAntiAffinity: false documentSelector: path: kind value: Deployment asserts: - notExists: path: spec.template.spec.affinity