questions: - variable: EULA description: "The Dkube EULA is available at www.oneconvergence.com/EULA/One-Convergence-EULA.pdf . By accepting this license agreement you acknowledge that you have read and understood the terms and conditions mentioned. Please refer to Basic Configuration section of the installation guide. https://dkube.io/install/install3_x/Install-Advanced.html#basic-configuration" type: enum label: DKUBE-EULA required: true group: "General" options: - "yes" - variable: username default: "" description: "Dkube operator's local sigh-in username: Username cannot be same as that of a namespace's name. Also, following names are restricted - dkube, dkube-infra, kubeflow, istio-system, knative-serving, harbor-system. Please refer to Basic Configuration section of the installation guide. https://dkube.io/install/install3_x/Install-Advanced.html#basic-configuration" type: string label: Username required: true group: "General" show_if: "EULA=yes" - variable: password default: "" description: "Dkube operator's local sigh-in password" type: password label: Password required: true group: "General" show_if: "EULA=yes" - variable: version default: "3.2.0.1" description: "Version of dkube to be installed" type: string label: Dkube version required: true group: "General" show_if: "EULA=yes" - variable: provider default: "dkube" description: "Kubernetes provider: Choose one of dkube/gke/okd/eks/ntnx/tanzu" type: enum label: Kube Provider required: true options: - "dkube" - "gke" - "okd" - "eks" - "ntnx" - "tanzu" group: "General" show_if: "EULA=yes" - variable: ha default: "false" description: "When HA=true k8s cluster must have min 3 schedulable nodes. Please refer to resilient operation section of the installation guide. https://dkube.io/install/install3_x/Install-Advanced.html#resilient-operation" type: boolean label: HA required: true group: "General" show_if: "EULA=yes" - variable: wipedata default: yes description: "Wipe dkube data during helm operation install/uninstall. Choose one of yes/no" type: enum label: Wipe Data required: true options: - "yes" - "no" group: "General" show_if: "EULA=yes" - variable: minimal default: no description: "To install minimal version of dkube. Choose one of yes/no" type: enum label: Minimal required: true options: - "yes" - "no" group: "General" show_if: "EULA=yes" - variable: airgap default: no description: "To install air-gapped version of dkube. Choose one of yes/no" type: enum label: Airgap required: true options: - "yes" - "no" group: "General" show_if: "EULA=yes" # registry - variable: registry.name default: "docker.io/ocdr" description: "Repository from where Dkube images can be picked. Format: registry/[repo]. Please contact support@dkube.io for Dkube registry details" type: string label: Dkube images registry required: true group: "Registry" show_if: "EULA=yes" - variable: registry.username default: "" description: "Container registry username" type: string label: Dkube images registry username required: true group: "Registry" show_if: "EULA=yes" - variable: registry.password default: "" description: "Container registry password" type: password label: Dkube images registry password required: true group: "Registry" show_if: "EULA=yes" # STORAGE - variable: optional.storage.type default: "disk" description: "Type of storage. Note: ceph storage type can only be use with HA=true And pv or sc can only be used with HA=false. Please refer to Storage options section of installation guide. https://dkube.io/install/install3_x/Install-Advanced.html#storage-options" type: enum label: Dkube storage type options: - "disk" - "nfs" - "ceph" - "pv" - "sc" group: "Storage" show_if: "EULA=yes" subquestions: - variable: optional.storage.path default: "/var/dkube" description: "Localpath on the storage node" type: string label: Dkube storage disk path show_if: "optional.storage.type=disk" - variable: optional.storage.node default: "" description: "Node name for dkube storage. Provide hostname of the master node if Kube provider is dkube" type: string label: Dkube storage disk node show_if: "optional.storage.type=disk" - variable: optional.storage.persistentVolume default: "" description: "Name of persistent volume to be used for storage" type: string label: Storage PV show_if: "ha=false&&optional.storage.type=pv" - variable: optional.storage.storageClass default: "" description: "Name of storage class to be used for storage. Make sure dynamic provisioner is running for the storage class name" type: string label: Storage class show_if: "ha=false&&optional.storage.type=sc" - variable: optional.storage.nfsServer default: "" description: "NFS server ip to be used for storage" type: string label: NFS Server show_if: "optional.storage.type=nfs" - variable: optional.storage.nfsPath default: "" description: "NFS path (Make sure the path exists)" type: string label: NFS path show_if: "optional.storage.type=nfs" - variable: optional.storage.cephMonitors default: "" description: "Comma separated IPs of ceph monitors" type: string label: Ceph monitors show_if: "optional.storage.type=ceph" - variable: optional.storage.cephSecret default: "" description: "Ceph secret" type: string label: Ceph Secret show_if: "optional.storage.type=ceph" - variable: optional.storage.cephFilesystem default: "" description: "Ceph Filesystem" type: string label: Ceph Filesystem show_if: "optional.storage.type=ceph" - variable: optional.storage.cephNamespace default: "" description: "Ceph Namespace" type: string label: Ceph Namespace show_if: "optional.storage.type=ceph" - variable: optional.storage.cephPath default: "/var/lib/rook" description: "Ceph data and configuration path for internal ceph. Internal ceph is installed when HA=true and Storage type is not equal to nfs or ceph" type: string label: Ceph storage path #show_if: "ha=true&&optional.storage.type!=ceph&&optional.storage.type!=nfs" show_if: "ha=true" - variable: optional.storage.cephDisk default: "" description: "Only for internal ceph from release 2.2.1.12. Disk name for internal ceph storage. It should be a raw formatted disk. E.g: sdb" type: string label: Ceph Storage Disk #show_if: "ha=true&&optional.storage.type!=ceph&&optional.storage.type!=nfs" show_if: "ha=true" # Loadbalancer - variable: optional.loadbalancer.access default: "nodeport" description: "Type of dkube proxy service, possible values are nodeport and loadbalancer; Please use loadbalancer if kubeProvider is gke." type: enum label: Dkube access type group: "Loadbalancer" #show_if: "EULA=yes&&ha=true" #show_if: "EULA=yes&&ha=true&&optional.storage.type!=ceph&&optional.storage.type!=nfs" #show_if: "ha=true&&optional.storage.type=ceph" options: - "loadbalancer" - "nodeport" show_subquestion_if: loadbalancer show_if: "EULA=yes" subquestions: - variable: optional.loadbalancer.metallb default: false description: "Set true to install MetalLB Loadbalancer. Please refer to Load Balancer options section of installation guide. https://dkube.io/install/install3_x/Install-Advanced.html#load-balancer-options" type: string label: MetalLB Loadbalancer - variable: optional.loadbalancer.vipPool default: "" description: "Valid only if installLoadbalancer is true; Only CIDR notation is allowed. E.g: 192.168.2.0/24" type: string label: Loadbalancer VipPool show_if: "EULA=yes" # Modelmonitor - variable: optional.modelmonitor.enabled default: "false" description: "To enable modelmonitor in dkube. (true / false). Please refer to Model Monitor section of installation guide. https://dkube.io/install/install3_x/Install-Advanced.html#model-monitor" type: boolean label: Enable Modelmonitor group: "General" show_if: "EULA=yes" # DBAAS - variable: optional.DBAAS.database default: "" description: "To configure external database for dkube. Supported mysql, sqlserver(mssql). Empty will pickup default sql db installed with dkube. Please refer to section External Database of installation guide. https://dkube.io/install/install3_x/Install-Advanced.html#external-database" type: string label: database group: "DBAAS" show_if: "EULA=yes" - variable: optional.DBAAS.dsn default: "" description: "Syntaxes here can be followed to specify dsn https://gorm.io/docs/connecting_to_the_database.html" type: string label: dsn group: "DBAAS" show_if: "EULA=yes" # CICD - variable: optional.CICD.enabled default: "false" description: "To enable tekton cicd with dkube. (true / false). Please refer to CICD section of installation guide. https://dkube.io/install/install3_x/Install-Advanced.html#ci-cd" type: boolean label: CICD Enabled group: "CICD" show_if: "EULA=yes" show_subquestion_if: true subquestions: - variable: optional.CICD.registryName default: false description: "Docker registry where CICD built images will be saved" type: string label: Docker registry name - variable: optional.CICD.registryUsername default: false description: "Docker registry Username" type: string label: Docker registry Username - variable: optional.CICD.registryPassword default: false description: "Docker registry password" type: string label: Docker registry Password - variable: optional.CICD.IAMRole default: false description: "For AWS ECR on EKS K8S cluster, enter registry as aws_account_id.dkr.ecr.region.amazonaws.com. registryName: 'aws_account_id.dkr.ecr.region.amazonaws.com' Worker nodes should either have AmazonEC2ContainerRegistryFullAccess or if you are using KIAM based IAM control, provide an IAM role which has AmazonEC2ContainerRegistryFullAccess; IAMRole: 'arn:aws:iam:::role/'" type: string label: IAMRole # Node Affinity - variable: optional.nodeAffinity.dkubeNodesLabel default: "" description: "Nodes identified by labels on which the dkube pods must be scheduled.. Say management nodes. Unfilled means no binding. When filled there needs to be minimum of 3nodes in case of HA and one node in case of non-HA. Example: DKUBE_NODES_LABEL: key1=value1. Please refer to section Node Affinity of installation guide. https://dkube.io/install/install3_x/Install-Advanced.html#node-affinity" type: string label: DKUBE_NODES_LABEL group: "NodeAffinity" show_if: "EULA=yes" - variable: optional.nodeAffinity.dkubeNodesTaints default: "" description: "Nodes to be tolerated by dkube control plane pods so that only they can be scheduled on the nodes. Example: DKUBE_NODES_TAINTS: key1=value1:NoSchedule,key2=value2:NoSchedule" type: string label: DKUBE_NODES_TAINTS group: "NodeAffinity" show_if: "EULA=yes" - variable: optional.nodeAffinity.gpuWorkloadTaints default: "" description: "Taints of the nodes where gpu workloads must be scheduled. Example: GPU_WORKLOADS_TAINTS: key1=value1:NoSchedule,key2=value2:NoSchedule" type: string label: GPU_WORKLOADS_TAINTS group: "NodeAffinity" show_if: "EULA=yes" - variable: optional.nodeAffinity.productionWorkloadTaints default: "" description: "Taints of the nodes where production workloads must be scheduled. Example: PRODUCTION_WORKLOADS_TAINTS: key1=value1:NoSchedule,key2=value2:NoSchedule" type: string label: PRODUCTION_WORKLOADS_TAINTS group: "NodeAffinity" show_if: "EULA=yes" - variable: optional.dkubeDockerhubCredentialsSecret default: "" description: "Dockerhub Secrets for OCDR images. If you don't create, this will be auto-created with default values." type: string label: DKUBE DOCKERHUB CREDENTIALS SECRET group: "General" show_if: "EULA=yes" - variable: optional.IAMRole default: "" description: "AWS IAM role. Valid only if KUBE_PROVIDER=eks. This will be set as an annotation in few deployments. Format should be like: IAMRole: ': ' eg: IAMRole: 'iam.amazonaws.com/role: arn:aws:iam::123456789012:role/myrole'" type: string label: IAMRole group: "General" show_if: "EULA=yes&&provider=eks"