diff --git a/resources/charts/bitcoincore/Chart.yaml b/resources/charts/bitcoincore/Chart.yaml index 4feb6e32e..00a9cd3aa 100644 --- a/resources/charts/bitcoincore/Chart.yaml +++ b/resources/charts/bitcoincore/Chart.yaml @@ -6,6 +6,12 @@ dependencies: - name: lnd version: 0.1.0 condition: ln.lnd + - name: eclair + version: 0.1.0 + condition: ln.eclair + - name: cln + version: 0.1.0 + condition: ln.cln # A chart can be either an 'application' or a 'library' chart. # diff --git a/resources/charts/bitcoincore/charts/cln/.helmignore b/resources/charts/bitcoincore/charts/cln/.helmignore new file mode 100644 index 000000000..0e8a0eb36 --- /dev/null +++ b/resources/charts/bitcoincore/charts/cln/.helmignore @@ -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/ diff --git a/resources/charts/bitcoincore/charts/cln/Chart.yaml b/resources/charts/bitcoincore/charts/cln/Chart.yaml new file mode 100644 index 000000000..79eeda983 --- /dev/null +++ b/resources/charts/bitcoincore/charts/cln/Chart.yaml @@ -0,0 +1,24 @@ +apiVersion: v2 +name: cln +description: A Helm chart for CLN + +# 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 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +# It is recommended to use it with quotes. +appVersion: "0.1.0" diff --git a/resources/charts/bitcoincore/charts/cln/templates/_helpers.tpl b/resources/charts/bitcoincore/charts/cln/templates/_helpers.tpl new file mode 100644 index 000000000..de02b029f --- /dev/null +++ b/resources/charts/bitcoincore/charts/cln/templates/_helpers.tpl @@ -0,0 +1,83 @@ +{{/* +Expand the name of the PARENT chart. +*/}} +{{- define "bitcoincore.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified PARENT 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 "bitcoincore.fullname" -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s" .Release.Name | trunc 63 | trimSuffix "-" }} +{{- end }} +{{- end }} + + +{{/* +Expand the name of the chart. +*/}} +{{- define "cln.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 "cln.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 "cln.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "cln.labels" -}} +helm.sh/chart: {{ include "cln.chart" . }} +{{ include "cln.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "cln.selectorLabels" -}} +app.kubernetes.io/name: {{ include "cln.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "cln.serviceAccountName" -}} +{{- if .Values.serviceAccount.create }} +{{- default (include "cln.fullname" .) .Values.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.serviceAccount.name }} +{{- end }} +{{- end }} diff --git a/resources/charts/bitcoincore/charts/cln/templates/configmap.yaml b/resources/charts/bitcoincore/charts/cln/templates/configmap.yaml new file mode 100644 index 000000000..48e89c7ae --- /dev/null +++ b/resources/charts/bitcoincore/charts/cln/templates/configmap.yaml @@ -0,0 +1,28 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "cln.fullname" . }} + labels: + {{- include "cln.labels" . | nindent 4 }} +data: + config: | + {{- .Values.baseConfig | nindent 4 }} + {{- .Values.defaultConfig | nindent 4 }} + {{- .Values.config | nindent 4 }} + network={{ .Values.global.chain }} + bitcoin-rpcconnect={{ include "bitcoincore.fullname" . }} + bitcoin-rpcport={{ index .Values.global .Values.global.chain "RPCPort" }} + bitcoin-rpcpassword={{ .Values.global.rpcpassword }} + alias={{ include "cln.fullname" . }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "cln.fullname" . }}-channels + labels: + channels: "true" + {{- include "cln.labels" . | nindent 4 }} +data: + source: {{ include "cln.fullname" . }} + channels: | + {{ .Values.channels | toJson }} diff --git a/resources/charts/bitcoincore/charts/cln/templates/pod.yaml b/resources/charts/bitcoincore/charts/cln/templates/pod.yaml new file mode 100644 index 000000000..6112ad9f2 --- /dev/null +++ b/resources/charts/bitcoincore/charts/cln/templates/pod.yaml @@ -0,0 +1,73 @@ +apiVersion: v1 +kind: Pod +metadata: + name: {{ include "cln.fullname" . }} + labels: + {{- include "cln.labels" . | nindent 4 }} + {{- with .Values.podLabels }} + {{- toYaml . | nindent 4 }} + {{- end }} + app: {{ include "cln.fullname" . }} + {{- if .Values.collectLogs }} + collect_logs: "true" + {{- end }} + chain: {{ .Values.global.chain }} + annotations: + kubectl.kubernetes.io/default-container: "cln" +spec: + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 4 }} + {{- end }} + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 4 }} + containers: + - name: {{ .Chart.Name }} + securityContext: + {{- toYaml .Values.securityContext | nindent 8 }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + ports: + - name: p2p + containerPort: {{ .Values.P2PPort }} + protocol: TCP + command: + - "lightningd" + - "--conf=/root/.lightning/config" + livenessProbe: + {{- toYaml .Values.livenessProbe | nindent 8 }} + readinessProbe: + {{- toYaml .Values.readinessProbe | nindent 8 }} + startupProbe: + {{- toYaml .Values.startupProbe | nindent 8 }} + resources: + {{- toYaml .Values.resources | nindent 8 }} + volumeMounts: + {{- with .Values.volumeMounts }} + {{- toYaml . | nindent 8 }} + {{- end }} + - mountPath: /root/.lightning/config + name: config + subPath: config + {{- with .Values.extraContainers }} + {{- toYaml . | nindent 4 }} + {{- end }} + volumes: + {{- with .Values.volumes }} + {{- toYaml . | nindent 4 }} + {{- end }} + - configMap: + name: {{ include "cln.fullname" . }} + name: config + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 4 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 4 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 4 }} + {{- end }} diff --git a/resources/charts/bitcoincore/charts/cln/templates/service.yaml b/resources/charts/bitcoincore/charts/cln/templates/service.yaml new file mode 100644 index 000000000..c30fb90be --- /dev/null +++ b/resources/charts/bitcoincore/charts/cln/templates/service.yaml @@ -0,0 +1,16 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "cln.fullname" . }} + labels: + {{- include "cln.labels" . | nindent 4 }} + app: {{ include "cln.fullname" . }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.P2PPort }} + targetPort: p2p + protocol: TCP + name: p2p + selector: + {{- include "cln.selectorLabels" . | nindent 4 }} diff --git a/resources/charts/bitcoincore/charts/cln/templates/servicemonitor.yaml b/resources/charts/bitcoincore/charts/cln/templates/servicemonitor.yaml new file mode 100644 index 000000000..4565a17d1 --- /dev/null +++ b/resources/charts/bitcoincore/charts/cln/templates/servicemonitor.yaml @@ -0,0 +1,15 @@ +{{- if .Values.metricsExport }} +apiVersion: monitoring.coreos.com/v1 +kind: ServiceMonitor +metadata: + name: {{ include "cln.fullname" . }} + labels: + app.kubernetes.io/name: cln-metrics + release: prometheus +spec: + endpoints: + - port: prometheus-metrics + selector: + matchLabels: + app: {{ include "cln.fullname" . }} +{{- end }} diff --git a/resources/charts/bitcoincore/charts/cln/values.yaml b/resources/charts/bitcoincore/charts/cln/values.yaml new file mode 100644 index 000000000..8f5f9dc82 --- /dev/null +++ b/resources/charts/bitcoincore/charts/cln/values.yaml @@ -0,0 +1,119 @@ +# Default values for cln. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. +namespace: warnet + +# This will set the replicaset count more information can be found here: https://kubernetes.io/docs/concepts/workloads/controllers/replicaset/ +replicaCount: 1 + +image: + repository: elementsproject/lightningd + pullPolicy: IfNotPresent + tag: "v25.02" + +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +podAnnotations: {} +podLabels: + app: "warnet" + mission: "lightning" + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + +P2PPort: 9735 + +# This block is for setting up the ingress for more information can be found here: https://kubernetes.io/docs/concepts/services-networking/ingress/ +ingress: + enabled: false + className: "" + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: + - path: / + pathType: ImplementationSpecific + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +livenessProbe: + exec: + command: + - "/bin/sh" + - "-c" + - "lightning-cli --network=regtest getinfo >/dev/null 2>&1" + failureThreshold: 3 + initialDelaySeconds: 5 + periodSeconds: 5 + successThreshold: 1 + timeoutSeconds: 1 +readinessProbe: + failureThreshold: 10 + periodSeconds: 30 + successThreshold: 1 + timeoutSeconds: 60 + exec: + command: + - "/bin/sh" + - "-c" + - "lightning-cli --network=regtest getinfo 2>/dev/null | grep -q 'id' || exit 1" + +# Additional volumes on the output Deployment definition. +volumes: [] +# - name: foo +# secret: +# secretName: mysecret +# optional: false + +# Additional volumeMounts on the output Deployment definition. +volumeMounts: [] +# - name: foo +# mountPath: "/etc/foo" +# readOnly: true + +nodeSelector: {} + +tolerations: [] + +affinity: {} + +baseConfig: | + log-level=debug + bind-addr=0.0.0.0:9735 + bitcoin-rpcuser=user + # bitcoind.rpcpass are set in configmap.yaml + +config: "" + +defaultConfig: "" + +channels: [] diff --git a/resources/charts/bitcoincore/charts/eclair/.helmignore b/resources/charts/bitcoincore/charts/eclair/.helmignore new file mode 100644 index 000000000..0e8a0eb36 --- /dev/null +++ b/resources/charts/bitcoincore/charts/eclair/.helmignore @@ -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/ diff --git a/resources/charts/bitcoincore/charts/eclair/Chart.yaml b/resources/charts/bitcoincore/charts/eclair/Chart.yaml new file mode 100644 index 000000000..c496a596b --- /dev/null +++ b/resources/charts/bitcoincore/charts/eclair/Chart.yaml @@ -0,0 +1,24 @@ +apiVersion: v2 +name: eclair +description: A Helm chart for Eclair + +# 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 + +# This is the version number of the application being deployed. This version number should be +# incremented each time you make changes to the application. Versions are not expected to +# follow Semantic Versioning. They should reflect the version the application is using. +# It is recommended to use it with quotes. +appVersion: "0.1.0" diff --git a/resources/charts/bitcoincore/charts/eclair/templates/_helpers.tpl b/resources/charts/bitcoincore/charts/eclair/templates/_helpers.tpl new file mode 100644 index 000000000..2d9f220ce --- /dev/null +++ b/resources/charts/bitcoincore/charts/eclair/templates/_helpers.tpl @@ -0,0 +1,62 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "eclair.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 "eclair.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 "eclair.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "eclair.labels" -}} +helm.sh/chart: {{ include "eclair.chart" . }} +{{ include "eclair.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "eclair.selectorLabels" -}} +app.kubernetes.io/name: {{ include "eclair.name" . }} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + +{{/* +Create the name of the service account to use +*/}} +{{- define "eclair.serviceAccountName" -}} +{{- if .Values.serviceAccount.create }} +{{- default (include "eclair.fullname" .) .Values.serviceAccount.name }} +{{- else }} +{{- default "default" .Values.serviceAccount.name }} +{{- end }} +{{- end }} diff --git a/resources/charts/bitcoincore/charts/eclair/templates/configmap.yaml b/resources/charts/bitcoincore/charts/eclair/templates/configmap.yaml new file mode 100644 index 000000000..6cdb1ca82 --- /dev/null +++ b/resources/charts/bitcoincore/charts/eclair/templates/configmap.yaml @@ -0,0 +1,30 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "eclair.fullname" . }} + labels: + {{- include "eclair.labels" . | nindent 4 }} +data: + config: | + {{- .Values.baseConfig | nindent 4 }} + {{- .Values.defaultConfig | nindent 4 }} + {{- .Values.config | nindent 4 }} + eclair.chain={{ .Values.global.chain }} + eclair.bitcoind.host={{ include "bitcoincore.fullname" . }} + eclair.bitcoind.rpcport={{ index .Values.global .Values.global.chain "RPCPort" }} + eclair.bitcoind.rpcpassword={{ .Values.global.rpcpassword }} + eclair.node-alias={{ include "eclair.fullname" . }} + eclair.bitcoind.zmqblock=tcp://{{ include "bitcoincore.fullname" . }}:{{ .Values.global.ZMQBlockPort }} + eclair.bitcoind.zmqtx=tcp://{{ include "bitcoincore.fullname" . }}:{{ .Values.global.ZMQTxPort }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "eclair.fullname" . }}-channels + labels: + channels: "true" + {{- include "eclair.labels" . | nindent 4 }} +data: + source: {{ include "eclair.fullname" . }} + channels: | + {{ .Values.channels | toJson }} diff --git a/resources/charts/bitcoincore/charts/eclair/templates/pod.yaml b/resources/charts/bitcoincore/charts/eclair/templates/pod.yaml new file mode 100644 index 000000000..3e5543510 --- /dev/null +++ b/resources/charts/bitcoincore/charts/eclair/templates/pod.yaml @@ -0,0 +1,68 @@ +apiVersion: v1 +kind: Pod +metadata: + name: {{ include "eclair.fullname" . }} + labels: + {{- include "eclair.labels" . | nindent 4 }} + {{- with .Values.podLabels }} + {{- toYaml . | nindent 4 }} + {{- end }} + app: {{ include "eclair.fullname" . }} + {{- if .Values.collectLogs }} + collect_logs: "true" + {{- end }} + chain: {{ .Values.global.chain }} + annotations: + kubectl.kubernetes.io/default-container: "eclair" +spec: + {{- with .Values.imagePullSecrets }} + imagePullSecrets: + {{- toYaml . | nindent 4 }} + {{- end }} + securityContext: + {{- toYaml .Values.podSecurityContext | nindent 4 }} + containers: + - name: {{ .Chart.Name }} + securityContext: + {{- toYaml .Values.securityContext | nindent 12 }} + image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}" + imagePullPolicy: {{ .Values.image.pullPolicy }} + ports: + - name: server + containerPort: {{ .Values.ServerPort }} + protocol: TCP + - name: rest + containerPort: {{ .Values.RestPort }} + protocol: TCP + livenessProbe: + {{- toYaml .Values.livenessProbe | nindent 12 }} + readinessProbe: + {{- toYaml .Values.readinessProbe | nindent 12 }} + resources: + {{- toYaml .Values.resources | nindent 12 }} + volumeMounts: + {{- with .Values.volumeMounts }} + {{- toYaml . | nindent 12 }} + {{- end }} + - mountPath: /home/eclair/.eclair/eclair.conf + name: config + subPath: eclair.confg + volumes: + {{- with .Values.volumes }} + {{- toYaml . | nindent 8 }} + {{- end }} + - configMap: + name: {{ include "eclair.fullname" . }} + name: config + {{- with .Values.nodeSelector }} + nodeSelector: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.affinity }} + affinity: + {{- toYaml . | nindent 8 }} + {{- end }} + {{- with .Values.tolerations }} + tolerations: + {{- toYaml . | nindent 8 }} + {{- end }} diff --git a/resources/charts/bitcoincore/charts/eclair/templates/service.yaml b/resources/charts/bitcoincore/charts/eclair/templates/service.yaml new file mode 100644 index 000000000..f1458557a --- /dev/null +++ b/resources/charts/bitcoincore/charts/eclair/templates/service.yaml @@ -0,0 +1,20 @@ +apiVersion: v1 +kind: Service +metadata: + name: {{ include "eclair.fullname" . }} + labels: + {{- include "eclair.labels" . | nindent 4 }} + app: {{ include "eclair.fullname" . }} +spec: + type: {{ .Values.service.type }} + ports: + - port: {{ .Values.ServerPort }} + targetPort: server + protocol: TCP + name: server + - port: {{ .Values.RestPort }} + targetPort: rest + protocol: TCP + name: rest + selector: + {{- include "eclair.selectorLabels" . | nindent 4 }} diff --git a/resources/charts/bitcoincore/charts/eclair/values.yaml b/resources/charts/bitcoincore/charts/eclair/values.yaml new file mode 100644 index 000000000..c57adf6be --- /dev/null +++ b/resources/charts/bitcoincore/charts/eclair/values.yaml @@ -0,0 +1,128 @@ +# Default values for eclair. +# This is a YAML-formatted file. +# Declare variables to be passed into your templates. +namespace: warnet + +# This sets the container image more information can be found here: https://kubernetes.io/docs/concepts/containers/images/ +image: + repository: acinq/eclair + # This sets the pull policy for images. + pullPolicy: IfNotPresent + # Overrides the image tag whose default is the chart appVersion. + tag: "latest" + +# This is for the secretes for pulling an image from a private repository more information can be found here: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/ +imagePullSecrets: [] +nameOverride: "" +fullnameOverride: "" + +# This is for setting Kubernetes Labels to a Pod. +# For more information checkout: https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ +podLabels: + app: "warnet" + mission: "lightning" + +podSecurityContext: {} + # fsGroup: 2000 + +securityContext: {} + # capabilities: + # drop: + # - ALL + # readOnlyRootFilesystem: true + # runAsNonRoot: true + # runAsUser: 1000 + +service: + type: ClusterIP + +ServerPort: 9735 +RestPort: 8080 + +# This block is for setting up the ingress for more information can be found here: https://kubernetes.io/docs/concepts/services-networking/ingress/ +ingress: + enabled: false + className: "" + annotations: {} + # kubernetes.io/ingress.class: nginx + # kubernetes.io/tls-acme: "true" + hosts: + - host: chart-example.local + paths: + - path: / + pathType: ImplementationSpecific + tls: [] + # - secretName: chart-example-tls + # hosts: + # - chart-example.local + +resources: {} + # We usually recommend not to specify default resources and to leave this as a conscious + # choice for the user. This also increases chances charts run on environments with little + # resources, such as Minikube. If you do want to specify resources, uncomment the following + # lines, adjust them as necessary, and remove the curly braces after 'resources:'. + # limits: + # cpu: 100m + # memory: 128Mi + # requests: + # cpu: 100m + # memory: 128Mi + +# This is to setup the liveness and readiness probes more information can be found here: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-startup-probes/ +livenessProbe: + httpGet: + path: /getinfo + port: 8080 + failureThreshold: 3 + initialDelaySeconds: 10 + periodSeconds: 20 + timeoutSeconds: 5 +readinessProbe: + initialDelaySeconds: 10 + failureThreshold: 3 + periodSeconds: 10 + tcpSocket: + port: 8080 +startupProbe: + initialDelaySeconds: 15 + periodSeconds: 10 + failureThreshold: 5 + timeoutSeconds: 30 + exec: + command: + - sh + - -c + - 'curl -s http://localhost:8080/getinfo | grep -q "blockHeight"' + +# Additional volumes on the output Deployment definition. +volumes: [] +# - name: foo +# secret: +# secretName: mysecret +# optional: false + +# Additional volumeMounts on the output Deployment definition. +volumeMounts: [] +# - name: foo +# mountPath: "/etc/foo" +# readOnly: true + +nodeSelector: {} + +tolerations: [] + +affinity: {} + +baseConfig: | + eclair.server.port=9735 + eclair.api.enabled=true + eclair.api.password=foo + eclair.api.port=8080 + eclair.bitcoind.rpcuser=user + # zmq* and eclair.bitcoind.rpcpassword are set in configmap.yaml + +config: "" + +defaultConfig: "" + +channels: [] diff --git a/resources/charts/bitcoincore/values.yaml b/resources/charts/bitcoincore/values.yaml index 8c9f3215f..7b049ae65 100644 --- a/resources/charts/bitcoincore/values.yaml +++ b/resources/charts/bitcoincore/values.yaml @@ -141,4 +141,6 @@ loadSnapshot: url: "" ln: - lnd: false \ No newline at end of file + lnd: false + eclair: false + cln: false diff --git a/test/data/cln/network.yaml b/test/data/cln/network.yaml new file mode 100644 index 000000000..f7748ba5d --- /dev/null +++ b/test/data/cln/network.yaml @@ -0,0 +1,19 @@ +nodes: + - name: tank-0000 + addnode: + - tank-0001 + - name: tank-0001 + addnode: + - tank-0002 + - name: tank-0002 + addnode: + - tank-0000 + - name: tank-0003 + addnode: + - tank-0000 + - name: tank-0004 + addnode: + - tank-0000 + - name: tank-0005 + addnode: + - tank-0000 diff --git a/test/data/cln/node-defaults.yaml b/test/data/cln/node-defaults.yaml new file mode 100644 index 000000000..0132e1603 --- /dev/null +++ b/test/data/cln/node-defaults.yaml @@ -0,0 +1,17 @@ +# enable collectLogs and metricsExport to activate publish lnd-exporter metrics + +#Core configs +image: + repository: bitcoindevproject/bitcoin + pullPolicy: IfNotPresent + tag: "27.0" +collectLogs: false +metricsExport: false + +#LN configs +ln: + cln: true +cln: + defaultConfig: | + rgb=ff3155 + metricsExport: false diff --git a/test/data/eclair/network.yaml b/test/data/eclair/network.yaml new file mode 100644 index 000000000..f7748ba5d --- /dev/null +++ b/test/data/eclair/network.yaml @@ -0,0 +1,19 @@ +nodes: + - name: tank-0000 + addnode: + - tank-0001 + - name: tank-0001 + addnode: + - tank-0002 + - name: tank-0002 + addnode: + - tank-0000 + - name: tank-0003 + addnode: + - tank-0000 + - name: tank-0004 + addnode: + - tank-0000 + - name: tank-0005 + addnode: + - tank-0000 diff --git a/test/data/eclair/node-defaults.yaml b/test/data/eclair/node-defaults.yaml new file mode 100644 index 000000000..3ef1d9656 --- /dev/null +++ b/test/data/eclair/node-defaults.yaml @@ -0,0 +1,17 @@ +# enable collectLogs and metricsExport to activate publish lnd-exporter metrics + +#Core configs +image: + repository: bitcoindevproject/bitcoin + pullPolicy: IfNotPresent + tag: "27.0" +collectLogs: false +metricsExport: false + +#LN configs +ln: + eclair: true +eclair: + defaultConfig: | + eclair.node-color=49daaa + metricsExport: false