questions.yaml 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273
  1. groups:
  2. - name: "Configuration"
  3. description: "Storj application configuration"
  4. - name: "Storage"
  5. description: "Configure storage for storj"
  6. - name: "Networking"
  7. description: "Networking Configuration for storj"
  8. - name: "Advanced DNS Settings"
  9. description: "Configure DNS settings"
  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-webPort"
  20. path: "/"
  21. questions:
  22. - variable: webPort
  23. label: "Web Port for Storj"
  24. group: Networking
  25. schema:
  26. type: int
  27. min: 9000
  28. max: 65535
  29. default: 20909
  30. required: true
  31. - variable: nodePort
  32. label: "Node Port for Storj"
  33. group: Networking
  34. schema:
  35. type: int
  36. min: 9000
  37. max: 65535
  38. default: 20988
  39. required: true
  40. - variable: dnsConfig
  41. label: "DNS Configuration"
  42. group: "Advanced DNS Settings"
  43. schema:
  44. type: dict
  45. attrs:
  46. - variable: options
  47. label: "DNS Options"
  48. schema:
  49. type: list
  50. items:
  51. - variable: optionsEntry
  52. label: "Option Entry Configuration"
  53. schema:
  54. type: dict
  55. attrs:
  56. - variable: name
  57. label: "Option Name"
  58. schema:
  59. type: string
  60. required: true
  61. - variable: value
  62. label: "Option Value"
  63. schema:
  64. type: string
  65. required: true
  66. - variable: wallet
  67. label: "Configure Wallet for Storj"
  68. group: "Configuration"
  69. schema:
  70. type: string
  71. required: true
  72. - variable: authToken
  73. label: "Configure Auth token for Storj Node"
  74. group: "Configuration"
  75. schema:
  76. type: string
  77. required: true
  78. - variable: email
  79. label: "Configure Email for Storj"
  80. group: "Configuration"
  81. schema:
  82. type: string
  83. required: true
  84. - variable: domainAddress
  85. label: "Add Your Storage Domain for Storj"
  86. group: "Configuration"
  87. schema:
  88. type: string
  89. required: true
  90. - variable: storageSize
  91. label: "Configure Storage Size You Want To Share in GB's"
  92. group: Storage
  93. schema:
  94. type: int
  95. min: 500
  96. default: 500
  97. - variable: runAsUser
  98. label: "Owner User ID"
  99. group: "Configuration"
  100. schema:
  101. immutable: true
  102. type: int
  103. default: 568
  104. min: 1
  105. max: 65535
  106. - variable: runAsGroup
  107. label: "Owner Group ID"
  108. group: "Configuration"
  109. schema:
  110. immutable: true
  111. type: int
  112. default: 568
  113. min: 1
  114. max: 65535
  115. - variable: environmentVariables
  116. label: "Storj Extra Environment Variables"
  117. group: "Configuration"
  118. schema:
  119. type: list
  120. default: []
  121. items:
  122. - variable: environmentVariable
  123. label: "Environment Variable"
  124. schema:
  125. type: dict
  126. attrs:
  127. - variable: name
  128. label: "Name"
  129. schema:
  130. type: string
  131. - variable: value
  132. label: "Value"
  133. schema:
  134. type: string
  135. - variable: appVolumeMounts
  136. label: "Storj Configuration"
  137. group: "Storage"
  138. schema:
  139. type: dict
  140. attrs:
  141. - variable: data
  142. label: "Configuration Data Volume to Share on Storj"
  143. schema:
  144. type: dict
  145. attrs:
  146. - variable: datasetName
  147. label: "Configuration Volume Dataset Name"
  148. schema:
  149. type: string
  150. hidden: true
  151. $ref:
  152. - "normalize/ixVolume"
  153. show_if: [["hostPathEnabled", "=", false]]
  154. default: "ix_data"
  155. editable: false
  156. - variable: mountPath
  157. label: "Configuration Mount Path"
  158. description: "Path Where the Volume Will be Mounted Inside the Pod"
  159. schema:
  160. type: path
  161. hidden: true
  162. editable: false
  163. default: "/app/config"
  164. - variable: hostPathEnabled
  165. label: "Enable Custom Host Path for Storj Configuration Volume"
  166. schema:
  167. type: boolean
  168. default: false
  169. show_subquestions_if: true
  170. subquestions:
  171. - variable: hostPath
  172. label: "Host Path for Storj Configuration Volume"
  173. schema:
  174. type: hostpath
  175. required: true
  176. - variable: identity
  177. label: "Configure Identity Volume for Storage Node"
  178. schema:
  179. type: dict
  180. attrs:
  181. - variable: datasetName
  182. label: "Configure Storj Identity Volume to Allocate"
  183. schema:
  184. type: string
  185. hidden: true
  186. $ref:
  187. - "normalize/ixVolume"
  188. show_if: [["hostPathEnabled", "=", false]]
  189. default: "ix_identity"
  190. editable: false
  191. - variable: mountPath
  192. label: "Configure Storj Identity Volume to Allocate"
  193. description: "Path where the volume will be mounted inside the pod"
  194. schema:
  195. type: path
  196. hidden: true
  197. editable: false
  198. default: "/app/identity"
  199. - variable: hostPathEnabled
  200. label: "Enable Custom Host Path for Storj Identity Volume"
  201. schema:
  202. type: boolean
  203. default: false
  204. show_subquestions_if: true
  205. subquestions:
  206. - variable: hostPath
  207. label: "Host Path for Storj identity Volume"
  208. schema:
  209. type: hostpath
  210. required: true
  211. - variable: extraAppVolumeMounts
  212. label: "Extra Host Path Volumes"
  213. group: "Storage"
  214. schema:
  215. type: list
  216. items:
  217. - variable: extraAppVolume
  218. label: "Host Path Volume"
  219. description: "Add an extra host path volume for storj"
  220. schema:
  221. type: dict
  222. attrs:
  223. - variable: mountPath
  224. label: "Mount Path in Pod"
  225. description: "Path where the volume will be mounted inside the pod."
  226. schema:
  227. type: path
  228. required: true
  229. - variable: hostPath
  230. label: "Host Path"
  231. description: "Host path"
  232. schema:
  233. type: hostpath
  234. required: true
  235. - variable: enableResourceLimits
  236. label: "Enable Pod resource limits"
  237. group: "Resource Limits"
  238. schema:
  239. type: boolean
  240. default: false
  241. - variable: cpuLimit
  242. label: "CPU Limresource limitsit"
  243. description: "CPU resource limit allow plain integer values with suffix m(milli) e.g 1000m, 100."
  244. group: "Resource Limits"
  245. schema:
  246. type: string
  247. show_if: [["enableResourceLimits", "=", true]]
  248. valid_chars: "^\\d+(?:\\.\\d+(?!.*m$)|m?$)"
  249. default: "4000m"
  250. - variable: memLimit
  251. label: "Memory Limit"
  252. group: "Resource Limits"
  253. description: "Memory limits is specified by number of bytes. Followed by quantity suffix like E,P,T,G,M,k and Ei,Pi,Ti,Mi,Gi,Ki can also be used. e.g 129e6, 129M, 128974848000m, 123Mi"
  254. schema:
  255. type: string
  256. show_if: [["enableResourceLimits", "=", true]]
  257. valid_chars: "^([+-]?[0-9.]+)([eEinumkKMGTP]*[-+]?[0-9]*)$"
  258. default: "8Gi"