diff --git a/deploy/cf-ledger-sync/templates/cardano-node-service.yaml b/deploy/cf-ledger-sync/templates/cardano-node-service.yaml new file mode 100644 index 00000000..69b93a16 --- /dev/null +++ b/deploy/cf-ledger-sync/templates/cardano-node-service.yaml @@ -0,0 +1,17 @@ +{{ with .Values.localCardanoNode }} +{{ if .enabled }} +apiVersion: v1 +kind: Service +metadata: + labels: + app: cardano-node + name: cardano-node +spec: + ports: + - name: "3001" + port: 3001 + targetPort: 3001 + selector: + app: cardano-node +{{ end }} +{{ end }} diff --git a/deploy/cf-ledger-sync/templates/cardano-node-statefulset.yaml b/deploy/cf-ledger-sync/templates/cardano-node-statefulset.yaml new file mode 100644 index 00000000..107564e1 --- /dev/null +++ b/deploy/cf-ledger-sync/templates/cardano-node-statefulset.yaml @@ -0,0 +1,55 @@ +{{ with .Values.localCardanoNode }} +{{ if .enabled }} +apiVersion: apps/v1 +kind: StatefulSet +metadata: + labels: + app: cardano-node + name: cardano-node +spec: + replicas: 1 + selector: + matchLabels: + app: cardano-node + template: + metadata: + labels: + app: cardano-node + spec: + containers: + - name: cardano-node + image: "{{ .image.repository }}:{{ .image.tag }}" + env: + - name: RESTORE_SNAPSHOT + value: "{{ .mithrilRestore | default true }}" + - name: NETWORK + value: {{ .network | default "preprod" | quote }} + ports: + - containerPort: 3001 + hostPort: 3001 + protocol: TCP + resources: {} + volumeMounts: + - mountPath: /data + name: cardano-node-db + - mountPath: /ipc + name: cardano-node-ipc + restartPolicy: Always + volumes: + - name: cardano-node-db + persistentVolumeClaim: + claimName: cardano-node-db + - name: cardano-node-ipc + emptyDir: + sizeLimit: 1Mi + + volumeClaimTemplates: + - metadata: + name: cardano-node-db + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: {{ .volumeSize | default "10Gi" }} +{{ end }} +{{ end }} diff --git a/deploy/cf-ledger-sync/templates/deployment.yaml b/deploy/cf-ledger-sync/templates/deployment.yaml index 4d337bb8..6a4cfd43 100644 --- a/deploy/cf-ledger-sync/templates/deployment.yaml +++ b/deploy/cf-ledger-sync/templates/deployment.yaml @@ -27,12 +27,32 @@ spec: value: {{ .Values.network | default "preprod" }} - name: DB_DIALECT value: {{ .Values.dbDialect | default "org.hibernate.dialect.PostgreSQLDialect" }} + {{ if .Values.useLocalCardanoNode }} + - name: STORE_CARDANO_HOST + value: "cardano-node" + - name: STORE_CARDANO_PORT + value: "3001" + {{ if eq .Values.localCardanoNode.network "preview" }} + - name: STORE_CARDANO_PROTOCOL_MAGIC + value: "2" + {{- else if eq .Values.localCardanoNode.network "preprod" }} + - name: STORE_CARDANO_PROTOCOL_MAGIC + value: "1" + {{- else if eq .Values.localCardanoNode.network "mainnet" }} + - name: STORE_CARDANO_PROTOCOL_MAGIC + value: "764824073" + {{- else if eq .Values.localCardanoNode.network "sanchonet" }} + - name: STORE_CARDANO_PROTOCOL_MAGIC + value: "4" + {{- end }} + {{- else }} - name: STORE_CARDANO_HOST value: {{ .Values.storeCardanoHost | default "preprod-node.world.dev.cardano.org" }} - name: STORE_CARDANO_PORT value: {{ .Values.storeCardanoPort | default "30000" | quote }} - name: STORE_CARDANO_PROTOCOL_MAGIC value: {{ .Values.storeCardanoProtocolMagic | default "1" | quote }} + {{- end }} ## Postgres - name: POSTGRES_HOST diff --git a/deploy/cf-ledger-sync/values-mainnet.yaml b/deploy/cf-ledger-sync/values-mainnet.yaml index ab5b2ef4..78b30c63 100644 --- a/deploy/cf-ledger-sync/values-mainnet.yaml +++ b/deploy/cf-ledger-sync/values-mainnet.yaml @@ -1,5 +1,8 @@ dbSchema: mainnet network: mainnet +localCardanoNode: + network: mainnet + volumeSize: 200Gi storeCardanoHost: backbone.cardano-mainnet.iohk.io storeCardanoPort: 3001 storeCardanoProtocolMagic: "764824073" diff --git a/deploy/cf-ledger-sync/values-preprod.yaml b/deploy/cf-ledger-sync/values-preprod.yaml index 2ac923b2..6295db06 100644 --- a/deploy/cf-ledger-sync/values-preprod.yaml +++ b/deploy/cf-ledger-sync/values-preprod.yaml @@ -1,2 +1,4 @@ domain: dev-sranjan.cf-explorer-preprod.eu-west-1.metadata.dev.cf-deployments.org dbSchema: preprod +localCardanoNode: + network: preprod diff --git a/deploy/cf-ledger-sync/values-preview.yaml b/deploy/cf-ledger-sync/values-preview.yaml index c36418c1..8177190b 100644 --- a/deploy/cf-ledger-sync/values-preview.yaml +++ b/deploy/cf-ledger-sync/values-preview.yaml @@ -1,5 +1,7 @@ dbSchema: preview network: preview +localCardanoNode: + network: preview storeCardanoHost: preview-node.play.dev.cardano.org storeCardanoPort: 3001 storeCardanoProtocolMagic: 2 diff --git a/deploy/cf-ledger-sync/values-sanchonet.yaml b/deploy/cf-ledger-sync/values-sanchonet.yaml index 1913a0e8..e0f6b5ed 100644 --- a/deploy/cf-ledger-sync/values-sanchonet.yaml +++ b/deploy/cf-ledger-sync/values-sanchonet.yaml @@ -1,5 +1,7 @@ dbSchema: sanchonet network: sanchonet +localCardanoNode: + network: sanchonet storeCardanoHost: sanchonet-node.play.dev.cardano.org storeCardanoPort: 3001 storeCardanoProtocolMagic: 4 diff --git a/deploy/cf-ledger-sync/values.yaml b/deploy/cf-ledger-sync/values.yaml index f9970e2c..f4543f39 100644 --- a/deploy/cf-ledger-sync/values.yaml +++ b/deploy/cf-ledger-sync/values.yaml @@ -1,5 +1,13 @@ replicaCount: 1 +useLocalCardanoNode: false +localCardanoNode: + enabled: false + image: + repository: ghcr.io/blinklabs-io/cardano-node + tag: 8.7.3-2 + mithrilRestore: "true" + image: repository: pro.registry.gitlab.metadata.dev.cf-deployments.org/base-infrastructure/docker-registry/cf-ledger-sync tag: "d5f1455"