questions.yaml 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180
  1. groups:
  2. - name: "Networking"
  3. description: "Configure Networking for Machinaris"
  4. - name: "Machinaris Configuration"
  5. description: "Machinaris configuration"
  6. - name: "Storage"
  7. description: "Configure Storage for Machinaris"
  8. - name: "Machinaris Environment Variables"
  9. description: "Set the environment that will be visible to the container"
  10. - name: "Resource Limits"
  11. description: "Set CPU/memory limits for Kubernetes Pod"
  12. portals:
  13. web_portal:
  14. protocols:
  15. - "http"
  16. host:
  17. - "$node_ip"
  18. ports:
  19. - "$variable-machinaris_ui_port"
  20. questions:
  21. - variable: timezone
  22. label: "Configure timezone"
  23. group: "Machinaris Configuration"
  24. description: "Configure timezone for machinaris"
  25. schema:
  26. type: string
  27. $ref:
  28. - "definitions/timezone"
  29. - variable: machinaris_ui_port
  30. label: "Machinaris Web UI"
  31. group: "Networking"
  32. description: "Web UI Port for Machinaris"
  33. schema:
  34. type: int
  35. min: 9000
  36. max: 65535
  37. default: 9003
  38. - variable: appVolumeMounts
  39. label: "Machinaris Storage"
  40. group: "Storage"
  41. schema:
  42. type: dict
  43. attrs:
  44. - variable: config
  45. label: "Configuration Volume"
  46. schema:
  47. type: dict
  48. attrs:
  49. - variable: datasetName
  50. label: "Configuration Volume Dataset Name"
  51. schema:
  52. type: string
  53. hidden: true
  54. $ref:
  55. - "normalize/ixVolume"
  56. show_if: [["hostPathEnabled", "=", false]]
  57. default: "config"
  58. editable: false
  59. - variable: mountPath
  60. label: "Configuration Mount Path"
  61. description: "Path where the volume will be mounted inside the pod"
  62. schema:
  63. type: path
  64. hidden: true
  65. editable: true
  66. default: "/root/.chia"
  67. - variable: hostPathEnabled
  68. label: "Enable Custom Host Path for Machinaris Configuration Volume"
  69. schema:
  70. type: boolean
  71. default: false
  72. show_subquestions_if: true
  73. subquestions:
  74. - variable: hostPath
  75. label: "Host Path for Machinaris Configuration Volume"
  76. schema:
  77. type: hostpath
  78. required: true
  79. - variable: plots
  80. label: "Plot Volume"
  81. schema:
  82. type: dict
  83. attrs:
  84. - variable: datasetName
  85. label: "Plots Volume Name"
  86. schema:
  87. type: string
  88. hidden: true
  89. $ref:
  90. - "normalize/ixVolume"
  91. show_if: [["hostPathEnabled", "=", false]]
  92. default: "plots"
  93. editable: false
  94. - variable: mountPath
  95. label: "Plots Mount Path"
  96. description: "Path where the volume will be mounted inside the pod"
  97. schema:
  98. type: path
  99. hidden: true
  100. editable: false
  101. default: "/plots"
  102. - variable: hostPathEnabled
  103. label: "Enable Custom Host Path for Machinaris Plots Volume"
  104. schema:
  105. type: boolean
  106. default: false
  107. show_subquestions_if: true
  108. subquestions:
  109. - variable: hostPath
  110. label: "Host Path for Machinaris Plots Volume"
  111. schema:
  112. type: hostpath
  113. required: true
  114. - variable: extraAppVolumeMounts
  115. label: "Machinaris Extra Host Path Volumes"
  116. group: "Storage"
  117. schema:
  118. type: list
  119. items:
  120. - variable: extraAppVolume
  121. label: "Machinaris Host Path Volume"
  122. description: "Add an extra host path volume for machinaris application"
  123. schema:
  124. type: dict
  125. attrs:
  126. - variable: mountPath
  127. label: "Mount Path in Pod"
  128. description: "Path where the volume will be mounted inside the pod"
  129. schema:
  130. type: path
  131. required: true
  132. - variable: hostPath
  133. label: "Host Path"
  134. description: "Host path"
  135. schema:
  136. type: hostpath
  137. required: true
  138. - variable: environmentVariables
  139. label: "Environment Variables for Machinaris"
  140. group: "Machinaris Environment Variables"
  141. schema:
  142. type: list
  143. default: []
  144. items:
  145. - variable: environmentVariable
  146. label: "Environment Variable"
  147. schema:
  148. type: dict
  149. attrs:
  150. - variable: name
  151. label: "Name"
  152. schema:
  153. type: string
  154. - variable: value
  155. label: "Value"
  156. schema:
  157. type: string
  158. - variable: enableResourceLimits
  159. label: "Enable Pod resource limits"
  160. group: "Resource Limits"
  161. schema:
  162. type: boolean
  163. - variable: cpuLimit
  164. label: "CPU limit"
  165. group: "Resource Limits"
  166. schema:
  167. type: string
  168. show_if: [["enableResourceLimits", "=", true]]
  169. valid_chars: "^\\d+(?:\\.\\d+(?!.*m$)|m?$)"
  170. - variable: memLimit
  171. label: "Memory limit"
  172. group: "Resource Limits"
  173. schema:
  174. type: string
  175. show_if: [["enableResourceLimits", "=", true]]
  176. valid_chars: "^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$"