Skip to content

Commit 55d8f28

Browse files
committed
feat: allow external cardano-wallet (tls) and cardano-db-sync
Signed-off-by: Kranium Gikos Mendoza <[email protected]>
1 parent 94a31c5 commit 55d8f28

File tree

6 files changed

+117
-2
lines changed

6 files changed

+117
-2
lines changed

infrastructure/charts/node/Chart.lock

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
dependencies:
2+
- name: nginx
3+
repository: https://charts.bitnami.com/bitnami
4+
version: 16.0.7
5+
digest: sha256:fbb6b2644c14ff1f2d2010bfb1892de4ad59837a811bc10850a67158be138af7
6+
generated: "2024-05-10T16:54:55.415234401+10:00"

infrastructure/charts/node/Chart.yaml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,4 +19,8 @@ version: 2.4.1
1919
# follow Semantic Versioning. They should reflect the version the application is using.
2020
# It is recommended to use it with quotes.
2121
appVersion: "2.4.1"
22-
dependencies: []
22+
dependencies:
23+
- name: nginx
24+
repository: https://charts.bitnami.com/bitnami
25+
version: 16.0.7
26+
condition: vdr.externalResources.wallet.tls
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{{- if .Values.vdr.externalResources.wallet.tls }}
2+
apiVersion: v1
3+
kind: ConfigMap
4+
metadata:
5+
name: wallet-nginx-proxy
6+
data:
7+
server-block.conf: |
8+
server {
9+
listen 8080;
10+
location / {
11+
resolver 8.8.8.8;
12+
proxy_pass https://{{ .Values.vdr.externalResources.wallet.host }}$uri$is_args$args;
13+
}
14+
}
15+
{{- end }}

infrastructure/charts/node/templates/deployment.yaml

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,26 @@ spec:
4747
value: {{ .Values.server.refereshAndSubmitPeriod | quote }}
4848
- name: NODE_CARDANO_CONFIRMATION_BLOCKS
4949
value: {{ .Values.server.confirmationBlocks | quote }}
50+
{{- if and (eq "cardano" .Values.server.ledger) (not (empty .Values.vdr.externalResources.wallet.host)) }}
51+
- name: NODE_CARDANO_WALLET_API_HOST
52+
value: "{{ .Release.Name }}-wallet"
53+
- name: NODE_CARDANO_WALLET_ID
54+
valueFrom:
55+
secretKeyRef:
56+
name: "{{ .Values.secrets.cardanoWallet }}"
57+
key: id
58+
optional: false
59+
- name: NODE_CARDANO_WALLET_PASSPHRASE
60+
valueFrom:
61+
secretKeyRef:
62+
name: "{{ .Values.secrets.cardanoWallet }}"
63+
key: passphrase
64+
optional: false
65+
- name: NODE_CARDANO_WALLET_API_PORT
66+
value: 80
67+
- name: NODE_CARDANO_PAYMENT_ADDRESS
68+
value: "{{ .Values.vdr.externalResources.wallet.payment_address }}"
69+
{{- else if "cardano" .Values.server.ledger }}
5070
- name: NODE_CARDANO_WALLET_API_HOST
5171
value: "{{ .Values.vdr.cardanoNode }}.{{ .Values.vdr.cardanoNamespace }}"
5272
- name: NODE_CARDANO_WALLET_ID
@@ -69,7 +89,25 @@ spec:
6989
name: "{{ .Values.vdr.cardanoNode }}-{{ .Values.vdr.cardanoWallet }}"
7090
key: address
7191
optional: false
72-
{{- if eq "cardano" .Values.server.ledger }}
92+
{{- end }}
93+
{{- if and (eq "cardano" .Values.server.ledger) (not (empty .Values.vdr.externalResources.db_sync.host)) }}
94+
- name: NODE_CARDANO_DB_SYNC_USERNAME
95+
valueFrom:
96+
secretKeyRef:
97+
name: "{{ .Values.secrets.cardanoDbSync }}"
98+
key: username
99+
optional: false
100+
- name: NODE_CARDANO_DB_SYNC_PASSWORD
101+
valueFrom:
102+
secretKeyRef:
103+
name: "{{ .Values.secrets.cardanoDbSync }}"
104+
key: password
105+
optional: false
106+
- name: NODE_CARDANO_DB_SYNC_DATABASE
107+
value: "{{ .Values.vdr.externalResources.db_sync.database }}"
108+
- name: NODE_CARDANO_DB_SYNC_HOST
109+
value: "{{ .Values.vdr.externalResources.db_sync.host }}"
110+
{{- else if "cardano" .Values.server.ledger }}
73111
- name: NODE_CARDANO_DB_SYNC_USERNAME
74112
valueFrom:
75113
secretKeyRef:

infrastructure/charts/node/templates/externalsecret.yaml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,3 +36,38 @@ spec:
3636
dataFrom:
3737
- extract:
3838
key: {{ .Values.vdr.cardanoWallet }}
39+
40+
---
41+
# Requires wallet to be created (atm it's done through terraform module)
42+
apiVersion: external-secrets.io/v1beta1
43+
kind: ExternalSecret
44+
metadata:
45+
name: "{{ .Values.secrets.cardanoWallet }}"
46+
namespace: {{ .Release.Namespace }}
47+
labels:
48+
{{ template "labels.common" . }}
49+
spec:
50+
refreshInterval: "0"
51+
secretStoreRef:
52+
name: {{ .Values.secrets.secretStore }}
53+
kind: ClusterSecretStore
54+
dataFrom:
55+
- extract:
56+
key: "{{ .Values.secrets.cardanoWallet }}"
57+
---
58+
# Requires wallet to be created (atm it's done through terraform module)
59+
apiVersion: external-secrets.io/v1beta1
60+
kind: ExternalSecret
61+
metadata:
62+
name: "{{ .Values.secrets.cardanoDbSync }}"
63+
namespace: {{ .Release.Namespace }}
64+
labels:
65+
{{ template "labels.common" . }}
66+
spec:
67+
refreshInterval: "0"
68+
secretStoreRef:
69+
name: {{ .Values.secrets.secretStore }}
70+
kind: ClusterSecretStore
71+
dataFrom:
72+
- extract:
73+
key: "{{ .Values.secrets.cardanoDbSync }}"

infrastructure/charts/node/values.yaml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ ingress:
1111
secrets:
1212
secretStore: chart-base-secretstore
1313
dockerRegistryToken: chart-base-docker-registry-token
14+
# cardanoWallet: must contain wallet_id and passphrase
15+
# cardanoDbSync: must contain username and password
1416

1517
server:
1618
ledger: "in-memory"
@@ -39,6 +41,21 @@ database:
3941
numberOfInstances: 2
4042

4143
vdr:
44+
externalResources:
45+
wallet:
46+
# host:
47+
# payment_address:
48+
# tls always true ATM
49+
tls: true
50+
db_sync:
51+
# host":
52+
# database":
4253
cardanoNode: atala-cardano-dev-preprod
4354
cardanoNamespace: cardano-stack
4455
cardanoWallet: dev-k8s-cardano-wallet
56+
57+
nginx:
58+
nameOverride: "wallet"
59+
service:
60+
type: "ClusterIP"
61+
existingServerBlockConfigmap: wallet-nginx-proxy

0 commit comments

Comments
 (0)