From 08286daeb08d2116493ec3aee3b995852e06add8 Mon Sep 17 00:00:00 2001 From: Muhammad Rehan Date: Sat, 20 Nov 2021 03:45:13 +0500 Subject: [PATCH 1/9] Add deployments for additional coins --- Makefile | 4 + .../templates/lib/containers/_image.tpl | 2 +- .../templates/lib/containers/_port.tpl | 12 +++ .../templates/lib/storage/_appStorage.tpl | 12 +-- test/machinaris/1.0.11/Chart.yaml | 2 +- .../1.0.11/charts/common-2105.0.0.tgz | Bin 0 -> 4422 bytes test/machinaris/1.0.11/ix_values.yaml | 85 +++++++++++++++++- .../1.0.11/templates/coins-deployment.yaml | 51 +++++++++++ test/machinaris/1.0.11/templates/service.yaml | 1 + test/machinaris/1.0.11/test_values.yaml | 2 +- 10 files changed, 161 insertions(+), 10 deletions(-) create mode 100644 Makefile create mode 100644 library/common/2105.0.0/templates/lib/containers/_port.tpl create mode 100644 test/machinaris/1.0.11/charts/common-2105.0.0.tgz create mode 100644 test/machinaris/1.0.11/templates/coins-deployment.yaml diff --git a/Makefile b/Makefile new file mode 100644 index 0000000000..2cd6b18b89 --- /dev/null +++ b/Makefile @@ -0,0 +1,4 @@ + +validate: + @helm dependency update ./test/machinaris/1.0.11 + @helm template --values ./test/machinaris/1.0.11/ix_values.yaml machinaris ./test/machinaris/1.0.11 --debug \ No newline at end of file diff --git a/library/common/2105.0.0/templates/lib/containers/_image.tpl b/library/common/2105.0.0/templates/lib/containers/_image.tpl index 4a5a368008..2b2b04561d 100644 --- a/library/common/2105.0.0/templates/lib/containers/_image.tpl +++ b/library/common/2105.0.0/templates/lib/containers/_image.tpl @@ -4,6 +4,6 @@ Retrieve image configuration for container {{- define "common.containers.imageConfig" -}} {{- $values := . -}} {{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "repository" "tag" "pullPolicy")) -}} -image: "{{ $values.repository }}:{{ $values.tag }}" +image: "{{ $values.repository }}{{- if hasKey $values "postfix" -}}-{{ $values.postfix }}{{- end -}}:{{ $values.tag }}" imagePullPolicy: {{ $values.pullPolicy }} {{- end -}} diff --git a/library/common/2105.0.0/templates/lib/containers/_port.tpl b/library/common/2105.0.0/templates/lib/containers/_port.tpl new file mode 100644 index 0000000000..7833994311 --- /dev/null +++ b/library/common/2105.0.0/templates/lib/containers/_port.tpl @@ -0,0 +1,12 @@ +{{/* +Retrieve ports configuration for container +*/}} +{{- define "common.containers.configurePorts" -}} +ports: +{{- range $index, $port := .ports -}} +{{- include "common.schema.validateKeys" (dict "values" $port "checkKeys" (list "protocol" "containerPort")) }} +- protocol: {{ $port.protocol }} + containerPort: {{ $port.containerPort }} + {{- if hasKey $port "name" }}name: {{ $port.name }}{{ end -}} +{{- end }} +{{ end -}} diff --git a/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl b/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl index 0651870eb1..7e83dddf0e 100644 --- a/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl +++ b/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl @@ -29,23 +29,23 @@ Define hostPath for appVolumes {{- $values := . -}} {{- if $values.appVolumeMounts -}} {{- range $name, $av := $values.appVolumeMounts -}} -{{ if (default true $av.enabled) }} +{{ if (default true $av.enabled) -}} - name: {{ $name }} - {{ if or $av.emptyDir $.emptyDirVolumes }} + {{- if or $av.emptyDir $.emptyDirVolumes }} emptyDir: {} {{- else -}} hostPath: - {{ if $av.hostPathEnabled }} + {{- if $av.hostPathEnabled }} path: {{ required "hostPath not set" $av.hostPath }} {{ else }} {{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "ixVolumes")) -}} {{- include "common.schema.validateKeys" (dict "values" $av "checkKeys" (list "datasetName")) -}} {{- $volDict := dict "datasetName" $av.datasetName "ixVolumes" $values.ixVolumes -}} path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }} - {{ end }} - {{ end }} + {{ end -}} + {{- end -}} {{ end }} -{{- end -}} +{{ end -}} {{- end -}} {{- end -}} diff --git a/test/machinaris/1.0.11/Chart.yaml b/test/machinaris/1.0.11/Chart.yaml index 2dd13f5a7f..ae80f76f96 100644 --- a/test/machinaris/1.0.11/Chart.yaml +++ b/test/machinaris/1.0.11/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v1 -appVersion: v0.6.1 +appVersion: v0.6.4 dependencies: - name: common repository: file://../../../library/common/2112.0.0 diff --git a/test/machinaris/1.0.11/charts/common-2105.0.0.tgz b/test/machinaris/1.0.11/charts/common-2105.0.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..a1defeb19596816159a9ca548ac7f7afe10ea12f GIT binary patch literal 4422 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 Date: Sat, 20 Nov 2021 04:35:53 +0500 Subject: [PATCH 2/9] Finalize Machinaris-1.1.0 - Add support for enabling cactus, chives, cryptodoge, flax, flora, hddcoin, maize, nchain, stacoin and stor coins into machinaris -- Add deployment for each coin with environment variables and volume mounts -- Add questions to configure them & turn them on/off on-demand - Revert to my initial cluster IP based implementation as it cannot co-exist with hostnetwork + we cannot change coin ports otherwise blockchain network won't be able to communicate - Updates to common/library --- Makefile | 6 +- charts/machinaris/1.1.0/.helmignore | 23 + charts/machinaris/1.1.0/Chart.yaml | 17 + charts/machinaris/1.1.0/README.md | 9 + charts/machinaris/1.1.0/app-readme.md | 4 + .../1.1.0/charts/common-2105.0.0.tgz | Bin 0 -> 4436 bytes charts/machinaris/1.1.0/ix_values.yaml | 16 + charts/machinaris/1.1.0/questions.yaml | 1857 +++++++++++++++++ charts/machinaris/1.1.0/requirements.lock | 6 + .../1.1.0}/templates/coins-deployment.yaml | 19 +- .../1.1.0/templates/deployment.yaml | 63 + .../machinaris/1.1.0/templates/service.yaml | 6 + charts/machinaris/1.1.0/test_values.yaml | 37 + .../templates/lib/storage/_appStorage.tpl | 2 +- .../templates/lib/storage/_appStorage.tpl | 14 +- test/machinaris/1.0.11/Chart.yaml | 2 +- .../1.0.11/charts/common-2105.0.0.tgz | Bin 4422 -> 4288 bytes test/machinaris/1.0.11/ix_values.yaml | 85 +- test/machinaris/1.0.11/templates/service.yaml | 1 - test/machinaris/1.0.11/test_values.yaml | 2 +- 20 files changed, 2065 insertions(+), 104 deletions(-) create mode 100644 charts/machinaris/1.1.0/.helmignore create mode 100644 charts/machinaris/1.1.0/Chart.yaml create mode 100755 charts/machinaris/1.1.0/README.md create mode 100644 charts/machinaris/1.1.0/app-readme.md create mode 100644 charts/machinaris/1.1.0/charts/common-2105.0.0.tgz create mode 100644 charts/machinaris/1.1.0/ix_values.yaml create mode 100644 charts/machinaris/1.1.0/questions.yaml create mode 100644 charts/machinaris/1.1.0/requirements.lock rename {test/machinaris/1.0.11 => charts/machinaris/1.1.0}/templates/coins-deployment.yaml (75%) create mode 100644 charts/machinaris/1.1.0/templates/deployment.yaml create mode 100644 charts/machinaris/1.1.0/templates/service.yaml create mode 100644 charts/machinaris/1.1.0/test_values.yaml diff --git a/Makefile b/Makefile index 2cd6b18b89..9d6cd8a72f 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -validate: - @helm dependency update ./test/machinaris/1.0.11 - @helm template --values ./test/machinaris/1.0.11/ix_values.yaml machinaris ./test/machinaris/1.0.11 --debug \ No newline at end of file +validate-machinaris: + @helm dependency update ./charts/machinaris/${v} + @helm template --values ./charts/machinaris/${v}/test_values.yaml machinaris ./charts/machinaris/${v} --debug diff --git a/charts/machinaris/1.1.0/.helmignore b/charts/machinaris/1.1.0/.helmignore new file mode 100644 index 0000000000..46fd899656 --- /dev/null +++ b/charts/machinaris/1.1.0/.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 +*~ +# Various IDEs +.project +.idea/ +*.tmproj +# OWNERS file for Kubernetes +OWNERS diff --git a/charts/machinaris/1.1.0/Chart.yaml b/charts/machinaris/1.1.0/Chart.yaml new file mode 100644 index 0000000000..8bfc60add9 --- /dev/null +++ b/charts/machinaris/1.1.0/Chart.yaml @@ -0,0 +1,17 @@ +apiVersion: v1 +appVersion: v0.6.6 +dependencies: +- name: common + repository: file://../../../library/common/2105.0.0 + version: 2105.0.0 +description: Global, Versioned, peer-to-peer filesystem. +home: https://github.com/guydavis/machinaris +icon: https://raw.githubusercontent.com/guydavis/machinaris/main/web/static/favicon.ico +keywords: +- storage +- crypto +- blockchain +name: machinaris +sources: +- https://github.com/guydavis/machinaris +version: 1.1.0 diff --git a/charts/machinaris/1.1.0/README.md b/charts/machinaris/1.1.0/README.md new file mode 100755 index 0000000000..613aec890d --- /dev/null +++ b/charts/machinaris/1.1.0/README.md @@ -0,0 +1,9 @@ +Machinaris +===== + +[MACHINARIS](https://github.com/guydavis/machinaris) is an easy-to-use WebUI for Chia plotting and farming. Includes Chia, Plotman, MadMax, Chiadog, and Flax in a single Docker image. + +Introduction +------------ + +This chart bootstraps MACHINARIS deployment on a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager. diff --git a/charts/machinaris/1.1.0/app-readme.md b/charts/machinaris/1.1.0/app-readme.md new file mode 100644 index 0000000000..0e815a115c --- /dev/null +++ b/charts/machinaris/1.1.0/app-readme.md @@ -0,0 +1,4 @@ +Machinaris +===== + +[MACHINARIS](https://github.com/guydavis/machinaris) is an easy-to-use WebUI for Chia plotting and farming. Includes Chia, Plotman, MadMax, Chiadog, and Flax in a single Docker image. diff --git a/charts/machinaris/1.1.0/charts/common-2105.0.0.tgz b/charts/machinaris/1.1.0/charts/common-2105.0.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..1517a233fc11369dd210bfbe3446c5a57b7d348b GIT binary patch literal 4436 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 a+p;a&vMt+EE&mDt0RR8y=x>D@ literal 0 HcmV?d00001 diff --git a/charts/machinaris/1.1.0/ix_values.yaml b/charts/machinaris/1.1.0/ix_values.yaml new file mode 100644 index 0000000000..63c8b7afd7 --- /dev/null +++ b/charts/machinaris/1.1.0/ix_values.yaml @@ -0,0 +1,16 @@ +image: + pullPolicy: IfNotPresent + repository: ghcr.io/guydavis/machinaris + tag: v0.6.6 +updateStrategy: Recreate +coins: + - cactus + - chives + - cryptodoge + - flax + - flora + - hddcoin + - maize + - nchain + - stacoin + - stor diff --git a/charts/machinaris/1.1.0/questions.yaml b/charts/machinaris/1.1.0/questions.yaml new file mode 100644 index 0000000000..1357b64934 --- /dev/null +++ b/charts/machinaris/1.1.0/questions.yaml @@ -0,0 +1,1857 @@ +groups: + - name: "Networking" + description: "Configure Networking for Machinaris" + - name: "Machinaris Configuration" + description: "Machinaris configuration" + - name: "Storage" + description: "Configure Storage for Machinaris" + - name: "Machinaris Environment Variables" + description: "Set the environment that will be visible to the container" + - name: "Resource Limits" + description: "Set CPU/memory limits for Kubernetes Pod" + - name: "Configure Coins" + description: "Configure different coins" + +portals: + web_portal: + protocols: + - "http" + host: + - "$node_ip" + ports: + - "$variable-machinaris_ui_port" + +questions: + - variable: timezone + label: "Configure timezone" + group: "Machinaris Configuration" + description: "Configure timezone for machinaris" + schema: + type: string + $ref: + - "definitions/timezone" + + - variable: nodeIP + description: "LAN IP address of your TrueNAS server" + group: "Machinaris Configuration" + label: "Worker Address" + schema: + type: string + $ref: + - "definitions/nodeIP" + + - variable: machinaris_ui_port + label: "Machinaris Web UI" + group: "Networking" + description: "Web UI Port for Machinaris" + schema: + type: int + min: 9000 + max: 65535 + default: 9003 + - variable: appVolumeMounts + label: "Machinaris Storage" + group: "Storage" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: true + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Machinaris Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Machinaris Configuration Volume" + schema: + type: hostpath + required: true + - variable: plots + label: "Plot Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Plots Volume Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "plots" + editable: false + - variable: mountPath + label: "Plots Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/plots" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Machinaris Plots Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Machinaris Plots Volume" + schema: + type: hostpath + required: true + - variable: plotting + label: "Plotting Temp Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Plotting Volume Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "plotting" + editable: false + - variable: mountPath + label: "Plotting Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/plotting" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Machinaris Plotting Temp Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Machinaris Plotting Volume" + schema: + type: hostpath + required: true + + - variable: extraAppVolumeMounts + label: "Machinaris Extra Host Path Volumes" + group: "Storage" + schema: + type: list + items: + - variable: extraAppVolume + label: "Machinaris Host Path Volume" + description: "Add an extra host path volume for machinaris application" + schema: + type: dict + attrs: + - variable: mountPath + label: "Mount Path in Pod" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + required: true + - variable: hostPath + label: "Host Path" + description: "Host path" + schema: + type: hostpath + required: true + + - variable: environmentVariables + label: "Environment Variables for Machinaris" + group: "Machinaris Environment Variables" + schema: + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" + schema: + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + - variable: enableResourceLimits + label: "Enable Pod resource limits" + group: "Resource Limits" + schema: + type: boolean + - variable: cpuLimit + label: "CPU limit" + group: "Resource Limits" + schema: + type: string + show_if: [["enableResourceLimits", "=", true]] + valid_chars: "^\\d+(?:\\.\\d+(?!.*m$)|m?$)" + - variable: memLimit + label: "Memory limit" + group: "Resource Limits" + schema: + type: string + show_if: [["enableResourceLimits", "=", true]] + valid_chars: "^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$" + + # Cactus Configurations + - variable: cactusEnabled + label: "Enable Cactus" + group: "Configure Coins" + schema: + type: boolean + default: false + - variable: cactus + label: "Configure Cactus" + group: "Configure Coins" + schema: + type: dict + show_if: [["cactusEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8936 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8936 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 11444 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 11447 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "cactus-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + + # Chives Configurations + - variable: chivesEnabled + label: "Enable Chives" + group: "Configure Coins" + schema: + type: boolean + default: false + - variable: chives + label: "Configure Chives" + group: "Configure Coins" + schema: + type: dict + show_if: [["chivesEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8931 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8931 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 9699 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 9647 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "chives-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + + # Cryptodoge Configurations + - variable: cryptodogeEnabled + label: "Enable Cryptodoge" + group: "Configure Coins" + schema: + type: boolean + default: false + - variable: cryptodoge + label: "Configure Cryptodoge" + group: "Configure Coins" + schema: + type: dict + show_if: [["cryptodogeEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8937 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8937 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 15994 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 16895 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "cryptodoge-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + + # Flax Configurations + - variable: flaxEnabled + label: "Enable Flax" + group: "Configure Coins" + schema: + type: boolean + default: false + - variable: flax + label: "Configure Flax" + group: "Configure Coins" + schema: + type: dict + show_if: [["flaxEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8928 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8928 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 6888 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 6885 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "flax-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + + # Flora Configurations + - variable: floraEnabled + label: "Enable Flora" + group: "Configure Coins" + schema: + type: boolean + default: false + - variable: flora + label: "Configure Flora" + group: "Configure Coins" + schema: + type: dict + show_if: [["floraEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8932 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8932 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 18644 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 18647 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "flora-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + + # HDDCoin Configurations + - variable: hddcoinEnabled + label: "Enable HDDCoin" + group: "Configure Coins" + schema: + type: boolean + default: false + - variable: hddcoin + label: "Configure HDDCoin" + group: "Configure Coins" + schema: + type: dict + show_if: [["hddcoinEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8930 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8930 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 28444 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 28447 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "hddcoin-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + + # Maize Configurations + - variable: maizeEnabled + label: "Enable Maize" + group: "Configure Coins" + schema: + type: boolean + default: false + - variable: maize + label: "Configure Maize" + group: "Configure Coins" + schema: + type: dict + show_if: [["maizeEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8933 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8933 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8644 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8647 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "maize-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + + # N-Chain Configurations + - variable: nchainEnabled + label: "Enable N-Chain" + group: "Configure Coins" + schema: + type: boolean + default: false + - variable: nchain + label: "Configure N-Chain" + group: "Configure Coins" + schema: + type: dict + show_if: [["nchainEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8929 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8929 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 58445 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 38447 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "nchain-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + + # Stacoin Configurations + - variable: stacoinEnabled + label: "Enable Stacoin" + group: "Configure Coins" + schema: + type: boolean + default: false + - variable: stacoin + label: "Configure Stacoin" + group: "Configure Coins" + schema: + type: dict + show_if: [["stacoinEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8934 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8934 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 1999 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 1692 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "stacoin-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + + # Stor Configurations + - variable: storEnabled + label: "Enable Stor" + group: "Configure Coins" + schema: + type: boolean + default: true + - variable: stor + label: "Configure Stor" + group: "Configure Coins" + schema: + type: dict + show_if: [["storEnabled", "=", true]] + attrs: + - variable: apiPort + label: "API Port" + description: "API port on the pod" + schema: + type: int + editable: false + default: 8935 + - variable: ports + label: "Ports" + description: "Container ports that are also forwarded on the host" + schema: + type: list + items: + - variable: apiPort + label: "API Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8935 + - variable: blockchainPort + label: "Blockchain Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8668 + - variable: farmingPort + label: "Farming Port" + schema: + type: dict + attrs: + - variable: protocol + label: "Protocol" + schema: + editable: false + type: string + default: TCP + - variable: containerPort + label: "Host/Container Port" + schema: + editable: false + type: int + default: 8337 + + - variable: volumeMounts + label: "Storage Configurations" + schema: + type: dict + attrs: + - variable: config + label: "Configuration Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "stor-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: datasetSubPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt:ro" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true diff --git a/charts/machinaris/1.1.0/requirements.lock b/charts/machinaris/1.1.0/requirements.lock new file mode 100644 index 0000000000..eba13d88bf --- /dev/null +++ b/charts/machinaris/1.1.0/requirements.lock @@ -0,0 +1,6 @@ +dependencies: +- name: common + repository: file://../../../library/common/2105.0.0 + version: 2105.0.0 +digest: sha256:11522ab36487826700d7ad0f86f713a4bb5d35248014bcef690fe94acbc09ef6 +generated: "2021-05-17T18:26:46.201544+05:00" diff --git a/test/machinaris/1.0.11/templates/coins-deployment.yaml b/charts/machinaris/1.1.0/templates/coins-deployment.yaml similarity index 75% rename from test/machinaris/1.0.11/templates/coins-deployment.yaml rename to charts/machinaris/1.1.0/templates/coins-deployment.yaml index 3af155ba09..6e1f9e02a7 100644 --- a/test/machinaris/1.0.11/templates/coins-deployment.yaml +++ b/charts/machinaris/1.1.0/templates/coins-deployment.yaml @@ -1,6 +1,11 @@ {{- $ref := . }} -{{- range $coin := $ref.Values.coins }} -{{ $_ := set $ref "common" (dict "nameSuffix" $coin.name) }} +{{- range $coinName := $ref.Values.coins }} +{{- $coinEnabled := get $ref.Values (printf "%vEnabled" $coinName) }} +{{- if $coinEnabled }} +{{- $coin := get $ref.Values $coinName }} +{{- $_ := set $ref "common" (dict "nameSuffix" $coinName) }} +{{- $_ := set $coin.volumeMounts "plots" $ref.Values.appVolumeMounts.plots }} +{{- $_ := set $coin.volumeMounts "plotting" $ref.Values.appVolumeMounts.plotting }} apiVersion: {{ template "common.capabilities.deployment.apiVersion" $ref }} kind: Deployment metadata: @@ -16,6 +21,7 @@ spec: name: {{ template "common.names.fullname" $ref }} labels: {{ include "common.labels.selectorLabels" $ref | nindent 8 }} spec: + hostNetwork: true containers: - name: {{ $ref.Chart.Name }} {{ if $ref.Values.enableResourceLimits }} @@ -27,7 +33,7 @@ spec: tty: true {{ include "common.containers.imageConfig" (dict "repository" $ref.Values.image.repository "tag" $ref.Values.image.tag "pullPolicy" $ref.Values.image.pullPolicy "postfix" $ref.common.nameSuffix) | nindent 10 }} {{ include "common.containers.configurePorts" $coin | nindent 10 }} - volumeMounts: {{ include "common.storage.configureAppVolumeMountsInContainer" $ref.Values | nindent 12 }} + volumeMounts: {{ include "common.storage.configureAppVolumeMountsInContainer" (dict "appVolumeMounts" $coin.appVolumeMounts "ixVolumes" $ref.Values.ixVolumes) | nindent 12 }} {{ range $index, $hostPathConfiguration := $ref.Values.extraAppVolumeMounts }} - name: extrappvolume-{{ $index }} mountPath: {{ $hostPathConfiguration.mountPath }} @@ -37,15 +43,16 @@ spec: {{ $envList = mustAppend $envList (dict "name" "worker_address" "value" $ref.Values.nodeIP) }} {{ $envList = mustAppend $envList (dict "name" "controller_host" "value" $ref.Values.nodeIP) }} {{ $envList = mustAppend $envList (dict "name" "worker_api_port" "value" $coin.apiPort) }} - {{ $envList = mustAppend $envList (dict "name" "blockchains" "value" $coin.name) }} + {{ $envList = mustAppend $envList (dict "name" "blockchains" "value" $coinName) }} {{ $envList = mustAppend $envList (dict "name" "plots_dir" "value" $ref.Values.appVolumeMounts.plots.mountPath) }} {{ $envList = mustAppend $envList (dict "name" "mode" "value" "fullnode") }} {{ include "common.containers.allEnvironmentVariables" (dict "environmentVariables" $envList) | nindent 10 }} - volumes: {{ include "common.storage.configureAppVolumes" $ref.Values | nindent 8 }} + volumes: {{ include "common.storage.configureAppVolumes" (dict "appVolumeMounts" $coin.volumeMounts "ixVolumes" $ref.Values.ixVolumes) | nindent 8 }} {{ range $index, $hostPathConfiguration := $ref.Values.extraAppVolumeMounts }} - - name: extrappvolume-{{ $coin.name }}-{{ $index }} + - name: extrappvolume-{{ $coinName }}-{{ $index }} hostPath: path: {{ $hostPathConfiguration.hostPath }} {{ end }} --- {{- end }} +{{- end }} diff --git a/charts/machinaris/1.1.0/templates/deployment.yaml b/charts/machinaris/1.1.0/templates/deployment.yaml new file mode 100644 index 0000000000..8d5b473bbd --- /dev/null +++ b/charts/machinaris/1.1.0/templates/deployment.yaml @@ -0,0 +1,63 @@ +{{- if hasKey . "common" }} +{{- $_ := unset .common "nameSuffix" }} +{{- end }} +apiVersion: {{ template "common.capabilities.deployment.apiVersion" . }} +kind: Deployment +metadata: + name: {{ template "common.names.fullname" . }} + labels: {{ include "common.labels" . | nindent 4 }} +spec: + strategy: + type: {{ .Values.updateStrategy }} + selector: + matchLabels: {{ include "common.labels.selectorLabels" . | nindent 6 }} + template: + metadata: + name: {{ template "common.names.fullname" . }} + labels: {{ include "common.labels.selectorLabels" . | nindent 8 }} + spec: + # FIXME: Let's please remove hostnetwork when upstream hostport issue is sorted out with kube-router + hostNetwork: true + containers: + - name: {{ .Chart.Name }} + {{ if .Values.enableResourceLimits }} + resources: + limits: + cpu: {{ .Values.cpuLimit }} + memory: {{ .Values.memLimit }} + {{ end }} + tty: true + {{ include "common.containers.imageConfig" .Values.image | nindent 10 }} + volumeMounts: {{ include "common.storage.configureAppVolumeMountsInContainer" .Values | nindent 12 }} + {{ range $index, $hostPathConfiguration := .Values.extraAppVolumeMounts }} + - name: extrappvolume-{{ $index }} + mountPath: {{ $hostPathConfiguration.mountPath }} + {{ end }} + ports: + - name: chia-network + protocol: TCP + containerPort: 8444 + hostPort: 8444 + - name: machinaris-ui + protocol: TCP + containerPort: 8926 + - name: machinaris-api + protocol: TCP + containerPort: 8927 + hostPort: 8927 + - protocol: TCP + containerPort: 8447 + hostPort: 8447 + {{ $envList := (default list .Values.environmentVariables) }} + {{ $envList = mustAppend $envList (dict "name" "TZ" "value" $.Values.timezone) }} + {{ $envList = mustAppend $envList (dict "name" "worker_address" "value" $.Values.nodeIP) }} + {{ $envList = mustAppend $envList (dict "name" "mode" "value" "fullnode") }} + {{ $envList = mustAppend $envList (dict "name" "plots_dir" "value" $.Values.appVolumeMounts.plots.mountPath) }} + {{ $envList = mustAppend $envList (dict "name" "blockchains" "value" "chia") }} + {{ include "common.containers.allEnvironmentVariables" (dict "environmentVariables" $envList) | nindent 10 }} + volumes: {{ include "common.storage.configureAppVolumes" .Values | nindent 8 }} + {{ range $index, $hostPathConfiguration := .Values.extraAppVolumeMounts }} + - name: extrappvolume-{{ $index }} + hostPath: + path: {{ $hostPathConfiguration.hostPath }} + {{ end }} diff --git a/charts/machinaris/1.1.0/templates/service.yaml b/charts/machinaris/1.1.0/templates/service.yaml new file mode 100644 index 0000000000..bc10f57869 --- /dev/null +++ b/charts/machinaris/1.1.0/templates/service.yaml @@ -0,0 +1,6 @@ +{{ $svc := .Values }} +{{ $ports := list }} +{{ $ports = mustAppend $ports (dict "name" "pms" "port" $svc.machinaris_ui_port "nodePort" $svc.machinaris_ui_port "targetPort" "machinaris-ui") }} +{{ $params := . }} +{{ $_ := set $params "commonService" (dict "ports" $ports "type" "NodePort" ) }} +{{ include "common.classes.service" $params }} diff --git a/charts/machinaris/1.1.0/test_values.yaml b/charts/machinaris/1.1.0/test_values.yaml new file mode 100644 index 0000000000..2f2d4a3c48 --- /dev/null +++ b/charts/machinaris/1.1.0/test_values.yaml @@ -0,0 +1,37 @@ +appVolumeMounts: + config: + emptyDir: true + mountPath: /root/.chia + plots: + emptyDir: true + mountPath: /plots + plotting: + emptyDir: true + mountPath: /plotting +image: + pullPolicy: IfNotPresent + repository: ghcr.io/guydavis/machinaris + tag: v0.6.6 +machinaris_ui_port: 31003 +timezone: America/Edmonton +updateStrategy: Recreate +nodeIP: 127.0.0.1 +coins: + - cactus +cactusEnabled: true +cactus: + apiPort: 8935 + ports: + - protocol: TCP + containerPort: 8935 + - protocol: TCP + containerPort: 8668 + - protocol: TCP + containerPort: 8337 + volumeMounts: + cactus-config: + emptyDir: true + mountPath: /root/.chia + mnemonic: + emptyDir: true + mountPath: /root/.chia/mnemonic.txt diff --git a/library/common/2101.0.0/templates/lib/storage/_appStorage.tpl b/library/common/2101.0.0/templates/lib/storage/_appStorage.tpl index 0651870eb1..49cfbbfeda 100644 --- a/library/common/2101.0.0/templates/lib/storage/_appStorage.tpl +++ b/library/common/2101.0.0/templates/lib/storage/_appStorage.tpl @@ -41,7 +41,7 @@ Define hostPath for appVolumes {{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "ixVolumes")) -}} {{- include "common.schema.validateKeys" (dict "values" $av "checkKeys" (list "datasetName")) -}} {{- $volDict := dict "datasetName" $av.datasetName "ixVolumes" $values.ixVolumes -}} - path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }} + path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }}{{- if $av.datasetSubPath -}}{{- printf "/%s" $av.datasetSubPath -}}{{- end -}} {{ end }} {{ end }} {{ end }} diff --git a/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl b/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl index 7e83dddf0e..49cfbbfeda 100644 --- a/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl +++ b/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl @@ -29,23 +29,23 @@ Define hostPath for appVolumes {{- $values := . -}} {{- if $values.appVolumeMounts -}} {{- range $name, $av := $values.appVolumeMounts -}} -{{ if (default true $av.enabled) -}} +{{ if (default true $av.enabled) }} - name: {{ $name }} - {{- if or $av.emptyDir $.emptyDirVolumes }} + {{ if or $av.emptyDir $.emptyDirVolumes }} emptyDir: {} {{- else -}} hostPath: - {{- if $av.hostPathEnabled }} + {{ if $av.hostPathEnabled }} path: {{ required "hostPath not set" $av.hostPath }} {{ else }} {{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "ixVolumes")) -}} {{- include "common.schema.validateKeys" (dict "values" $av "checkKeys" (list "datasetName")) -}} {{- $volDict := dict "datasetName" $av.datasetName "ixVolumes" $values.ixVolumes -}} - path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }} - {{ end -}} - {{- end -}} + path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }}{{- if $av.datasetSubPath -}}{{- printf "/%s" $av.datasetSubPath -}}{{- end -}} + {{ end }} + {{ end }} {{ end }} -{{ end -}} +{{- end -}} {{- end -}} {{- end -}} diff --git a/test/machinaris/1.0.11/Chart.yaml b/test/machinaris/1.0.11/Chart.yaml index ae80f76f96..2dd13f5a7f 100644 --- a/test/machinaris/1.0.11/Chart.yaml +++ b/test/machinaris/1.0.11/Chart.yaml @@ -1,5 +1,5 @@ apiVersion: v1 -appVersion: v0.6.4 +appVersion: v0.6.1 dependencies: - name: common repository: file://../../../library/common/2112.0.0 diff --git a/test/machinaris/1.0.11/charts/common-2105.0.0.tgz b/test/machinaris/1.0.11/charts/common-2105.0.0.tgz index a1defeb19596816159a9ca548ac7f7afe10ea12f..ef6f820efb63f7b71b04a313be6b82dee84585b7 100644 GIT binary patch delta 4070 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 YE!(m!+fpt63IG8A|Im7!od9|O0PPb7{r~^~ delta 4205 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 Date: Sat, 4 Dec 2021 22:25:57 +0500 Subject: [PATCH 3/9] Finalize Machinaris-v0.6.7_1.1.0 - Fix raise condition - Fix mnemonic.txt getting mounted into coin pods in rw mode - Add helpers for Machinaris (to simplify deployments) - Add default environment variables for main + coin workloads - Add ability to override the environment variables for main + coin workloads - Upgrade to latest version v0.6.7 + on-board BTCGreen fork - Update READMEs to include all the essential information for visibility --- charts/machinaris/1.1.0/Chart.yaml | 6 +- charts/machinaris/1.1.0/README.md | 64 +- charts/machinaris/1.1.0/app-readme.md | 64 +- .../1.1.0/charts/common-2105.0.0.tgz | Bin 4436 -> 0 bytes .../1.1.0/charts/common-2106.0.0.tgz | Bin 0 -> 4457 bytes charts/machinaris/1.1.0/ix_values.yaml | 168 +- charts/machinaris/1.1.0/questions.yaml | 2640 ++++++++--------- charts/machinaris/1.1.0/requirements.lock | 8 +- .../machinaris/1.1.0/templates/_helpers.tpl | 40 + .../1.1.0/templates/coins-deployment.yaml | 20 +- .../1.1.0/templates/deployment.yaml | 31 +- charts/machinaris/1.1.0/test_values.yaml | 63 +- .../templates/lib/storage/_appStorage.tpl | 2 +- .../templates/lib/containers/_image.tpl | 2 +- .../templates/lib/containers/_port.tpl | 3 +- .../templates/lib/storage/_appStorage.tpl | 2 +- library/common/2106.0.0/.helmignore | 23 + library/common/2106.0.0/Chart.yaml | 23 + library/common/2106.0.0/README.md | 11 + .../2106.0.0/templates/_serviceaccount.tpl | 11 + .../2106.0.0/templates/classes/_service.tpl | 41 + .../templates/classes/_service_ports.tpl | 19 + .../templates/lib/chart/_annotations.tpl | 6 + .../templates/lib/chart/_capabilities.tpl | 27 + .../2106.0.0/templates/lib/chart/_labels.tpl | 24 + .../2106.0.0/templates/lib/chart/_names.tpl | 66 + .../templates/lib/containers/_environment.tpl | 41 + .../templates/lib/containers/_image.tpl | 9 + .../templates/lib/containers/_port.tpl | 13 + .../templates/lib/containers/_resource.tpl | 10 + .../templates/lib/deployments/_utils.tpl | 41 + .../templates/lib/networking/_dns.tpl | 12 + .../templates/lib/resources/_certs.tpl | 26 + .../2106.0.0/templates/lib/schema/_utils.tpl | 19 + .../templates/lib/storage/_appStorage.tpl | 75 + .../templates/lib/storage/_ixvolumes.tpl | 11 + 36 files changed, 2109 insertions(+), 1512 deletions(-) delete mode 100644 charts/machinaris/1.1.0/charts/common-2105.0.0.tgz create mode 100644 charts/machinaris/1.1.0/charts/common-2106.0.0.tgz create mode 100644 charts/machinaris/1.1.0/templates/_helpers.tpl create mode 100644 library/common/2106.0.0/.helmignore create mode 100644 library/common/2106.0.0/Chart.yaml create mode 100644 library/common/2106.0.0/README.md create mode 100644 library/common/2106.0.0/templates/_serviceaccount.tpl create mode 100644 library/common/2106.0.0/templates/classes/_service.tpl create mode 100644 library/common/2106.0.0/templates/classes/_service_ports.tpl create mode 100644 library/common/2106.0.0/templates/lib/chart/_annotations.tpl create mode 100644 library/common/2106.0.0/templates/lib/chart/_capabilities.tpl create mode 100644 library/common/2106.0.0/templates/lib/chart/_labels.tpl create mode 100644 library/common/2106.0.0/templates/lib/chart/_names.tpl create mode 100644 library/common/2106.0.0/templates/lib/containers/_environment.tpl create mode 100644 library/common/2106.0.0/templates/lib/containers/_image.tpl create mode 100644 library/common/2106.0.0/templates/lib/containers/_port.tpl create mode 100644 library/common/2106.0.0/templates/lib/containers/_resource.tpl create mode 100644 library/common/2106.0.0/templates/lib/deployments/_utils.tpl create mode 100644 library/common/2106.0.0/templates/lib/networking/_dns.tpl create mode 100644 library/common/2106.0.0/templates/lib/resources/_certs.tpl create mode 100644 library/common/2106.0.0/templates/lib/schema/_utils.tpl create mode 100644 library/common/2106.0.0/templates/lib/storage/_appStorage.tpl create mode 100644 library/common/2106.0.0/templates/lib/storage/_ixvolumes.tpl diff --git a/charts/machinaris/1.1.0/Chart.yaml b/charts/machinaris/1.1.0/Chart.yaml index 8bfc60add9..fdc7733b2a 100644 --- a/charts/machinaris/1.1.0/Chart.yaml +++ b/charts/machinaris/1.1.0/Chart.yaml @@ -1,9 +1,9 @@ apiVersion: v1 -appVersion: v0.6.6 +appVersion: v0.6.7 dependencies: - name: common - repository: file://../../../library/common/2105.0.0 - version: 2105.0.0 + repository: file://../../../library/common/2106.0.0 + version: 2106.0.0 description: Global, Versioned, peer-to-peer filesystem. home: https://github.com/guydavis/machinaris icon: https://raw.githubusercontent.com/guydavis/machinaris/main/web/static/favicon.ico diff --git a/charts/machinaris/1.1.0/README.md b/charts/machinaris/1.1.0/README.md index 613aec890d..a505c78690 100755 --- a/charts/machinaris/1.1.0/README.md +++ b/charts/machinaris/1.1.0/README.md @@ -1,9 +1,71 @@ Machinaris ===== -[MACHINARIS](https://github.com/guydavis/machinaris) is an easy-to-use WebUI for Chia plotting and farming. Includes Chia, Plotman, MadMax, Chiadog, and Flax in a single Docker image. +[MACHINARIS](https://github.com/guydavis/machinaris) is an easy-to-use WebUI for Chia plotting and farming. This includes Chia, Plotman, MadMax, Chiadog under main node along with various coin-forks which can be enabled conditionally. + +Coins include Cactus, Chives, CrypoDoge, Flax, Flora, HDDCoin, Maize, NChain, StaiCoin, Stor and BTCGreen. Introduction ------------ This chart bootstraps MACHINARIS deployment on a [Kubernetes](http://kubernetes.io) cluster using the [Helm](https://helm.sh) package manager. + +# Machinaris Defaults +This section contains information about the defaults of Machinaris application for visibility. + +## 1. Environment Variables +Following are the default environment variables for Machinaris main node and the coin forks. + +### Machinaris Node +Machinaris main node comes with following default environment variables: + +| Variable | Default Value | Description | +| ---------------- | ----------------------------------------------------- | --------------------- | +| TZ | Same as to User selected Timezone | Timezone information | +| worker_address | Same as to LAN IP address | Worker Address | +| blockchains | chia | Block Chain | +| plots_dir | Same as to User selected plots volume | Plots Directory | +| mode | fullnode | Machinaris Mode | + +These values can be overridden while configuring Machinaris application. + +### Coin Forks +Coin forks also come with a set of default environment variables: + +| Variable | Default Value | Description | +| ---------------- | ----------------------------------------------------- | --------------------- | +| TZ | Same as to User selected Timezone | Timezone information | +| worker_address | Same as to LAN IP address | Worker Address | +| blockchains | chia | BlockChain | +| plots_dir | Same as to User selected plots volume | Plots Directory | +| mode | fullnode | Machinaris Mode | +| controller_host| Same as to LAN IP address | Controller Host | +| worker_api_port| Coin's Workload REST API Port | Worker API Port | + +These defaults can be overridden for each coin fork when you enable them through Machinaris application configuration. + +## 2. Volumes + +Before getting to defaults, please take the following note: +> +>If Custom Host Path is not enabled for a Volume Configuration then, application will use ix-volumes and create datasets inside for Host Path by default. +> +>The path for ix-volumes has the following composition: +>``` +>/mnt//ix-applications/releases//volumes/ix-volumes/ +>``` +>And with the dataset inside, would be like: +>``` +>/mnt//ix-applications/releases//volumes/ix-volumes/> +>``` +> +Following are the Volume Configurations for Machinaris main node & the coin-forks by default: + +| Volume | hostPath (default value) | mountPath in container | Description | +| ---------------------- | ----------------------------------------------------- | ----------------------- | ----------------------------------------------- | +| `config` | `/config` | `/root/.chia` | Chia config for main node | +| `plots` | `/plots` | `/plots` | Plots volume for main node & coin forks | +| `plotting` | `/plotting` | `/plotting` | Plotting temp volume for main node & coin forks | +| `-config` | `/-config` | `/root/.chia` | Chia config for each of the coin-fork containers| + +Where `` is `/mnt//ix-applications/releases//volumes/ix_volumes/` and `` is one of the following: `[ cactus, chives, crypodoge, flax, flora, hddcoin, maize, nchain, staicoin, stor, btcgreen ]`. diff --git a/charts/machinaris/1.1.0/app-readme.md b/charts/machinaris/1.1.0/app-readme.md index 0e815a115c..d8bfc3c15f 100644 --- a/charts/machinaris/1.1.0/app-readme.md +++ b/charts/machinaris/1.1.0/app-readme.md @@ -1,4 +1,66 @@ Machinaris ===== -[MACHINARIS](https://github.com/guydavis/machinaris) is an easy-to-use WebUI for Chia plotting and farming. Includes Chia, Plotman, MadMax, Chiadog, and Flax in a single Docker image. +[MACHINARIS](https://github.com/guydavis/machinaris) is an easy-to-use WebUI for Chia plotting and farming. This includes Chia, Plotman, MadMax, Chiadog under main node along with various coin-forks which can be enabled conditionally. + +Coins include Cactus, Chives, CrypoDoge, Flax, Flora, HDDCoin, Maize, NChain, StaiCoin, Stor and BTCGreen. + +# Machinaris Defaults +This section contains information about the defaults of Machinaris application for visibility. + +## 1. Environment Variables +Following are the default environment variables for Machinaris main node and the coin forks. + +### Machinaris Node +Machinaris main node comes with following default environment variables: + +| Variable | Default Value | Description | +| ---------------- | ----------------------------------------------------- | --------------------- | +| TZ | Same as to User selected Timezone | Timezone information | +| worker_address | Same as to LAN IP address | Worker Address | +| blockchains | chia | Block Chain | +| plots_dir | Same as to User selected plots volume | Plots Directory | +| mode | fullnode | Machinaris Mode | + +These values can be overridden while configuring Machinaris application. + +### Coin Forks +Coin forks also come with a set of default environment variables: + +| Variable | Default Value | Description | +| ---------------- | ----------------------------------------------------- | --------------------- | +| TZ | Same as to User selected Timezone | Timezone information | +| worker_address | Same as to LAN IP address | Worker Address | +| blockchains | chia | BlockChain | +| plots_dir | Same as to User selected plots volume | Plots Directory | +| mode | fullnode | Machinaris Mode | +| controller_host| Same as to LAN IP address | Controller Host | +| worker_api_port| Coin's Workload REST API Port | Worker API Port | + +These defaults can be overridden for each coin fork when you enable them through Machinaris application configuration. + +## 2. Volumes + +Before getting to defaults, please take the following note: +> +>If Custom Host Path is not enabled for a Volume Configuration then, application will use ix-volumes and create datasets inside for Host Path by default. +> +>The path for ix-volumes has the following composition: +>``` +>/mnt//ix-applications/releases//volumes/ix-volumes/ +>``` +>And with the dataset inside, would be like: +>``` +>/mnt//ix-applications/releases//volumes/ix-volumes/> +>``` +> +Following are the Volume Configurations for Machinaris main node & the coin-forks by default: + +| Volume | hostPath (default value) | mountPath in container | Description | +| ---------------------- | ----------------------------------------------------- | ----------------------- | ----------------------------------------------- | +| `config` | `/config` | `/root/.chia` | Chia config for main node | +| `plots` | `/plots` | `/plots` | Plots volume for main node & coin forks | +| `plotting` | `/plotting` | `/plotting` | Plotting temp volume for main node & coin forks | +| `-config` | `/-config` | `/root/.chia` | Chia config for each of the coin-fork containers| + +Where `` is `/mnt//ix-applications/releases//volumes/ix_volumes/` and `` is one of the following: `[ cactus, chives, crypodoge, flax, flora, hddcoin, maize, nchain, staicoin, stor, btcgreen ]`. diff --git a/charts/machinaris/1.1.0/charts/common-2105.0.0.tgz b/charts/machinaris/1.1.0/charts/common-2105.0.0.tgz deleted file mode 100644 index 1517a233fc11369dd210bfbe3446c5a57b7d348b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4436 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 a+p;a&vMt+EE&mDt0RR8y=x>D@ diff --git a/charts/machinaris/1.1.0/charts/common-2106.0.0.tgz b/charts/machinaris/1.1.0/charts/common-2106.0.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..2d75dd3b5893e93950c5d00d044f08af1e6b36a1 GIT binary patch literal 4457 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 literal 0 HcmV?d00001 diff --git a/charts/machinaris/1.1.0/ix_values.yaml b/charts/machinaris/1.1.0/ix_values.yaml index 63c8b7afd7..d60613761b 100644 --- a/charts/machinaris/1.1.0/ix_values.yaml +++ b/charts/machinaris/1.1.0/ix_values.yaml @@ -1,8 +1,25 @@ image: pullPolicy: IfNotPresent repository: ghcr.io/guydavis/machinaris - tag: v0.6.6 + tag: v0.6.7 updateStrategy: Recreate + +ports: + - name: chia-network + protocol: TCP + containerPort: 8444 + hostPort: 8444 + - name: machinaris-ui + protocol: TCP + containerPort: 8926 + - name: machinaris-api + protocol: TCP + containerPort: 8927 + hostPort: 8927 + - protocol: TCP + containerPort: 8447 + hostPort: 8447 + coins: - cactus - chives @@ -12,5 +29,152 @@ coins: - hddcoin - maize - nchain - - stacoin + - staicoin - stor + - btcgreen + +cactus: + apiPort: 8936 + ports: + - name: api + protocol: TCP + containerPort: 8936 + hostPort: 8936 + - name: blockchain + protocol: TCP + containerPort: 11444 + hostPort: 11444 + - name: farming + protocol: TCP + containerPort: 11447 + hostPort: 11447 + +chives: + apiPort: 8931 + ports: + - name: api + protocol: TCP + containerPort: 8931 + - name: blockchain + protocol: TCP + containerPort: 9699 + - name: farming + protocol: TCP + containerPort: 9647 + +cryptodoge: + apiPort: 8937 + ports: + - name: api + protocol: TCP + containerPort: 8937 + - name: blockchain + protocol: TCP + containerPort: 15994 + - name: farming + protocol: TCP + containerPort: 16895 + +flax: + apiPort: 8928 + ports: + - name: api + protocol: TCP + containerPort: 8928 + - name: blockchain + protocol: TCP + containerPort: 6888 + - name: farming + protocol: TCP + containerPort: 6885 + +flora: + apiPort: 8932 + ports: + - name: api + protocol: TCP + containerPort: 8932 + - name: blockchain + protocol: TCP + containerPort: 18644 + - name: farming + protocol: TCP + containerPort: 18647 + +hddcoin: + apiPort: 8930 + ports: + - name: api + protocol: TCP + containerPort: 8930 + - name: blockchain + protocol: TCP + containerPort: 28444 + - name: farming + protocol: TCP + containerPort: 28447 + +maize: + apiPort: 8933 + ports: + - name: api + protocol: TCP + containerPort: 8933 + - name: blockchain + protocol: TCP + containerPort: 8644 + - name: farming + protocol: TCP + containerPort: 8647 + +nchain: + apiPort: 8929 + ports: + - name: api + protocol: TCP + containerPort: 8929 + - name: blockchain + protocol: TCP + containerPort: 58445 + - name: farming + protocol: TCP + containerPort: 38447 + +staicoin: + apiPort: 8934 + ports: + - name: api + protocol: TCP + containerPort: 8934 + - name: blockchain + protocol: TCP + containerPort: 1999 + - name: farming + protocol: TCP + containerPort: 1692 + +stor: + apiPort: 8935 + ports: + - name: api + protocol: TCP + containerPort: 8935 + - name: blockchain + protocol: TCP + containerPort: 8668 + - name: farming + protocol: TCP + containerPort: 8337 + +btcgreen: + apiPort: 8938 + ports: + - name: api + protocol: TCP + containerPort: 8938 + - name: blockchain + protocol: TCP + containerPort: 9282 + - name: farming + protocol: TCP + containerPort: 18655 diff --git a/charts/machinaris/1.1.0/questions.yaml b/charts/machinaris/1.1.0/questions.yaml index 1357b64934..95ab05b290 100644 --- a/charts/machinaris/1.1.0/questions.yaml +++ b/charts/machinaris/1.1.0/questions.yaml @@ -49,6 +49,15 @@ questions: min: 9000 max: 65535 default: 9003 + - variable: machinarisApiPort + label: "Machinaris API port" + group: "Networking" + description: "API port for Machinaris" + schema: + editable: false + hidden: true + type: int + default: 8927 - variable: appVolumeMounts label: "Machinaris Storage" group: "Storage" @@ -233,161 +242,123 @@ questions: schema: type: boolean default: false - - variable: cactus - label: "Configure Cactus" - group: "Configure Coins" - schema: - type: dict - show_if: [["cactusEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8936 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8936 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 11444 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 11447 - - - variable: volumeMounts - label: "Storage Configurations" + show_subquestions_if: true + subquestions: + - variable: cactus + label: "Configure Cactus" schema: type: dict attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "cactus-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "cactus-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" schema: - type: dict - attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: name + label: "Name" schema: - type: hostpath - required: true + type: string + - variable: value + label: "Value" + schema: + type: string # Chives Configurations - variable: chivesEnabled @@ -396,161 +367,123 @@ questions: schema: type: boolean default: false - - variable: chives - label: "Configure Chives" - group: "Configure Coins" - schema: - type: dict - show_if: [["chivesEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8931 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8931 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 9699 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 9647 - - - variable: volumeMounts - label: "Storage Configurations" + show_subquestions_if: true + subquestions: + - variable: chives + label: "Configure Chives" schema: type: dict attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "chives-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "chives-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" schema: - type: dict - attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: name + label: "Name" schema: - type: hostpath - required: true + type: string + - variable: value + label: "Value" + schema: + type: string # Cryptodoge Configurations - variable: cryptodogeEnabled @@ -559,161 +492,123 @@ questions: schema: type: boolean default: false - - variable: cryptodoge - label: "Configure Cryptodoge" - group: "Configure Coins" - schema: - type: dict - show_if: [["cryptodogeEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8937 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8937 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 15994 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 16895 - - - variable: volumeMounts - label: "Storage Configurations" + show_subquestions_if: true + subquestions: + - variable: cryptodoge + label: "Configure Cryptodoge" schema: type: dict attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "cryptodoge-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "cryptodoge-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" schema: - type: dict - attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: name + label: "Name" schema: - type: hostpath - required: true + type: string + - variable: value + label: "Value" + schema: + type: string # Flax Configurations - variable: flaxEnabled @@ -722,161 +617,123 @@ questions: schema: type: boolean default: false - - variable: flax - label: "Configure Flax" - group: "Configure Coins" - schema: - type: dict - show_if: [["flaxEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8928 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8928 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 6888 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 6885 - - - variable: volumeMounts - label: "Storage Configurations" + show_subquestions_if: true + subquestions: + - variable: flax + label: "Configure Flax" schema: type: dict attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "flax-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "flax-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" schema: - type: dict - attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: name + label: "Name" schema: - type: hostpath - required: true + type: string + - variable: value + label: "Value" + schema: + type: string # Flora Configurations - variable: floraEnabled @@ -885,161 +742,123 @@ questions: schema: type: boolean default: false - - variable: flora - label: "Configure Flora" - group: "Configure Coins" - schema: - type: dict - show_if: [["floraEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8932 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8932 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 18644 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 18647 - - - variable: volumeMounts - label: "Storage Configurations" + show_subquestions_if: true + subquestions: + - variable: flora + label: "Configure Flora" schema: type: dict attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "flora-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "flora-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" schema: - type: dict - attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: name + label: "Name" schema: - type: hostpath - required: true + type: string + - variable: value + label: "Value" + schema: + type: string # HDDCoin Configurations - variable: hddcoinEnabled @@ -1048,161 +867,123 @@ questions: schema: type: boolean default: false - - variable: hddcoin - label: "Configure HDDCoin" - group: "Configure Coins" - schema: - type: dict - show_if: [["hddcoinEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8930 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8930 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 28444 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 28447 - - - variable: volumeMounts - label: "Storage Configurations" + show_subquestions_if: true + subquestions: + - variable: hddcoin + label: "Configure HDDCoin" schema: type: dict attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "hddcoin-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "hddcoin-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" schema: - type: dict - attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: name + label: "Name" schema: - type: hostpath - required: true + type: string + - variable: value + label: "Value" + schema: + type: string # Maize Configurations - variable: maizeEnabled @@ -1211,161 +992,123 @@ questions: schema: type: boolean default: false - - variable: maize - label: "Configure Maize" - group: "Configure Coins" - schema: - type: dict - show_if: [["maizeEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8933 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8933 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8644 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8647 - - - variable: volumeMounts - label: "Storage Configurations" + show_subquestions_if: true + subquestions: + - variable: maize + label: "Configure Maize" schema: type: dict attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "maize-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "maize-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" schema: - type: dict - attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: name + label: "Name" schema: - type: hostpath - required: true + type: string + - variable: value + label: "Value" + schema: + type: string # N-Chain Configurations - variable: nchainEnabled @@ -1374,324 +1117,248 @@ questions: schema: type: boolean default: false - - variable: nchain - label: "Configure N-Chain" - group: "Configure Coins" - schema: - type: dict - show_if: [["nchainEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8929 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8929 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 58445 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 38447 - - - variable: volumeMounts - label: "Storage Configurations" + show_subquestions_if: true + subquestions: + - variable: nchain + label: "Configure N-Chain" schema: type: dict attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "nchain-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "nchain-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" schema: - type: dict - attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: name + label: "Name" schema: - type: hostpath - required: true + type: string + - variable: value + label: "Value" + schema: + type: string - # Stacoin Configurations - - variable: stacoinEnabled - label: "Enable Stacoin" +# Staicoin Configurations + - variable: staicoinEnabled + label: "Enable Staicoin" group: "Configure Coins" schema: type: boolean default: false - - variable: stacoin - label: "Configure Stacoin" - group: "Configure Coins" - schema: - type: dict - show_if: [["stacoinEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8934 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8934 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 1999 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 1692 - - - variable: volumeMounts - label: "Storage Configurations" + show_subquestions_if: true + subquestions: + - variable: staicoin + label: "Configure Staicoin" schema: type: dict attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "stacoin-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "staicoin-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" schema: - type: dict - attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: name + label: "Name" schema: - type: hostpath - required: true + type: string + - variable: value + label: "Value" + schema: + type: string # Stor Configurations - variable: storEnabled @@ -1699,159 +1366,248 @@ questions: group: "Configure Coins" schema: type: boolean - default: true - - variable: stor - label: "Configure Stor" - group: "Configure Coins" - schema: - type: dict - show_if: [["storEnabled", "=", true]] - attrs: - - variable: apiPort - label: "API Port" - description: "API port on the pod" - schema: - type: int - editable: false - default: 8935 - - variable: ports - label: "Ports" - description: "Container ports that are also forwarded on the host" - schema: - type: list - items: - - variable: apiPort - label: "API Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8935 - - variable: blockchainPort - label: "Blockchain Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8668 - - variable: farmingPort - label: "Farming Port" - schema: - type: dict - attrs: - - variable: protocol - label: "Protocol" - schema: - editable: false - type: string - default: TCP - - variable: containerPort - label: "Host/Container Port" - schema: - editable: false - type: int - default: 8337 - - - variable: volumeMounts - label: "Storage Configurations" + default: false + show_subquestions_if: true + subquestions: + - variable: stor + label: "Configure Stor" schema: type: dict + show_if: [["storEnabled", "=", true]] attrs: - - variable: config - label: "Configuration Volume" + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Configuration Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "stor-config" - editable: false - - variable: mountPath - label: "Configuration Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Configuration Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Configuration Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true - - variable: mnemonic - label: "Mnemonic Volume" + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "stor-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" + schema: + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" + schema: + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string + +# BTCGreen Configurations + - variable: btcgreenEnabled + label: "Enable BTCGreen" + group: "Configure Coins" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: btcgreen + label: "Configure BTCGreen" + schema: + type: dict + show_if: [["btcgreenEnabled", "=", true]] + attrs: + - variable: volumeMounts + label: "Storage Configurations" schema: type: dict attrs: - - variable: datasetName - label: "Mnemonic Volume Dataset Name" + - variable: config + label: "Configuration Volume" schema: - type: string - hidden: true - $ref: - - "normalize/ixVolume" - show_if: [["hostPathEnabled", "=", false]] - default: "config" - editable: false - - variable: datasetSubPath - label: "Subpath in the Dataset" - schema: - type: string - hidden: true - show_if: [["hostPathEnabled", "=", false]] - default: "mnemonic.txt" - editable: false - - variable: mountPath - label: "Mnemonic Mount Path" - description: "Path where the volume will be mounted inside the pod" - schema: - type: path - hidden: true - editable: false - default: "/root/.chia/mnemonic.txt:ro" - - variable: hostPathEnabled - label: "Enable Custom Host Path for Mnemonic Volume" - schema: - type: boolean - default: false - show_subquestions_if: true - subquestions: - - variable: hostPath - label: "Host Path for Mnemonic Volume" + type: dict + attrs: + - variable: datasetName + label: "Configuration Volume Dataset Name" schema: - type: hostpath - required: true + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "btcgreen-config" + editable: false + - variable: mountPath + label: "Configuration Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia" + - variable: hostPathEnabled + label: "Enable Custom Host Path for Configuration Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Configuration Volume" + schema: + type: hostpath + required: true + - variable: mnemonic + label: "Mnemonic Volume" + schema: + type: dict + attrs: + - variable: datasetName + label: "Mnemonic Volume Dataset Name" + schema: + type: string + hidden: true + $ref: + - "normalize/ixVolume" + show_if: [["hostPathEnabled", "=", false]] + default: "config" + editable: false + - variable: mountPath + label: "Mnemonic Mount Path" + description: "Path where the volume will be mounted inside the pod" + schema: + type: path + hidden: true + editable: false + default: "/root/.chia/mnemonic.txt" + - variable: subPath + label: "Subpath in the Dataset" + schema: + type: string + hidden: true + show_if: [["hostPathEnabled", "=", false]] + default: "mnemonic.txt" + editable: false + - variable: readOnly + label: "Mode" + description: "Mnemonic file mode" + schema: + type: boolean + hidden: true + editable: false + default: true + - variable: hostPathEnabled + label: "Enable Custom Host Path for Mnemonic Volume" + schema: + type: boolean + default: false + show_subquestions_if: true + subquestions: + - variable: hostPath + label: "Host Path for Mnemonic Volume" + schema: + type: hostpath + required: true + - variable: environmentVariables + label: "Environment Variables" + schema: + type: list + default: [] + items: + - variable: environmentVariable + label: "Environment Variable" + schema: + type: dict + attrs: + - variable: name + label: "Name" + schema: + type: string + - variable: value + label: "Value" + schema: + type: string diff --git a/charts/machinaris/1.1.0/requirements.lock b/charts/machinaris/1.1.0/requirements.lock index eba13d88bf..01328aa52a 100644 --- a/charts/machinaris/1.1.0/requirements.lock +++ b/charts/machinaris/1.1.0/requirements.lock @@ -1,6 +1,6 @@ dependencies: - name: common - repository: file://../../../library/common/2105.0.0 - version: 2105.0.0 -digest: sha256:11522ab36487826700d7ad0f86f713a4bb5d35248014bcef690fe94acbc09ef6 -generated: "2021-05-17T18:26:46.201544+05:00" + repository: file://../../../library/common/2106.0.0 + version: 2106.0.0 +digest: sha256:0fe8d11fc6fcaa7c3738da379603ff67e172b710130c2055f91179d5d97c1993 +generated: "2021-12-04T20:10:11.366623+05:00" diff --git a/charts/machinaris/1.1.0/templates/_helpers.tpl b/charts/machinaris/1.1.0/templates/_helpers.tpl new file mode 100644 index 0000000000..52c11e849b --- /dev/null +++ b/charts/machinaris/1.1.0/templates/_helpers.tpl @@ -0,0 +1,40 @@ +{{/* +Init container for coin deployments +*/}} +{{- define "initContainers" -}} +{{- $values := . -}} +{{- $machinarisApiUrl := (printf "http://%v:%v/" $values.nodeIP $values.apiPort) -}} +initContainers: + - name: init-{{ $values.coinName }} + image: curlimages/curl:7.80.0 + command: ['sh', '-c', 'while [[ "$(curl -s -o /dev/null -w ''%{http_code}'' {{ $machinarisApiUrl }})" != "200" ]]; do echo "Machinaris is offline. Retrying in 2 seconds.." && sleep 2; done'] +{{- end -}} + + +{{/* +Evironment variables (support for overrides) +*/}} +{{- define "allEnvironmentVariables" -}} +{{- $finalEnvironmentVariables := .defaultEnv -}} +{{- range $env := .environmentVariables -}} + {{- $_ := set $finalEnvironmentVariables $env.name $env.value -}} +{{- end -}} +env: +{{- range $envVariableName := keys $finalEnvironmentVariables }} + - name: {{ $envVariableName | quote }} + value: {{ (get $finalEnvironmentVariables $envVariableName) | quote }} +{{- end -}} +{{- end -}} + + +{{/* +Resource limits +*/}} +{{- define "resourceLimits" -}} +{{- if .Values.enableResourceLimits -}} +resources: + limits: + cpu: {{ .Values.cpuLimit }} + memory: {{ .Values.memLimit }} +{{- end -}} +{{- end -}} diff --git a/charts/machinaris/1.1.0/templates/coins-deployment.yaml b/charts/machinaris/1.1.0/templates/coins-deployment.yaml index 6e1f9e02a7..237f8d7eaf 100644 --- a/charts/machinaris/1.1.0/templates/coins-deployment.yaml +++ b/charts/machinaris/1.1.0/templates/coins-deployment.yaml @@ -22,31 +22,19 @@ spec: labels: {{ include "common.labels.selectorLabels" $ref | nindent 8 }} spec: hostNetwork: true + {{- include "initContainers" (dict "nodeIP" $ref.Values.nodeIP "apiPort" $ref.Values.machinarisApiPort "coinName" $coinName ) | nindent 6 }} containers: - name: {{ $ref.Chart.Name }} - {{ if $ref.Values.enableResourceLimits }} - resources: - limits: - cpu: {{ $ref.Values.cpuLimit }} - memory: {{ $ref.Values.memLimit }} - {{ end }} + {{- include "resourceLimits" $ref | nindent 10 }} tty: true {{ include "common.containers.imageConfig" (dict "repository" $ref.Values.image.repository "tag" $ref.Values.image.tag "pullPolicy" $ref.Values.image.pullPolicy "postfix" $ref.common.nameSuffix) | nindent 10 }} {{ include "common.containers.configurePorts" $coin | nindent 10 }} - volumeMounts: {{ include "common.storage.configureAppVolumeMountsInContainer" (dict "appVolumeMounts" $coin.appVolumeMounts "ixVolumes" $ref.Values.ixVolumes) | nindent 12 }} + volumeMounts: {{ include "common.storage.configureAppVolumeMountsInContainer" (dict "appVolumeMounts" $coin.volumeMounts "ixVolumes" $ref.Values.ixVolumes) | nindent 12 }} {{ range $index, $hostPathConfiguration := $ref.Values.extraAppVolumeMounts }} - name: extrappvolume-{{ $index }} mountPath: {{ $hostPathConfiguration.mountPath }} {{ end }} - {{ $envList := (default list $ref.Values.environmentVariables) }} - {{ $envList = mustAppend $envList (dict "name" "TZ" "value" $ref.Values.timezone) }} - {{ $envList = mustAppend $envList (dict "name" "worker_address" "value" $ref.Values.nodeIP) }} - {{ $envList = mustAppend $envList (dict "name" "controller_host" "value" $ref.Values.nodeIP) }} - {{ $envList = mustAppend $envList (dict "name" "worker_api_port" "value" $coin.apiPort) }} - {{ $envList = mustAppend $envList (dict "name" "blockchains" "value" $coinName) }} - {{ $envList = mustAppend $envList (dict "name" "plots_dir" "value" $ref.Values.appVolumeMounts.plots.mountPath) }} - {{ $envList = mustAppend $envList (dict "name" "mode" "value" "fullnode") }} - {{ include "common.containers.allEnvironmentVariables" (dict "environmentVariables" $envList) | nindent 10 }} + {{ include "allEnvironmentVariables" (dict "defaultEnv" (dict "TZ" $ref.Values.timezone "worker_address" $ref.Values.nodeIP "controller_host" $ref.Values.nodeIP "worker_api_port" $coin.apiPort "blockchains" $coinName "plots_dir" $ref.Values.appVolumeMounts.plots.mountPath "mode" "fullnode") "environmentVariables" $coin.environmentVariables) | nindent 10 }} volumes: {{ include "common.storage.configureAppVolumes" (dict "appVolumeMounts" $coin.volumeMounts "ixVolumes" $ref.Values.ixVolumes) | nindent 8 }} {{ range $index, $hostPathConfiguration := $ref.Values.extraAppVolumeMounts }} - name: extrappvolume-{{ $coinName }}-{{ $index }} diff --git a/charts/machinaris/1.1.0/templates/deployment.yaml b/charts/machinaris/1.1.0/templates/deployment.yaml index 8d5b473bbd..b56fd6f640 100644 --- a/charts/machinaris/1.1.0/templates/deployment.yaml +++ b/charts/machinaris/1.1.0/templates/deployment.yaml @@ -20,12 +20,7 @@ spec: hostNetwork: true containers: - name: {{ .Chart.Name }} - {{ if .Values.enableResourceLimits }} - resources: - limits: - cpu: {{ .Values.cpuLimit }} - memory: {{ .Values.memLimit }} - {{ end }} + {{- include "resourceLimits" . | nindent 10 }} tty: true {{ include "common.containers.imageConfig" .Values.image | nindent 10 }} volumeMounts: {{ include "common.storage.configureAppVolumeMountsInContainer" .Values | nindent 12 }} @@ -33,28 +28,8 @@ spec: - name: extrappvolume-{{ $index }} mountPath: {{ $hostPathConfiguration.mountPath }} {{ end }} - ports: - - name: chia-network - protocol: TCP - containerPort: 8444 - hostPort: 8444 - - name: machinaris-ui - protocol: TCP - containerPort: 8926 - - name: machinaris-api - protocol: TCP - containerPort: 8927 - hostPort: 8927 - - protocol: TCP - containerPort: 8447 - hostPort: 8447 - {{ $envList := (default list .Values.environmentVariables) }} - {{ $envList = mustAppend $envList (dict "name" "TZ" "value" $.Values.timezone) }} - {{ $envList = mustAppend $envList (dict "name" "worker_address" "value" $.Values.nodeIP) }} - {{ $envList = mustAppend $envList (dict "name" "mode" "value" "fullnode") }} - {{ $envList = mustAppend $envList (dict "name" "plots_dir" "value" $.Values.appVolumeMounts.plots.mountPath) }} - {{ $envList = mustAppend $envList (dict "name" "blockchains" "value" "chia") }} - {{ include "common.containers.allEnvironmentVariables" (dict "environmentVariables" $envList) | nindent 10 }} + {{ include "common.containers.configurePorts" .Values | nindent 10 }} + {{ include "allEnvironmentVariables" (dict "defaultEnv" (dict "TZ" .Values.timezone "worker_address" .Values.nodeIP "blockchains" "chia" "plots_dir" .Values.appVolumeMounts.plots.mountPath "mode" "fullnode") "environmentVariables" .Values.environmentVariables) | nindent 10 }} volumes: {{ include "common.storage.configureAppVolumes" .Values | nindent 8 }} {{ range $index, $hostPathConfiguration := .Values.extraAppVolumeMounts }} - name: extrappvolume-{{ $index }} diff --git a/charts/machinaris/1.1.0/test_values.yaml b/charts/machinaris/1.1.0/test_values.yaml index 2f2d4a3c48..67e1bd269a 100644 --- a/charts/machinaris/1.1.0/test_values.yaml +++ b/charts/machinaris/1.1.0/test_values.yaml @@ -1,3 +1,31 @@ +image: + pullPolicy: IfNotPresent + repository: ghcr.io/guydavis/machinaris + tag: v0.6.7 + +machinaris_ui_port: 31003 +machinarisApiPort: 8926 + +ports: + - name: chia-network + protocol: TCP + containerPort: 8444 + hostPort: 8444 + - name: machinaris-ui + protocol: TCP + containerPort: 8926 + - name: machinaris-api + protocol: TCP + containerPort: 8927 + hostPort: 8927 + - protocol: TCP + containerPort: 8447 + hostPort: 8447 + +timezone: America/Edmonton +updateStrategy: Recreate +nodeIP: 127.0.0.1 + appVolumeMounts: config: emptyDir: true @@ -8,26 +36,30 @@ appVolumeMounts: plotting: emptyDir: true mountPath: /plotting -image: - pullPolicy: IfNotPresent - repository: ghcr.io/guydavis/machinaris - tag: v0.6.6 -machinaris_ui_port: 31003 -timezone: America/Edmonton -updateStrategy: Recreate -nodeIP: 127.0.0.1 + +environmentVariables: + - name: mode + value: farming + coins: - cactus + cactusEnabled: true cactus: apiPort: 8935 ports: - - protocol: TCP + - name: api + protocol: TCP containerPort: 8935 - - protocol: TCP + hostPort: 8935 + - name: blockchain + protocol: TCP containerPort: 8668 - - protocol: TCP + hostPort: 8668 + - name: farming + protocol: TCP containerPort: 8337 + hostPort: 8337 volumeMounts: cactus-config: emptyDir: true @@ -35,3 +67,12 @@ cactus: mnemonic: emptyDir: true mountPath: /root/.chia/mnemonic.txt + readOnly: true + subPath: mnemonic.txt + environmentVariables: + - name: mode + value: farming + +enableResourceLimits: true +cpuLimit: 0.5 +memLimit: 1G diff --git a/library/common/2101.0.0/templates/lib/storage/_appStorage.tpl b/library/common/2101.0.0/templates/lib/storage/_appStorage.tpl index 49cfbbfeda..0651870eb1 100644 --- a/library/common/2101.0.0/templates/lib/storage/_appStorage.tpl +++ b/library/common/2101.0.0/templates/lib/storage/_appStorage.tpl @@ -41,7 +41,7 @@ Define hostPath for appVolumes {{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "ixVolumes")) -}} {{- include "common.schema.validateKeys" (dict "values" $av "checkKeys" (list "datasetName")) -}} {{- $volDict := dict "datasetName" $av.datasetName "ixVolumes" $values.ixVolumes -}} - path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }}{{- if $av.datasetSubPath -}}{{- printf "/%s" $av.datasetSubPath -}}{{- end -}} + path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }} {{ end }} {{ end }} {{ end }} diff --git a/library/common/2105.0.0/templates/lib/containers/_image.tpl b/library/common/2105.0.0/templates/lib/containers/_image.tpl index 2b2b04561d..4a5a368008 100644 --- a/library/common/2105.0.0/templates/lib/containers/_image.tpl +++ b/library/common/2105.0.0/templates/lib/containers/_image.tpl @@ -4,6 +4,6 @@ Retrieve image configuration for container {{- define "common.containers.imageConfig" -}} {{- $values := . -}} {{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "repository" "tag" "pullPolicy")) -}} -image: "{{ $values.repository }}{{- if hasKey $values "postfix" -}}-{{ $values.postfix }}{{- end -}}:{{ $values.tag }}" +image: "{{ $values.repository }}:{{ $values.tag }}" imagePullPolicy: {{ $values.pullPolicy }} {{- end -}} diff --git a/library/common/2105.0.0/templates/lib/containers/_port.tpl b/library/common/2105.0.0/templates/lib/containers/_port.tpl index 7833994311..0077a6371d 100644 --- a/library/common/2105.0.0/templates/lib/containers/_port.tpl +++ b/library/common/2105.0.0/templates/lib/containers/_port.tpl @@ -7,6 +7,7 @@ ports: {{- include "common.schema.validateKeys" (dict "values" $port "checkKeys" (list "protocol" "containerPort")) }} - protocol: {{ $port.protocol }} containerPort: {{ $port.containerPort }} - {{- if hasKey $port "name" }}name: {{ $port.name }}{{ end -}} + {{ if hasKey $port "hostPort" }}hostPort: {{ $port.hostPort }}{{ end }} + {{ if hasKey $port "name" }}name: {{ $port.name }}{{ end }} {{- end }} {{ end -}} diff --git a/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl b/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl index 49cfbbfeda..0651870eb1 100644 --- a/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl +++ b/library/common/2105.0.0/templates/lib/storage/_appStorage.tpl @@ -41,7 +41,7 @@ Define hostPath for appVolumes {{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "ixVolumes")) -}} {{- include "common.schema.validateKeys" (dict "values" $av "checkKeys" (list "datasetName")) -}} {{- $volDict := dict "datasetName" $av.datasetName "ixVolumes" $values.ixVolumes -}} - path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }}{{- if $av.datasetSubPath -}}{{- printf "/%s" $av.datasetSubPath -}}{{- end -}} + path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }} {{ end }} {{ end }} {{ end }} diff --git a/library/common/2106.0.0/.helmignore b/library/common/2106.0.0/.helmignore new file mode 100644 index 0000000000..0e8a0eb36f --- /dev/null +++ b/library/common/2106.0.0/.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/library/common/2106.0.0/Chart.yaml b/library/common/2106.0.0/Chart.yaml new file mode 100644 index 0000000000..5f1e1f190b --- /dev/null +++ b/library/common/2106.0.0/Chart.yaml @@ -0,0 +1,23 @@ +apiVersion: v2 +name: common +description: A library chart for iX Official Catalog + +# 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: library + +# 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: 2106.0.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. +appVersion: v1 diff --git a/library/common/2106.0.0/README.md b/library/common/2106.0.0/README.md new file mode 100644 index 0000000000..f8784843a2 --- /dev/null +++ b/library/common/2106.0.0/README.md @@ -0,0 +1,11 @@ +# Library Chart for iX Official Catalog iX Chart + +**WARNING: THIS CHART IS NOT MEANT TO BE INSTALLED DIRECTLY** + +This is a [Helm Library Chart](https://helm.sh/docs/topics/library_charts/#helm). It's purpose is for grouping common logic between the k8s@home charts. + +Since a lot of charts follow the same pattern this library was built to reduce maintenance cost between the charts that use it and try achieve a goal of being DRY. + +## Introduction + +This chart provides common template helpers which can be used to develop new charts using [Helm](https://helm.sh) package manager. diff --git a/library/common/2106.0.0/templates/_serviceaccount.tpl b/library/common/2106.0.0/templates/_serviceaccount.tpl new file mode 100644 index 0000000000..b96d4009a9 --- /dev/null +++ b/library/common/2106.0.0/templates/_serviceaccount.tpl @@ -0,0 +1,11 @@ +{{/* +Common service account +*/}} +{{- define "common.serviceaccount" -}} +apiVersion: v1 +kind: ServiceAccount +metadata: + name: {{ include "common.names.serviceAccountName" . | quote }} + namespace: {{ .Release.Namespace | quote }} + labels: {{- include "common.labels.selectorLabels" . | nindent 4 -}} +{{- end -}} diff --git a/library/common/2106.0.0/templates/classes/_service.tpl b/library/common/2106.0.0/templates/classes/_service.tpl new file mode 100644 index 0000000000..c63ab9b933 --- /dev/null +++ b/library/common/2106.0.0/templates/classes/_service.tpl @@ -0,0 +1,41 @@ +{{/* +This template serves as a blueprint for all Service objects that are created +within the common library. +*/}} +{{- define "common.classes.service" -}} +{{- $values := .commonService -}} +{{- $serviceName := include "common.names.fullname" . -}} +{{- if hasKey $values "nameSuffix" -}} + {{- $serviceName = (printf "%v-%v" $serviceName $values.nameSuffix) -}} +{{ end -}} +{{- $svcType := $values.type | default "" -}} +apiVersion: v1 +kind: Service +metadata: + name: {{ $serviceName }} + labels: + {{- include "common.labels" . | nindent 4 }} + {{- if $values.labels }} + {{ toYaml $values.labels | nindent 4 }} + {{- end }} + {{- if $values.annotations }} + {{- with $values.annotations }} + annotations: + {{ toYaml . | nindent 4 }} + {{- end }} + {{- end }} +spec: + {{- if (or (eq $svcType "ClusterIP") (empty $svcType)) }} + type: ClusterIP + {{- if $values.clusterIP }} + clusterIP: {{ $values.clusterIP }} + {{end}} + {{- else if eq $svcType "NodePort" }} + type: {{ $svcType }} + {{- else }} + {{- fail "Only ClusterIP and NodePort services are supported in common chart" }} + {{- end }} + {{- include "common.classes.service.ports" (dict "svcType" $svcType "values" $values ) | trim | nindent 2 }} + selector: + {{- include "common.labels.selectorLabels" . | nindent 4 }} +{{- end }} diff --git a/library/common/2106.0.0/templates/classes/_service_ports.tpl b/library/common/2106.0.0/templates/classes/_service_ports.tpl new file mode 100644 index 0000000000..a61900b42a --- /dev/null +++ b/library/common/2106.0.0/templates/classes/_service_ports.tpl @@ -0,0 +1,19 @@ +{{/* +Render all the ports and additionalPorts for a Service object. +*/}} +{{- define "common.classes.service.ports" -}} + {{- $values := .values -}} + {{- $ports := $values.ports -}} + {{- if $ports -}} + ports: + {{- range $_ := $ports }} + - port: {{ .port }} + targetPort: {{ .targetPort | default "http" }} + protocol: {{ .protocol | default "TCP" }} + name: {{ .name | default "http" }} + {{- if (and (eq $.svcType "NodePort") (not (empty .nodePort))) }} + nodePort: {{ .nodePort }} + {{ end }} + {{- end -}} + {{- end -}} +{{- end }} diff --git a/library/common/2106.0.0/templates/lib/chart/_annotations.tpl b/library/common/2106.0.0/templates/lib/chart/_annotations.tpl new file mode 100644 index 0000000000..ad80be1e90 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/chart/_annotations.tpl @@ -0,0 +1,6 @@ +{{/* +Common workload annotations +*/}} +{{- define "common.annotations" -}} +rollme: {{ randAlphaNum 5 | quote }} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/chart/_capabilities.tpl b/library/common/2106.0.0/templates/lib/chart/_capabilities.tpl new file mode 100644 index 0000000000..7a3c13c8b2 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/chart/_capabilities.tpl @@ -0,0 +1,27 @@ +{{/* +Return the appropriate apiVersion for DaemonSet objects. +*/}} +{{- define "common.capabilities.daemonset.apiVersion" -}} +{{- print "apps/v1" -}} +{{- end -}} + +{{/* +Return the appropriate apiVersion for Deployment objects. +*/}} +{{- define "common.capabilities.deployment.apiVersion" -}} +{{- print "apps/v1" -}} +{{- end -}} + +{{/* +Return the appropriate apiVersion for StatefulSet objects. +*/}} +{{- define "common.capabilities.statefulset.apiVersion" -}} +{{- print "apps/v1" -}} +{{- end -}} + +{{/* +Return the appropriate apiVersion for StatefulSet objects. +*/}} +{{- define "common.capabilities.cronjob.apiVersion" -}} +{{- print "batch/v1beta1" -}} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/chart/_labels.tpl b/library/common/2106.0.0/templates/lib/chart/_labels.tpl new file mode 100644 index 0000000000..f64aead636 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/chart/_labels.tpl @@ -0,0 +1,24 @@ +{{/* +Common labels shared across objects. +*/}} +{{- define "common.labels" -}} +helm.sh/chart: {{ include "common.names.chart" . }} +{{ include "common.labels.selectorLabels" . }} +{{- if .Chart.AppVersion }} +app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} +{{- end }} +app.kubernetes.io/managed-by: {{ .Release.Service }} +{{- end }} + +{{/* +Selector labels shared across objects. +*/}} +{{- define "common.labels.selectorLabels" -}} +app.kubernetes.io/name: {{ include "common.names.name" . }} +app.kubernetes.io/instance: {{ include "common.names.releaseName" . }} +{{ if hasKey .Values "extraSelectorLabels" }} +{{ range $selector := .Values.extraSelectorLabels }} +{{ printf "%s: %s" $selector.key $selector.value }} +{{ end }} +{{ end }} +{{- end }} diff --git a/library/common/2106.0.0/templates/lib/chart/_names.tpl b/library/common/2106.0.0/templates/lib/chart/_names.tpl new file mode 100644 index 0000000000..e98c6b4e6f --- /dev/null +++ b/library/common/2106.0.0/templates/lib/chart/_names.tpl @@ -0,0 +1,66 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "common.names.name" -}} +{{- $values := (.common | default dict) -}} +{{- $name := (default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-") }} +{{- if hasKey $values "nameSuffix" -}} + {{- $name = (printf "%v-%v" $name $values.nameSuffix) -}} +{{ end -}} +{{- print $name -}} +{{- 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 "common.names.fullname" -}} +{{- $values := (.common | default dict) -}} +{{- if .Values.fullnameOverride }} +{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- $name := default .Chart.Name .Values.nameOverride }} +{{- if contains $name .Release.Name }} +{{- $name = (.Release.Name | trunc 63 | trimSuffix "-") }} +{{- else }} +{{- $name = (printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-") }} +{{- end }} +{{- if hasKey $values "nameSuffix" -}} + {{- $name = (printf "%v-%v" $name $values.nameSuffix) -}} +{{ end -}} +{{- print $name -}} +{{- end }} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "common.names.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Determine service account name for deployment or statefulset. +*/}} +{{- define "common.names.serviceAccountName" -}} +{{- if .Values.serviceAccountNameOverride }} +{{- .Values.serviceAccountNameOverride | trunc 63 | trimSuffix "-" }} +{{- else }} +{{- printf "%s-service-account" (include "common.names.releaseName" .) | replace "+" "_" | trunc 63 | trimSuffix "-" -}} +{{- end -}} +{{- end -}} + + +{{/* +Determine release name +This will add a suffix to the release name if nameSuffix is set +*/}} +{{- define "common.names.releaseName" -}} +{{- $values := (.common | default dict) -}} +{{- if hasKey $values "nameSuffix" -}} + {{- printf "%v-%v" .Release.Name $values.nameSuffix -}} +{{- else -}} + {{- print .Release.Name -}} +{{ end -}} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/containers/_environment.tpl b/library/common/2106.0.0/templates/lib/containers/_environment.tpl new file mode 100644 index 0000000000..d757f459c1 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/containers/_environment.tpl @@ -0,0 +1,41 @@ +{{/* +Render environment variable +*/}} +{{- define "common.containers.environmentVariable" -}} +{{- $envVariable := . -}} +{{- include "common.schema.validateKeys" (dict "values" $envVariable "checkKeys" (list "name")) -}} +{{- if $envVariable.valueFromSecret -}} +{{- include "common.schema.validateKeys" (dict "values" $envVariable "checkKeys" (list "secretName" "secretKey")) -}} +- name: {{ $envVariable.name | quote }} + valueFrom: + secretKeyRef: + name: {{ $envVariable.secretName | quote }} + key: {{ $envVariable.secretKey | quote }} +{{- else -}} +{{- include "common.schema.validateKeys" (dict "values" $envVariable "checkKeys" (list "value")) -}} +- name: {{ $envVariable.name | quote }} + value: {{ $envVariable.value | quote }} +{{- end -}} +{{- end -}} + +{{/* +Render environment variables +*/}} +{{- define "common.containers.environmentVariables" -}} +{{- $values := . -}} +{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "environmentVariables")) -}} +{{- range $envVariable := $values.environmentVariables -}} +{{- include "common.containers.environmentVariable" $envVariable | nindent 0 -}} +{{- end -}} +{{- end -}} + +{{/* +Render environment variables if present +*/}} +{{- define "common.containers.allEnvironmentVariables" -}} +{{- $values := . -}} +{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "environmentVariables")) -}} +{{- if $values.environmentVariables -}} +env: {{- include "common.containers.environmentVariables" $values | nindent 2 -}} +{{- end -}} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/containers/_image.tpl b/library/common/2106.0.0/templates/lib/containers/_image.tpl new file mode 100644 index 0000000000..2b2b04561d --- /dev/null +++ b/library/common/2106.0.0/templates/lib/containers/_image.tpl @@ -0,0 +1,9 @@ +{{/* +Retrieve image configuration for container +*/}} +{{- define "common.containers.imageConfig" -}} +{{- $values := . -}} +{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "repository" "tag" "pullPolicy")) -}} +image: "{{ $values.repository }}{{- if hasKey $values "postfix" -}}-{{ $values.postfix }}{{- end -}}:{{ $values.tag }}" +imagePullPolicy: {{ $values.pullPolicy }} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/containers/_port.tpl b/library/common/2106.0.0/templates/lib/containers/_port.tpl new file mode 100644 index 0000000000..0077a6371d --- /dev/null +++ b/library/common/2106.0.0/templates/lib/containers/_port.tpl @@ -0,0 +1,13 @@ +{{/* +Retrieve ports configuration for container +*/}} +{{- define "common.containers.configurePorts" -}} +ports: +{{- range $index, $port := .ports -}} +{{- include "common.schema.validateKeys" (dict "values" $port "checkKeys" (list "protocol" "containerPort")) }} +- protocol: {{ $port.protocol }} + containerPort: {{ $port.containerPort }} + {{ if hasKey $port "hostPort" }}hostPort: {{ $port.hostPort }}{{ end }} + {{ if hasKey $port "name" }}name: {{ $port.name }}{{ end }} +{{- end }} +{{ end -}} diff --git a/library/common/2106.0.0/templates/lib/containers/_resource.tpl b/library/common/2106.0.0/templates/lib/containers/_resource.tpl new file mode 100644 index 0000000000..fd4f6eef02 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/containers/_resource.tpl @@ -0,0 +1,10 @@ +{{/* +Retrieve GPU Configuration +*/}} +{{- define "common.containers.gpuConfiguration" -}} +{{- $values := . -}} +{{ if $values.gpuConfiguration }} +resources: + limits: {{- toYaml $values.gpuConfiguration | nindent 4 }} +{{ end }} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/deployments/_utils.tpl b/library/common/2106.0.0/templates/lib/deployments/_utils.tpl new file mode 100644 index 0000000000..b8b2f76ad5 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/deployments/_utils.tpl @@ -0,0 +1,41 @@ +{{/* +Retrieve deployment metadata +*/}} +{{- define "common.deployment.metadata" -}} +metadata: + name: {{ template "common.names.fullname" . }} + labels: {{ include "common.labels.selectorLabels" . | nindent 4 }} +{{- end -}} + + +{{/* +Retrieve replicas/strategy/selector +*/}} +{{- define "common.deployment.common_spec" -}} +replicas: {{ (default 1 .Values.replicas) }} +strategy: + type: {{ (default "Recreate" .Values.updateStrategy ) }} +selector: + matchLabels: {{ include "common.labels.selectorLabels" . | nindent 4 }} +{{- end -}} + + +{{/* +Retrieve deployment pod's metadata +*/}} +{{- define "common.deployment.pod.metadata" -}} +metadata: + name: {{ template "common.names.fullname" . }} + labels: {{ include "common.labels.selectorLabels" . | nindent 4 }} + annotations: {{ include "common.annotations" . | nindent 4 }} +{{- end -}} + + +{{/* +Retrieve common deployment configuration +*/}} +{{- define "common.deployment.common_config" -}} +apiVersion: {{ template "common.capabilities.deployment.apiVersion" . }} +kind: Deployment +{{ include "common.deployment.metadata" . | nindent 0 }} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/networking/_dns.tpl b/library/common/2106.0.0/templates/lib/networking/_dns.tpl new file mode 100644 index 0000000000..3a748a4aae --- /dev/null +++ b/library/common/2106.0.0/templates/lib/networking/_dns.tpl @@ -0,0 +1,12 @@ +{{/* +DNS Configuration +*/}} +{{- define "common.networking.dnsConfiguration" }} +{{ if .dnsPolicy }} +dnsPolicy: {{ .dnsPolicy }} +{{ end }} +{{ if .dnsConfig }} +dnsConfig: + {{ toYaml .dnsConfig | nindent 2 }} +{{ end }} +{{- end }} diff --git a/library/common/2106.0.0/templates/lib/resources/_certs.tpl b/library/common/2106.0.0/templates/lib/resources/_certs.tpl new file mode 100644 index 0000000000..9e091595e9 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/resources/_certs.tpl @@ -0,0 +1,26 @@ +{{/* +Retrieve true/false if certificate is available in ixCertificates +*/}} +{{- define "common.resources.cert_present" -}} +{{- $values := . -}} +{{- include "common.schema.validateKeys" (dict "values" . "checkKeys" (list "commonCertOptions")) -}} +{{- hasKey $values.Values.ixCertificates ($values.commonCertOptions.certKeyName | toString) -}} +{{- end -}} + + +{{/* +Retrieve certificate from variable name +*/}} +{{- define "common.resources.cert" -}} +{{- $values := . -}} +{{- include "common.schema.validateKeys" (dict "values" . "checkKeys" (list "commonCertOptions")) -}} +{{- $certKey := ($values.commonCertOptions.certKeyName | toString) -}} +{{- if hasKey $values.Values.ixCertificates $certKey -}} +{{- $cert := get $values.Values.ixCertificates $certKey -}} +{{- if $values.commonCertOptions.publicKey -}} +{{ $cert.certificate }} +{{- else -}} +{{ $cert.privatekey }} +{{- end -}} +{{- end -}} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/schema/_utils.tpl b/library/common/2106.0.0/templates/lib/schema/_utils.tpl new file mode 100644 index 0000000000..8577a0b615 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/schema/_utils.tpl @@ -0,0 +1,19 @@ +{{/* +Checks if a list of keys are present in a dictionary +*/}} +{{- define "common.schema.validateKeys" -}} +{{- $values := . -}} +{{- if and (hasKey $values "values") (hasKey $values "checkKeys") -}} +{{- $missingKeys := list -}} +{{- range $values.checkKeys -}} +{{- if eq (hasKey $values.values . ) false -}} +{{- $missingKeys = mustAppend $missingKeys . -}} +{{- end -}} +{{- end -}} +{{- if $missingKeys -}} +{{- fail (printf "Missing %s from dictionary" ($missingKeys | join ", ")) -}} +{{- end -}} +{{- else -}} +{{- fail "A dictionary and list of keys to check must be provided" -}} +{{- end -}} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/storage/_appStorage.tpl b/library/common/2106.0.0/templates/lib/storage/_appStorage.tpl new file mode 100644 index 0000000000..b97a8b2c09 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/storage/_appStorage.tpl @@ -0,0 +1,75 @@ +{{/* +Define appVolumeMounts for container +*/}} +{{- define "common.storage.configureAppVolumeMountsInContainer" -}} +{{- include "common.schema.validateKeys" (dict "values" . "checkKeys" (list "appVolumeMounts")) -}} +{{- $appVolumeMounts := .appVolumeMounts -}} +{{- if $appVolumeMounts -}} +{{ range $name, $avm := $appVolumeMounts }} +{{- if (default true $avm.enabled) -}} +{{ if $avm.containerNameOverride }} +{{ $name = $avm.containerNameOverride }} +{{ end }} +- name: {{ $name }} + mountPath: {{ $avm.mountPath }} + {{ if $avm.subPath }} + subPath: {{ $avm.subPath }} + {{ end }} + {{ if $avm.readOnly }} + readOnly: {{ $avm.readOnly }} + {{ end }} +{{- end -}} +{{ end }} +{{- end -}} +{{- end -}} + + +{{/* +Define hostPath for appVolumes +*/}} +{{- define "common.storage.configureAppVolumes" -}} +{{- include "common.schema.validateKeys" (dict "values" . "checkKeys" (list "appVolumeMounts")) -}} +{{- $values := . -}} +{{- if $values.appVolumeMounts -}} +{{- range $name, $av := $values.appVolumeMounts -}} +{{ if (default true $av.enabled) }} +- name: {{ $name }} + {{ if or $av.emptyDir $.emptyDirVolumes }} + emptyDir: {} + {{- else -}} + hostPath: + {{ if $av.hostPathEnabled }} + path: {{ required "hostPath not set" $av.hostPath }} + {{ else }} + {{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "ixVolumes")) -}} + {{- include "common.schema.validateKeys" (dict "values" $av "checkKeys" (list "datasetName")) -}} + {{- $volDict := dict "datasetName" $av.datasetName "ixVolumes" $values.ixVolumes -}} + path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }} + {{ end }} + {{ end }} +{{ end }} +{{- end -}} +{{- end -}} +{{- end -}} + + +{{/* +Get all volumes configuration +*/}} +{{- define "common.storage.allAppVolumes" -}} +{{- $appVolumeMounts := .appVolumeMounts -}} +{{- if $appVolumeMounts -}} +volumes: {{- include "common.storage.configureAppVolumes" . | nindent 2 -}} +{{- end -}} +{{- end -}} + + +{{/* +Get all container volume moutns configuration +*/}} +{{- define "common.storage.allContainerVolumeMounts" -}} +{{- $appVolumeMounts := .appVolumeMounts -}} +{{- if $appVolumeMounts -}} +volumeMounts: {{- include "common.storage.configureAppVolumeMountsInContainer" . | nindent 2 -}} +{{- end -}} +{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/storage/_ixvolumes.tpl b/library/common/2106.0.0/templates/lib/storage/_ixvolumes.tpl new file mode 100644 index 0000000000..f45b9d8d96 --- /dev/null +++ b/library/common/2106.0.0/templates/lib/storage/_ixvolumes.tpl @@ -0,0 +1,11 @@ +{{/* +Retrieve host path from ix volumes based on dataset name +*/}} +{{- define "common.storage.retrieveHostPathFromiXVolume" -}} +{{- range $index, $hostPathConfiguration := $.ixVolumes }} +{{- $dsName := base $hostPathConfiguration.hostPath -}} +{{- if eq $.datasetName $dsName -}} +{{- $hostPathConfiguration.hostPath -}} +{{- end -}} +{{- end }} +{{- end -}} From 6e866e533fc6f7ce5ae6a585551ce96a05df207f Mon Sep 17 00:00:00 2001 From: Muhammad Rehan Date: Sat, 4 Dec 2021 22:46:19 +0500 Subject: [PATCH 4/9] Fix tests --- .../1.1.0/charts/common-2106.0.0.tgz | Bin 4457 -> 4458 bytes charts/machinaris/1.1.0/test_values.yaml | 16 ++++++++-------- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/charts/machinaris/1.1.0/charts/common-2106.0.0.tgz b/charts/machinaris/1.1.0/charts/common-2106.0.0.tgz index 2d75dd3b5893e93950c5d00d044f08af1e6b36a1..f66c62cb04329fd15b28b1139d5769d32cb09f49 100644 GIT binary patch delta 4433 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 WWm~qTT>cdR0RR8J`;|TbegFVv7RyHf diff --git a/charts/machinaris/1.1.0/test_values.yaml b/charts/machinaris/1.1.0/test_values.yaml index 67e1bd269a..08fcb0636e 100644 --- a/charts/machinaris/1.1.0/test_values.yaml +++ b/charts/machinaris/1.1.0/test_values.yaml @@ -4,7 +4,7 @@ image: tag: v0.6.7 machinaris_ui_port: 31003 -machinarisApiPort: 8926 +machinarisApiPort: 8927 ports: - name: chia-network @@ -46,20 +46,20 @@ coins: cactusEnabled: true cactus: - apiPort: 8935 + apiPort: 8936 ports: - name: api protocol: TCP - containerPort: 8935 - hostPort: 8935 + containerPort: 8936 + hostPort: 8936 - name: blockchain protocol: TCP - containerPort: 8668 - hostPort: 8668 + containerPort: 11444 + hostPort: 11444 - name: farming protocol: TCP - containerPort: 8337 - hostPort: 8337 + containerPort: 11447 + hostPort: 11447 volumeMounts: cactus-config: emptyDir: true From 392679ac99d5bc5694947019497b3fcad1414478 Mon Sep 17 00:00:00 2001 From: "M. Rehan" Date: Mon, 6 Dec 2021 20:26:00 +0500 Subject: [PATCH 5/9] Address Feedbacks --- charts/machinaris/1.1.0/Chart.yaml | 4 +- .../1.1.0/charts/common-2106.0.0.tgz | Bin 4458 -> 0 bytes .../1.1.0/charts/common-2112.0.0.tgz | Bin 0 -> 4467 bytes charts/machinaris/1.1.0/questions.yaml | 1 + charts/machinaris/1.1.0/requirements.lock | 8 +- .../templates/lib/containers/_port.tpl | 13 --- library/common/2106.0.0/.helmignore | 23 ------ library/common/2106.0.0/Chart.yaml | 23 ------ library/common/2106.0.0/README.md | 11 --- .../2106.0.0/templates/_serviceaccount.tpl | 11 --- .../2106.0.0/templates/classes/_service.tpl | 41 ---------- .../templates/classes/_service_ports.tpl | 19 ----- .../templates/lib/chart/_annotations.tpl | 6 -- .../templates/lib/chart/_capabilities.tpl | 27 ------- .../2106.0.0/templates/lib/chart/_labels.tpl | 24 ------ .../2106.0.0/templates/lib/chart/_names.tpl | 66 --------------- .../templates/lib/containers/_environment.tpl | 41 ---------- .../templates/lib/containers/_image.tpl | 9 --- .../templates/lib/containers/_port.tpl | 13 --- .../templates/lib/containers/_resource.tpl | 10 --- .../templates/lib/deployments/_utils.tpl | 41 ---------- .../templates/lib/networking/_dns.tpl | 12 --- .../templates/lib/resources/_certs.tpl | 26 ------ .../2106.0.0/templates/lib/schema/_utils.tpl | 19 ----- .../templates/lib/storage/_appStorage.tpl | 75 ------------------ .../templates/lib/storage/_ixvolumes.tpl | 11 --- 26 files changed, 7 insertions(+), 527 deletions(-) delete mode 100644 charts/machinaris/1.1.0/charts/common-2106.0.0.tgz create mode 100644 charts/machinaris/1.1.0/charts/common-2112.0.0.tgz delete mode 100644 library/common/2105.0.0/templates/lib/containers/_port.tpl delete mode 100644 library/common/2106.0.0/.helmignore delete mode 100644 library/common/2106.0.0/Chart.yaml delete mode 100644 library/common/2106.0.0/README.md delete mode 100644 library/common/2106.0.0/templates/_serviceaccount.tpl delete mode 100644 library/common/2106.0.0/templates/classes/_service.tpl delete mode 100644 library/common/2106.0.0/templates/classes/_service_ports.tpl delete mode 100644 library/common/2106.0.0/templates/lib/chart/_annotations.tpl delete mode 100644 library/common/2106.0.0/templates/lib/chart/_capabilities.tpl delete mode 100644 library/common/2106.0.0/templates/lib/chart/_labels.tpl delete mode 100644 library/common/2106.0.0/templates/lib/chart/_names.tpl delete mode 100644 library/common/2106.0.0/templates/lib/containers/_environment.tpl delete mode 100644 library/common/2106.0.0/templates/lib/containers/_image.tpl delete mode 100644 library/common/2106.0.0/templates/lib/containers/_port.tpl delete mode 100644 library/common/2106.0.0/templates/lib/containers/_resource.tpl delete mode 100644 library/common/2106.0.0/templates/lib/deployments/_utils.tpl delete mode 100644 library/common/2106.0.0/templates/lib/networking/_dns.tpl delete mode 100644 library/common/2106.0.0/templates/lib/resources/_certs.tpl delete mode 100644 library/common/2106.0.0/templates/lib/schema/_utils.tpl delete mode 100644 library/common/2106.0.0/templates/lib/storage/_appStorage.tpl delete mode 100644 library/common/2106.0.0/templates/lib/storage/_ixvolumes.tpl diff --git a/charts/machinaris/1.1.0/Chart.yaml b/charts/machinaris/1.1.0/Chart.yaml index fdc7733b2a..109a60a63a 100644 --- a/charts/machinaris/1.1.0/Chart.yaml +++ b/charts/machinaris/1.1.0/Chart.yaml @@ -2,8 +2,8 @@ apiVersion: v1 appVersion: v0.6.7 dependencies: - name: common - repository: file://../../../library/common/2106.0.0 - version: 2106.0.0 + repository: file://../../../library/common/2112.0.0 + version: 2112.0.0 description: Global, Versioned, peer-to-peer filesystem. home: https://github.com/guydavis/machinaris icon: https://raw.githubusercontent.com/guydavis/machinaris/main/web/static/favicon.ico diff --git a/charts/machinaris/1.1.0/charts/common-2106.0.0.tgz b/charts/machinaris/1.1.0/charts/common-2106.0.0.tgz deleted file mode 100644 index f66c62cb04329fd15b28b1139d5769d32cb09f49..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4458 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 F0068Z+SmX9 literal 0 HcmV?d00001 diff --git a/charts/machinaris/1.1.0/questions.yaml b/charts/machinaris/1.1.0/questions.yaml index 95ab05b290..808666a084 100644 --- a/charts/machinaris/1.1.0/questions.yaml +++ b/charts/machinaris/1.1.0/questions.yaml @@ -215,6 +215,7 @@ questions: label: "Value" schema: type: string + - variable: enableResourceLimits label: "Enable Pod resource limits" group: "Resource Limits" diff --git a/charts/machinaris/1.1.0/requirements.lock b/charts/machinaris/1.1.0/requirements.lock index 01328aa52a..c555ad2636 100644 --- a/charts/machinaris/1.1.0/requirements.lock +++ b/charts/machinaris/1.1.0/requirements.lock @@ -1,6 +1,6 @@ dependencies: - name: common - repository: file://../../../library/common/2106.0.0 - version: 2106.0.0 -digest: sha256:0fe8d11fc6fcaa7c3738da379603ff67e172b710130c2055f91179d5d97c1993 -generated: "2021-12-04T20:10:11.366623+05:00" + repository: file://../../../library/common/2112.0.0 + version: 2112.0.0 +digest: sha256:47115d9b91afe42c8537dcf0fd8224f2f7d1c775f9ff860efa68a6b57d17d1c0 +generated: "2021-12-06T19:55:04.707082+05:00" diff --git a/library/common/2105.0.0/templates/lib/containers/_port.tpl b/library/common/2105.0.0/templates/lib/containers/_port.tpl deleted file mode 100644 index 0077a6371d..0000000000 --- a/library/common/2105.0.0/templates/lib/containers/_port.tpl +++ /dev/null @@ -1,13 +0,0 @@ -{{/* -Retrieve ports configuration for container -*/}} -{{- define "common.containers.configurePorts" -}} -ports: -{{- range $index, $port := .ports -}} -{{- include "common.schema.validateKeys" (dict "values" $port "checkKeys" (list "protocol" "containerPort")) }} -- protocol: {{ $port.protocol }} - containerPort: {{ $port.containerPort }} - {{ if hasKey $port "hostPort" }}hostPort: {{ $port.hostPort }}{{ end }} - {{ if hasKey $port "name" }}name: {{ $port.name }}{{ end }} -{{- end }} -{{ end -}} diff --git a/library/common/2106.0.0/.helmignore b/library/common/2106.0.0/.helmignore deleted file mode 100644 index 0e8a0eb36f..0000000000 --- a/library/common/2106.0.0/.helmignore +++ /dev/null @@ -1,23 +0,0 @@ -# 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/library/common/2106.0.0/Chart.yaml b/library/common/2106.0.0/Chart.yaml deleted file mode 100644 index 5f1e1f190b..0000000000 --- a/library/common/2106.0.0/Chart.yaml +++ /dev/null @@ -1,23 +0,0 @@ -apiVersion: v2 -name: common -description: A library chart for iX Official Catalog - -# 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: library - -# 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: 2106.0.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. -appVersion: v1 diff --git a/library/common/2106.0.0/README.md b/library/common/2106.0.0/README.md deleted file mode 100644 index f8784843a2..0000000000 --- a/library/common/2106.0.0/README.md +++ /dev/null @@ -1,11 +0,0 @@ -# Library Chart for iX Official Catalog iX Chart - -**WARNING: THIS CHART IS NOT MEANT TO BE INSTALLED DIRECTLY** - -This is a [Helm Library Chart](https://helm.sh/docs/topics/library_charts/#helm). It's purpose is for grouping common logic between the k8s@home charts. - -Since a lot of charts follow the same pattern this library was built to reduce maintenance cost between the charts that use it and try achieve a goal of being DRY. - -## Introduction - -This chart provides common template helpers which can be used to develop new charts using [Helm](https://helm.sh) package manager. diff --git a/library/common/2106.0.0/templates/_serviceaccount.tpl b/library/common/2106.0.0/templates/_serviceaccount.tpl deleted file mode 100644 index b96d4009a9..0000000000 --- a/library/common/2106.0.0/templates/_serviceaccount.tpl +++ /dev/null @@ -1,11 +0,0 @@ -{{/* -Common service account -*/}} -{{- define "common.serviceaccount" -}} -apiVersion: v1 -kind: ServiceAccount -metadata: - name: {{ include "common.names.serviceAccountName" . | quote }} - namespace: {{ .Release.Namespace | quote }} - labels: {{- include "common.labels.selectorLabels" . | nindent 4 -}} -{{- end -}} diff --git a/library/common/2106.0.0/templates/classes/_service.tpl b/library/common/2106.0.0/templates/classes/_service.tpl deleted file mode 100644 index c63ab9b933..0000000000 --- a/library/common/2106.0.0/templates/classes/_service.tpl +++ /dev/null @@ -1,41 +0,0 @@ -{{/* -This template serves as a blueprint for all Service objects that are created -within the common library. -*/}} -{{- define "common.classes.service" -}} -{{- $values := .commonService -}} -{{- $serviceName := include "common.names.fullname" . -}} -{{- if hasKey $values "nameSuffix" -}} - {{- $serviceName = (printf "%v-%v" $serviceName $values.nameSuffix) -}} -{{ end -}} -{{- $svcType := $values.type | default "" -}} -apiVersion: v1 -kind: Service -metadata: - name: {{ $serviceName }} - labels: - {{- include "common.labels" . | nindent 4 }} - {{- if $values.labels }} - {{ toYaml $values.labels | nindent 4 }} - {{- end }} - {{- if $values.annotations }} - {{- with $values.annotations }} - annotations: - {{ toYaml . | nindent 4 }} - {{- end }} - {{- end }} -spec: - {{- if (or (eq $svcType "ClusterIP") (empty $svcType)) }} - type: ClusterIP - {{- if $values.clusterIP }} - clusterIP: {{ $values.clusterIP }} - {{end}} - {{- else if eq $svcType "NodePort" }} - type: {{ $svcType }} - {{- else }} - {{- fail "Only ClusterIP and NodePort services are supported in common chart" }} - {{- end }} - {{- include "common.classes.service.ports" (dict "svcType" $svcType "values" $values ) | trim | nindent 2 }} - selector: - {{- include "common.labels.selectorLabels" . | nindent 4 }} -{{- end }} diff --git a/library/common/2106.0.0/templates/classes/_service_ports.tpl b/library/common/2106.0.0/templates/classes/_service_ports.tpl deleted file mode 100644 index a61900b42a..0000000000 --- a/library/common/2106.0.0/templates/classes/_service_ports.tpl +++ /dev/null @@ -1,19 +0,0 @@ -{{/* -Render all the ports and additionalPorts for a Service object. -*/}} -{{- define "common.classes.service.ports" -}} - {{- $values := .values -}} - {{- $ports := $values.ports -}} - {{- if $ports -}} - ports: - {{- range $_ := $ports }} - - port: {{ .port }} - targetPort: {{ .targetPort | default "http" }} - protocol: {{ .protocol | default "TCP" }} - name: {{ .name | default "http" }} - {{- if (and (eq $.svcType "NodePort") (not (empty .nodePort))) }} - nodePort: {{ .nodePort }} - {{ end }} - {{- end -}} - {{- end -}} -{{- end }} diff --git a/library/common/2106.0.0/templates/lib/chart/_annotations.tpl b/library/common/2106.0.0/templates/lib/chart/_annotations.tpl deleted file mode 100644 index ad80be1e90..0000000000 --- a/library/common/2106.0.0/templates/lib/chart/_annotations.tpl +++ /dev/null @@ -1,6 +0,0 @@ -{{/* -Common workload annotations -*/}} -{{- define "common.annotations" -}} -rollme: {{ randAlphaNum 5 | quote }} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/chart/_capabilities.tpl b/library/common/2106.0.0/templates/lib/chart/_capabilities.tpl deleted file mode 100644 index 7a3c13c8b2..0000000000 --- a/library/common/2106.0.0/templates/lib/chart/_capabilities.tpl +++ /dev/null @@ -1,27 +0,0 @@ -{{/* -Return the appropriate apiVersion for DaemonSet objects. -*/}} -{{- define "common.capabilities.daemonset.apiVersion" -}} -{{- print "apps/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for Deployment objects. -*/}} -{{- define "common.capabilities.deployment.apiVersion" -}} -{{- print "apps/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for StatefulSet objects. -*/}} -{{- define "common.capabilities.statefulset.apiVersion" -}} -{{- print "apps/v1" -}} -{{- end -}} - -{{/* -Return the appropriate apiVersion for StatefulSet objects. -*/}} -{{- define "common.capabilities.cronjob.apiVersion" -}} -{{- print "batch/v1beta1" -}} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/chart/_labels.tpl b/library/common/2106.0.0/templates/lib/chart/_labels.tpl deleted file mode 100644 index f64aead636..0000000000 --- a/library/common/2106.0.0/templates/lib/chart/_labels.tpl +++ /dev/null @@ -1,24 +0,0 @@ -{{/* -Common labels shared across objects. -*/}} -{{- define "common.labels" -}} -helm.sh/chart: {{ include "common.names.chart" . }} -{{ include "common.labels.selectorLabels" . }} -{{- if .Chart.AppVersion }} -app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} -{{- end }} -app.kubernetes.io/managed-by: {{ .Release.Service }} -{{- end }} - -{{/* -Selector labels shared across objects. -*/}} -{{- define "common.labels.selectorLabels" -}} -app.kubernetes.io/name: {{ include "common.names.name" . }} -app.kubernetes.io/instance: {{ include "common.names.releaseName" . }} -{{ if hasKey .Values "extraSelectorLabels" }} -{{ range $selector := .Values.extraSelectorLabels }} -{{ printf "%s: %s" $selector.key $selector.value }} -{{ end }} -{{ end }} -{{- end }} diff --git a/library/common/2106.0.0/templates/lib/chart/_names.tpl b/library/common/2106.0.0/templates/lib/chart/_names.tpl deleted file mode 100644 index e98c6b4e6f..0000000000 --- a/library/common/2106.0.0/templates/lib/chart/_names.tpl +++ /dev/null @@ -1,66 +0,0 @@ -{{/* -Expand the name of the chart. -*/}} -{{- define "common.names.name" -}} -{{- $values := (.common | default dict) -}} -{{- $name := (default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-") }} -{{- if hasKey $values "nameSuffix" -}} - {{- $name = (printf "%v-%v" $name $values.nameSuffix) -}} -{{ end -}} -{{- print $name -}} -{{- 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 "common.names.fullname" -}} -{{- $values := (.common | default dict) -}} -{{- if .Values.fullnameOverride }} -{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- $name := default .Chart.Name .Values.nameOverride }} -{{- if contains $name .Release.Name }} -{{- $name = (.Release.Name | trunc 63 | trimSuffix "-") }} -{{- else }} -{{- $name = (printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-") }} -{{- end }} -{{- if hasKey $values "nameSuffix" -}} - {{- $name = (printf "%v-%v" $name $values.nameSuffix) -}} -{{ end -}} -{{- print $name -}} -{{- end }} -{{- end }} - -{{/* -Create chart name and version as used by the chart label. -*/}} -{{- define "common.names.chart" -}} -{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} -{{- end }} - -{{/* -Determine service account name for deployment or statefulset. -*/}} -{{- define "common.names.serviceAccountName" -}} -{{- if .Values.serviceAccountNameOverride }} -{{- .Values.serviceAccountNameOverride | trunc 63 | trimSuffix "-" }} -{{- else }} -{{- printf "%s-service-account" (include "common.names.releaseName" .) | replace "+" "_" | trunc 63 | trimSuffix "-" -}} -{{- end -}} -{{- end -}} - - -{{/* -Determine release name -This will add a suffix to the release name if nameSuffix is set -*/}} -{{- define "common.names.releaseName" -}} -{{- $values := (.common | default dict) -}} -{{- if hasKey $values "nameSuffix" -}} - {{- printf "%v-%v" .Release.Name $values.nameSuffix -}} -{{- else -}} - {{- print .Release.Name -}} -{{ end -}} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/containers/_environment.tpl b/library/common/2106.0.0/templates/lib/containers/_environment.tpl deleted file mode 100644 index d757f459c1..0000000000 --- a/library/common/2106.0.0/templates/lib/containers/_environment.tpl +++ /dev/null @@ -1,41 +0,0 @@ -{{/* -Render environment variable -*/}} -{{- define "common.containers.environmentVariable" -}} -{{- $envVariable := . -}} -{{- include "common.schema.validateKeys" (dict "values" $envVariable "checkKeys" (list "name")) -}} -{{- if $envVariable.valueFromSecret -}} -{{- include "common.schema.validateKeys" (dict "values" $envVariable "checkKeys" (list "secretName" "secretKey")) -}} -- name: {{ $envVariable.name | quote }} - valueFrom: - secretKeyRef: - name: {{ $envVariable.secretName | quote }} - key: {{ $envVariable.secretKey | quote }} -{{- else -}} -{{- include "common.schema.validateKeys" (dict "values" $envVariable "checkKeys" (list "value")) -}} -- name: {{ $envVariable.name | quote }} - value: {{ $envVariable.value | quote }} -{{- end -}} -{{- end -}} - -{{/* -Render environment variables -*/}} -{{- define "common.containers.environmentVariables" -}} -{{- $values := . -}} -{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "environmentVariables")) -}} -{{- range $envVariable := $values.environmentVariables -}} -{{- include "common.containers.environmentVariable" $envVariable | nindent 0 -}} -{{- end -}} -{{- end -}} - -{{/* -Render environment variables if present -*/}} -{{- define "common.containers.allEnvironmentVariables" -}} -{{- $values := . -}} -{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "environmentVariables")) -}} -{{- if $values.environmentVariables -}} -env: {{- include "common.containers.environmentVariables" $values | nindent 2 -}} -{{- end -}} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/containers/_image.tpl b/library/common/2106.0.0/templates/lib/containers/_image.tpl deleted file mode 100644 index 2b2b04561d..0000000000 --- a/library/common/2106.0.0/templates/lib/containers/_image.tpl +++ /dev/null @@ -1,9 +0,0 @@ -{{/* -Retrieve image configuration for container -*/}} -{{- define "common.containers.imageConfig" -}} -{{- $values := . -}} -{{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "repository" "tag" "pullPolicy")) -}} -image: "{{ $values.repository }}{{- if hasKey $values "postfix" -}}-{{ $values.postfix }}{{- end -}}:{{ $values.tag }}" -imagePullPolicy: {{ $values.pullPolicy }} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/containers/_port.tpl b/library/common/2106.0.0/templates/lib/containers/_port.tpl deleted file mode 100644 index 0077a6371d..0000000000 --- a/library/common/2106.0.0/templates/lib/containers/_port.tpl +++ /dev/null @@ -1,13 +0,0 @@ -{{/* -Retrieve ports configuration for container -*/}} -{{- define "common.containers.configurePorts" -}} -ports: -{{- range $index, $port := .ports -}} -{{- include "common.schema.validateKeys" (dict "values" $port "checkKeys" (list "protocol" "containerPort")) }} -- protocol: {{ $port.protocol }} - containerPort: {{ $port.containerPort }} - {{ if hasKey $port "hostPort" }}hostPort: {{ $port.hostPort }}{{ end }} - {{ if hasKey $port "name" }}name: {{ $port.name }}{{ end }} -{{- end }} -{{ end -}} diff --git a/library/common/2106.0.0/templates/lib/containers/_resource.tpl b/library/common/2106.0.0/templates/lib/containers/_resource.tpl deleted file mode 100644 index fd4f6eef02..0000000000 --- a/library/common/2106.0.0/templates/lib/containers/_resource.tpl +++ /dev/null @@ -1,10 +0,0 @@ -{{/* -Retrieve GPU Configuration -*/}} -{{- define "common.containers.gpuConfiguration" -}} -{{- $values := . -}} -{{ if $values.gpuConfiguration }} -resources: - limits: {{- toYaml $values.gpuConfiguration | nindent 4 }} -{{ end }} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/deployments/_utils.tpl b/library/common/2106.0.0/templates/lib/deployments/_utils.tpl deleted file mode 100644 index b8b2f76ad5..0000000000 --- a/library/common/2106.0.0/templates/lib/deployments/_utils.tpl +++ /dev/null @@ -1,41 +0,0 @@ -{{/* -Retrieve deployment metadata -*/}} -{{- define "common.deployment.metadata" -}} -metadata: - name: {{ template "common.names.fullname" . }} - labels: {{ include "common.labels.selectorLabels" . | nindent 4 }} -{{- end -}} - - -{{/* -Retrieve replicas/strategy/selector -*/}} -{{- define "common.deployment.common_spec" -}} -replicas: {{ (default 1 .Values.replicas) }} -strategy: - type: {{ (default "Recreate" .Values.updateStrategy ) }} -selector: - matchLabels: {{ include "common.labels.selectorLabels" . | nindent 4 }} -{{- end -}} - - -{{/* -Retrieve deployment pod's metadata -*/}} -{{- define "common.deployment.pod.metadata" -}} -metadata: - name: {{ template "common.names.fullname" . }} - labels: {{ include "common.labels.selectorLabels" . | nindent 4 }} - annotations: {{ include "common.annotations" . | nindent 4 }} -{{- end -}} - - -{{/* -Retrieve common deployment configuration -*/}} -{{- define "common.deployment.common_config" -}} -apiVersion: {{ template "common.capabilities.deployment.apiVersion" . }} -kind: Deployment -{{ include "common.deployment.metadata" . | nindent 0 }} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/networking/_dns.tpl b/library/common/2106.0.0/templates/lib/networking/_dns.tpl deleted file mode 100644 index 3a748a4aae..0000000000 --- a/library/common/2106.0.0/templates/lib/networking/_dns.tpl +++ /dev/null @@ -1,12 +0,0 @@ -{{/* -DNS Configuration -*/}} -{{- define "common.networking.dnsConfiguration" }} -{{ if .dnsPolicy }} -dnsPolicy: {{ .dnsPolicy }} -{{ end }} -{{ if .dnsConfig }} -dnsConfig: - {{ toYaml .dnsConfig | nindent 2 }} -{{ end }} -{{- end }} diff --git a/library/common/2106.0.0/templates/lib/resources/_certs.tpl b/library/common/2106.0.0/templates/lib/resources/_certs.tpl deleted file mode 100644 index 9e091595e9..0000000000 --- a/library/common/2106.0.0/templates/lib/resources/_certs.tpl +++ /dev/null @@ -1,26 +0,0 @@ -{{/* -Retrieve true/false if certificate is available in ixCertificates -*/}} -{{- define "common.resources.cert_present" -}} -{{- $values := . -}} -{{- include "common.schema.validateKeys" (dict "values" . "checkKeys" (list "commonCertOptions")) -}} -{{- hasKey $values.Values.ixCertificates ($values.commonCertOptions.certKeyName | toString) -}} -{{- end -}} - - -{{/* -Retrieve certificate from variable name -*/}} -{{- define "common.resources.cert" -}} -{{- $values := . -}} -{{- include "common.schema.validateKeys" (dict "values" . "checkKeys" (list "commonCertOptions")) -}} -{{- $certKey := ($values.commonCertOptions.certKeyName | toString) -}} -{{- if hasKey $values.Values.ixCertificates $certKey -}} -{{- $cert := get $values.Values.ixCertificates $certKey -}} -{{- if $values.commonCertOptions.publicKey -}} -{{ $cert.certificate }} -{{- else -}} -{{ $cert.privatekey }} -{{- end -}} -{{- end -}} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/schema/_utils.tpl b/library/common/2106.0.0/templates/lib/schema/_utils.tpl deleted file mode 100644 index 8577a0b615..0000000000 --- a/library/common/2106.0.0/templates/lib/schema/_utils.tpl +++ /dev/null @@ -1,19 +0,0 @@ -{{/* -Checks if a list of keys are present in a dictionary -*/}} -{{- define "common.schema.validateKeys" -}} -{{- $values := . -}} -{{- if and (hasKey $values "values") (hasKey $values "checkKeys") -}} -{{- $missingKeys := list -}} -{{- range $values.checkKeys -}} -{{- if eq (hasKey $values.values . ) false -}} -{{- $missingKeys = mustAppend $missingKeys . -}} -{{- end -}} -{{- end -}} -{{- if $missingKeys -}} -{{- fail (printf "Missing %s from dictionary" ($missingKeys | join ", ")) -}} -{{- end -}} -{{- else -}} -{{- fail "A dictionary and list of keys to check must be provided" -}} -{{- end -}} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/storage/_appStorage.tpl b/library/common/2106.0.0/templates/lib/storage/_appStorage.tpl deleted file mode 100644 index b97a8b2c09..0000000000 --- a/library/common/2106.0.0/templates/lib/storage/_appStorage.tpl +++ /dev/null @@ -1,75 +0,0 @@ -{{/* -Define appVolumeMounts for container -*/}} -{{- define "common.storage.configureAppVolumeMountsInContainer" -}} -{{- include "common.schema.validateKeys" (dict "values" . "checkKeys" (list "appVolumeMounts")) -}} -{{- $appVolumeMounts := .appVolumeMounts -}} -{{- if $appVolumeMounts -}} -{{ range $name, $avm := $appVolumeMounts }} -{{- if (default true $avm.enabled) -}} -{{ if $avm.containerNameOverride }} -{{ $name = $avm.containerNameOverride }} -{{ end }} -- name: {{ $name }} - mountPath: {{ $avm.mountPath }} - {{ if $avm.subPath }} - subPath: {{ $avm.subPath }} - {{ end }} - {{ if $avm.readOnly }} - readOnly: {{ $avm.readOnly }} - {{ end }} -{{- end -}} -{{ end }} -{{- end -}} -{{- end -}} - - -{{/* -Define hostPath for appVolumes -*/}} -{{- define "common.storage.configureAppVolumes" -}} -{{- include "common.schema.validateKeys" (dict "values" . "checkKeys" (list "appVolumeMounts")) -}} -{{- $values := . -}} -{{- if $values.appVolumeMounts -}} -{{- range $name, $av := $values.appVolumeMounts -}} -{{ if (default true $av.enabled) }} -- name: {{ $name }} - {{ if or $av.emptyDir $.emptyDirVolumes }} - emptyDir: {} - {{- else -}} - hostPath: - {{ if $av.hostPathEnabled }} - path: {{ required "hostPath not set" $av.hostPath }} - {{ else }} - {{- include "common.schema.validateKeys" (dict "values" $values "checkKeys" (list "ixVolumes")) -}} - {{- include "common.schema.validateKeys" (dict "values" $av "checkKeys" (list "datasetName")) -}} - {{- $volDict := dict "datasetName" $av.datasetName "ixVolumes" $values.ixVolumes -}} - path: {{ include "common.storage.retrieveHostPathFromiXVolume" $volDict }} - {{ end }} - {{ end }} -{{ end }} -{{- end -}} -{{- end -}} -{{- end -}} - - -{{/* -Get all volumes configuration -*/}} -{{- define "common.storage.allAppVolumes" -}} -{{- $appVolumeMounts := .appVolumeMounts -}} -{{- if $appVolumeMounts -}} -volumes: {{- include "common.storage.configureAppVolumes" . | nindent 2 -}} -{{- end -}} -{{- end -}} - - -{{/* -Get all container volume moutns configuration -*/}} -{{- define "common.storage.allContainerVolumeMounts" -}} -{{- $appVolumeMounts := .appVolumeMounts -}} -{{- if $appVolumeMounts -}} -volumeMounts: {{- include "common.storage.configureAppVolumeMountsInContainer" . | nindent 2 -}} -{{- end -}} -{{- end -}} diff --git a/library/common/2106.0.0/templates/lib/storage/_ixvolumes.tpl b/library/common/2106.0.0/templates/lib/storage/_ixvolumes.tpl deleted file mode 100644 index f45b9d8d96..0000000000 --- a/library/common/2106.0.0/templates/lib/storage/_ixvolumes.tpl +++ /dev/null @@ -1,11 +0,0 @@ -{{/* -Retrieve host path from ix volumes based on dataset name -*/}} -{{- define "common.storage.retrieveHostPathFromiXVolume" -}} -{{- range $index, $hostPathConfiguration := $.ixVolumes }} -{{- $dsName := base $hostPathConfiguration.hostPath -}} -{{- if eq $.datasetName $dsName -}} -{{- $hostPathConfiguration.hostPath -}} -{{- end -}} -{{- end }} -{{- end -}} From bf668ca65ef5745c5d2bc65768ff2d10c53f0cd2 Mon Sep 17 00:00:00 2001 From: "M. Rehan" Date: Mon, 6 Dec 2021 21:54:03 +0500 Subject: [PATCH 6/9] Move to test train --- {charts => test}/machinaris/1.1.0/.helmignore | 0 {charts => test}/machinaris/1.1.0/Chart.yaml | 0 {charts => test}/machinaris/1.1.0/README.md | 0 {charts => test}/machinaris/1.1.0/app-readme.md | 0 .../machinaris/1.1.0/charts/common-2112.0.0.tgz | Bin {charts => test}/machinaris/1.1.0/ix_values.yaml | 0 {charts => test}/machinaris/1.1.0/questions.yaml | 0 {charts => test}/machinaris/1.1.0/requirements.lock | 0 .../machinaris/1.1.0/templates/_helpers.tpl | 0 .../1.1.0/templates/coins-deployment.yaml | 0 .../machinaris/1.1.0/templates/deployment.yaml | 0 .../machinaris/1.1.0/templates/service.yaml | 0 {charts => test}/machinaris/1.1.0/test_values.yaml | 0 13 files changed, 0 insertions(+), 0 deletions(-) rename {charts => test}/machinaris/1.1.0/.helmignore (100%) rename {charts => test}/machinaris/1.1.0/Chart.yaml (100%) rename {charts => test}/machinaris/1.1.0/README.md (100%) rename {charts => test}/machinaris/1.1.0/app-readme.md (100%) rename {charts => test}/machinaris/1.1.0/charts/common-2112.0.0.tgz (100%) rename {charts => test}/machinaris/1.1.0/ix_values.yaml (100%) rename {charts => test}/machinaris/1.1.0/questions.yaml (100%) rename {charts => test}/machinaris/1.1.0/requirements.lock (100%) rename {charts => test}/machinaris/1.1.0/templates/_helpers.tpl (100%) rename {charts => test}/machinaris/1.1.0/templates/coins-deployment.yaml (100%) rename {charts => test}/machinaris/1.1.0/templates/deployment.yaml (100%) rename {charts => test}/machinaris/1.1.0/templates/service.yaml (100%) rename {charts => test}/machinaris/1.1.0/test_values.yaml (100%) diff --git a/charts/machinaris/1.1.0/.helmignore b/test/machinaris/1.1.0/.helmignore similarity index 100% rename from charts/machinaris/1.1.0/.helmignore rename to test/machinaris/1.1.0/.helmignore diff --git a/charts/machinaris/1.1.0/Chart.yaml b/test/machinaris/1.1.0/Chart.yaml similarity index 100% rename from charts/machinaris/1.1.0/Chart.yaml rename to test/machinaris/1.1.0/Chart.yaml diff --git a/charts/machinaris/1.1.0/README.md b/test/machinaris/1.1.0/README.md similarity index 100% rename from charts/machinaris/1.1.0/README.md rename to test/machinaris/1.1.0/README.md diff --git a/charts/machinaris/1.1.0/app-readme.md b/test/machinaris/1.1.0/app-readme.md similarity index 100% rename from charts/machinaris/1.1.0/app-readme.md rename to test/machinaris/1.1.0/app-readme.md diff --git a/charts/machinaris/1.1.0/charts/common-2112.0.0.tgz b/test/machinaris/1.1.0/charts/common-2112.0.0.tgz similarity index 100% rename from charts/machinaris/1.1.0/charts/common-2112.0.0.tgz rename to test/machinaris/1.1.0/charts/common-2112.0.0.tgz diff --git a/charts/machinaris/1.1.0/ix_values.yaml b/test/machinaris/1.1.0/ix_values.yaml similarity index 100% rename from charts/machinaris/1.1.0/ix_values.yaml rename to test/machinaris/1.1.0/ix_values.yaml diff --git a/charts/machinaris/1.1.0/questions.yaml b/test/machinaris/1.1.0/questions.yaml similarity index 100% rename from charts/machinaris/1.1.0/questions.yaml rename to test/machinaris/1.1.0/questions.yaml diff --git a/charts/machinaris/1.1.0/requirements.lock b/test/machinaris/1.1.0/requirements.lock similarity index 100% rename from charts/machinaris/1.1.0/requirements.lock rename to test/machinaris/1.1.0/requirements.lock diff --git a/charts/machinaris/1.1.0/templates/_helpers.tpl b/test/machinaris/1.1.0/templates/_helpers.tpl similarity index 100% rename from charts/machinaris/1.1.0/templates/_helpers.tpl rename to test/machinaris/1.1.0/templates/_helpers.tpl diff --git a/charts/machinaris/1.1.0/templates/coins-deployment.yaml b/test/machinaris/1.1.0/templates/coins-deployment.yaml similarity index 100% rename from charts/machinaris/1.1.0/templates/coins-deployment.yaml rename to test/machinaris/1.1.0/templates/coins-deployment.yaml diff --git a/charts/machinaris/1.1.0/templates/deployment.yaml b/test/machinaris/1.1.0/templates/deployment.yaml similarity index 100% rename from charts/machinaris/1.1.0/templates/deployment.yaml rename to test/machinaris/1.1.0/templates/deployment.yaml diff --git a/charts/machinaris/1.1.0/templates/service.yaml b/test/machinaris/1.1.0/templates/service.yaml similarity index 100% rename from charts/machinaris/1.1.0/templates/service.yaml rename to test/machinaris/1.1.0/templates/service.yaml diff --git a/charts/machinaris/1.1.0/test_values.yaml b/test/machinaris/1.1.0/test_values.yaml similarity index 100% rename from charts/machinaris/1.1.0/test_values.yaml rename to test/machinaris/1.1.0/test_values.yaml From 9af540a2dc2ff792f5f7f879b3aed3d09a6d8a1d Mon Sep 17 00:00:00 2001 From: "M. Rehan" Date: Mon, 6 Dec 2021 21:56:26 +0500 Subject: [PATCH 7/9] remove Makefile --- Makefile | 4 ---- 1 file changed, 4 deletions(-) delete mode 100644 Makefile diff --git a/Makefile b/Makefile deleted file mode 100644 index 9d6cd8a72f..0000000000 --- a/Makefile +++ /dev/null @@ -1,4 +0,0 @@ - -validate-machinaris: - @helm dependency update ./charts/machinaris/${v} - @helm template --values ./charts/machinaris/${v}/test_values.yaml machinaris ./charts/machinaris/${v} --debug From cfa08e51c7d3157bc12720c2c6785e240cef8a83 Mon Sep 17 00:00:00 2001 From: "M. Rehan" Date: Thu, 9 Dec 2021 03:49:58 +0500 Subject: [PATCH 8/9] Add tests --- .../machinaris/1.0.11/charts/common-2105.0.0.tgz | Bin 4288 -> 0 bytes .../1.1.0/templates/tests/cactus-check.yaml | 15 +++++++++++++++ .../1.1.0/templates/tests/machinaris-check.yaml | 13 +++++++++++++ test/machinaris/1.1.0/test_values.yaml | 4 ++-- 4 files changed, 30 insertions(+), 2 deletions(-) delete mode 100644 test/machinaris/1.0.11/charts/common-2105.0.0.tgz create mode 100644 test/machinaris/1.1.0/templates/tests/cactus-check.yaml create mode 100644 test/machinaris/1.1.0/templates/tests/machinaris-check.yaml diff --git a/test/machinaris/1.0.11/charts/common-2105.0.0.tgz b/test/machinaris/1.0.11/charts/common-2105.0.0.tgz deleted file mode 100644 index ef6f820efb63f7b71b04a313be6b82dee84585b7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4288 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 diff --git a/test/machinaris/1.1.0/templates/tests/cactus-check.yaml b/test/machinaris/1.1.0/templates/tests/cactus-check.yaml new file mode 100644 index 0000000000..e667c27963 --- /dev/null +++ b/test/machinaris/1.1.0/templates/tests/cactus-check.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Pod +metadata: + name: "{{ .Release.Name }}-cactus-deployment-test" + annotations: + "helm.sh/hook": test +spec: + hostNetwork: true + restartPolicy: Never + containers: + - name: {{ .Release.Name }}-cactus-deployment-test + image: busybox + # Note: Adding sleep 15, as even when cactus pod status is ready, I've seen API + # taking a few seconds to be live and running. + command: ['sh', '-c', 'sleep 15 && nc -vz {{ .Values.nodeIP }} {{ .Values.cactus.apiPort }}'] diff --git a/test/machinaris/1.1.0/templates/tests/machinaris-check.yaml b/test/machinaris/1.1.0/templates/tests/machinaris-check.yaml new file mode 100644 index 0000000000..29b612245e --- /dev/null +++ b/test/machinaris/1.1.0/templates/tests/machinaris-check.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: Pod +metadata: + name: "{{ .Release.Name }}-machinaris-deployment-test" + annotations: + "helm.sh/hook": test +spec: + hostNetwork: true + restartPolicy: Never + containers: + - name: {{ .Release.Name }}-machinaris-deployment-test + image: busybox + command: ['sh', '-c', 'nc -vz {{ .Values.nodeIP }} {{ .Values.machinarisApiPort }}'] diff --git a/test/machinaris/1.1.0/test_values.yaml b/test/machinaris/1.1.0/test_values.yaml index 08fcb0636e..efd86a0ff3 100644 --- a/test/machinaris/1.1.0/test_values.yaml +++ b/test/machinaris/1.1.0/test_values.yaml @@ -39,7 +39,7 @@ appVolumeMounts: environmentVariables: - name: mode - value: farming + value: fullnode coins: - cactus @@ -71,7 +71,7 @@ cactus: subPath: mnemonic.txt environmentVariables: - name: mode - value: farming + value: plotter enableResourceLimits: true cpuLimit: 0.5 From 24bd06cb58f6f0981e3881353b13272e6b4d8756 Mon Sep 17 00:00:00 2001 From: "M. Rehan" Date: Fri, 10 Dec 2021 02:08:22 +0500 Subject: [PATCH 9/9] increase delay --- test/machinaris/1.1.0/templates/tests/cactus-check.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/machinaris/1.1.0/templates/tests/cactus-check.yaml b/test/machinaris/1.1.0/templates/tests/cactus-check.yaml index e667c27963..775061f346 100644 --- a/test/machinaris/1.1.0/templates/tests/cactus-check.yaml +++ b/test/machinaris/1.1.0/templates/tests/cactus-check.yaml @@ -12,4 +12,4 @@ spec: image: busybox # Note: Adding sleep 15, as even when cactus pod status is ready, I've seen API # taking a few seconds to be live and running. - command: ['sh', '-c', 'sleep 15 && nc -vz {{ .Values.nodeIP }} {{ .Values.cactus.apiPort }}'] + command: ['sh', '-c', 'sleep 30 && nc -vz {{ .Values.nodeIP }} {{ .Values.cactus.apiPort }}']