questions.yaml 63 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611
  1. groups:
  2. - name: DDNS Updater Configuration
  3. description: Configure DDNS Updater
  4. - name: User and Group Configuration
  5. description: Configure User and Group for DDNS Updater
  6. - name: Network Configuration
  7. description: Configure Network for DDNS Updater
  8. - name: Storage Configuration
  9. description: Configure Storage for DDNS Updater
  10. - name: Resources Configuration
  11. description: Configure Resources for DDNS Updater
  12. portals:
  13. web_portal:
  14. protocols:
  15. - "$kubernetes-resource_configmap_portal_protocol"
  16. host:
  17. - "$kubernetes-resource_configmap_portal_host"
  18. ports:
  19. - "$kubernetes-resource_configmap_portal_port"
  20. path: "$kubernetes-resource_configmap_portal_path"
  21. questions:
  22. - variable: TZ
  23. group: DDNS Updater Configuration
  24. label: Timezone
  25. schema:
  26. type: string
  27. default: Etc/UTC
  28. required: true
  29. $ref:
  30. - definitions/timezone
  31. - variable: ddnsConfig
  32. label: ""
  33. group: DDNS Updater Configuration
  34. schema:
  35. type: dict
  36. attrs:
  37. - variable: config
  38. label: DNS Provider Configuration
  39. description: |
  40. Configuration for DDNS Updater.</br>
  41. Choose your provider in the following link for more information </br>
  42. https://github.com/qdm12/ddns-updater#configuration
  43. schema:
  44. type: list
  45. min: 1
  46. required: true
  47. empty: false
  48. default: []
  49. items:
  50. - variable: configEntry
  51. label: Configuration Entry
  52. schema:
  53. type: dict
  54. attrs:
  55. - variable: provider
  56. label: Provider
  57. schema:
  58. type: string
  59. required: true
  60. enum:
  61. - value: aliyun
  62. description: Aliyun
  63. - value: allinkl
  64. description: All-Inkl
  65. - value: cloudflare
  66. description: Cloudflare
  67. - value: dd24
  68. description: DD24
  69. - value: ddnss
  70. description: DDNSS
  71. - value: desec
  72. description: Desec
  73. - value: digitalocean
  74. description: Digital Ocean
  75. - value: dnsomatic
  76. description: DNS O Matic
  77. - value: dnspod
  78. description: DNS Pod
  79. - value: dondominio
  80. description: Don Dominio
  81. - value: dreamhost
  82. description: Dreamhost
  83. - value: duckdns
  84. description: Duck DNS
  85. - value: dyn
  86. description: DynDNS
  87. - value: dynu
  88. description: Dynu
  89. - value: dynv6
  90. description: DynV6
  91. - value: easydns
  92. description: EasyDNS
  93. - value: freedns
  94. description: FreeDNS
  95. - value: gandi
  96. description: Gandi
  97. - value: gcp
  98. description: GCP
  99. - value: godaddy
  100. description: GoDaddy
  101. - value: goip
  102. description: GoIP.de
  103. - value: google
  104. description: Google
  105. - value: he
  106. description: He.net
  107. - value: hetzner
  108. description: Hetzner
  109. - value: infomaniak
  110. description: Infomaniak
  111. - value: inwx
  112. description: INWX
  113. - value: ionos
  114. description: Ionos
  115. - value: linode
  116. description: Linode
  117. - value: luadns
  118. description: LuaDNS
  119. - value: namecheap
  120. description: Namecheap
  121. - value: name.com
  122. description: Name.com
  123. - value: netcup
  124. description: Netcup
  125. - value: nowdns
  126. description: NowDNS
  127. - value: njalla
  128. description: Njalla
  129. - value: noip
  130. description: NoIP
  131. - value: opendns
  132. description: OpenDNS
  133. - value: ovh
  134. description: OVH
  135. - value: porkbun
  136. description: Porkbun
  137. - value: selfhost.de
  138. description: Selfhost.de
  139. - value: servercow
  140. description: Servercow
  141. - value: spdyn
  142. description: Spdyn.de
  143. - value: strato
  144. description: Strato
  145. - value: variomedia
  146. description: Variomedia
  147. - value: zoneedit
  148. description: ZoneEdit
  149. # Common to all providers
  150. - variable: domain
  151. label: Domain
  152. description: |
  153. Domain </br>
  154. For example: example.com
  155. schema:
  156. type: string
  157. required: true
  158. empty: false
  159. - variable: ipVersion
  160. label: IP Version
  161. description: |
  162. IP Version. </br>
  163. For example: IPv4
  164. schema:
  165. type: string
  166. default: ""
  167. enum:
  168. - value: ipv4
  169. description: IPv4
  170. - value: ipv6
  171. description: IPv6
  172. - value: ""
  173. description: IPv4 and IPv6
  174. - variable: host
  175. label: Host
  176. description: |
  177. Host. </br>
  178. For example: "@"
  179. schema:
  180. type: string
  181. default: "@"
  182. required: true
  183. empty: false
  184. # Aliyun
  185. - variable: aliyunAccessKey
  186. label: Aliyun Access Key
  187. description: Aliyun Access Key.
  188. schema:
  189. type: string
  190. show_if: [["provider", "=", "aliyun"]]
  191. required: true
  192. private: true
  193. empty: false
  194. - variable: aliyunSecret
  195. label: Aliyun Secret
  196. description: Aliyun Secret.
  197. schema:
  198. type: string
  199. show_if: [["provider", "=", "aliyun"]]
  200. required: true
  201. private: true
  202. empty: false
  203. # All-Inkl
  204. - variable: allinklUsername
  205. label: All-Inkl Username
  206. description: All-Inkl Username.
  207. schema:
  208. type: string
  209. show_if: [["provider", "=", "allinkl"]]
  210. required: true
  211. empty: false
  212. - variable: allinklPassword
  213. label: All-Inkl Password
  214. description: All-Inkl Password.
  215. schema:
  216. type: string
  217. show_if: [["provider", "=", "allinkl"]]
  218. required: true
  219. private: true
  220. empty: false
  221. # Cloudflare
  222. - variable: cloudflareZoneID
  223. label: Cloudflare Zone ID
  224. description: |
  225. Cloudflare Zone ID. </br>
  226. You can find it in the Overview tab of your domain.
  227. schema:
  228. type: string
  229. required: true
  230. private: true
  231. show_if: [["provider", "=", "cloudflare"]]
  232. - variable: cloudflareTtl
  233. label: Cloudflare TTL
  234. description: |
  235. Cloudflare TTL. </br>
  236. 1 = Automatic </br>
  237. 600 = 10 minutes
  238. schema:
  239. type: int
  240. min: 1
  241. required: true
  242. show_if: [["provider", "=", "cloudflare"]]
  243. default: 1
  244. - variable: cloudflareProxied
  245. label: Cloudflare Proxied
  246. description: |
  247. Cloudflare Proxied. </br>
  248. True = Proxied </br>
  249. False = DNS Only
  250. schema:
  251. type: boolean
  252. show_if: [["provider", "=", "cloudflare"]]
  253. default: false
  254. - variable: cloudflareToken
  255. label: Cloudflare Token
  256. description: Cloudflare Token.
  257. schema:
  258. type: string
  259. private: true
  260. show_if: [["provider", "=", "cloudflare"]]
  261. - variable: cloudflareUserServiceKey
  262. label: Cloudflare User Service Key
  263. description: Cloudflare User Service Key.
  264. schema:
  265. type: string
  266. private: true
  267. show_if: [["provider", "=", "cloudflare"]]
  268. - variable: cloudflareEmail
  269. label: Cloudflare Email
  270. description: Cloudflare Email.
  271. schema:
  272. type: string
  273. show_if: [["provider", "=", "cloudflare"]]
  274. - variable: cloudflareApiKey
  275. label: Cloudflare API Key
  276. description: Cloudflare API Key.
  277. schema:
  278. type: string
  279. show_if: [["provider", "=", "cloudflare"]]
  280. # DD24
  281. - variable: dd24Password
  282. label: DD24 Password
  283. description: DD24 Password.
  284. schema:
  285. type: string
  286. show_if: [["provider", "=", "dd24"]]
  287. required: true
  288. private: true
  289. empty: false
  290. # DDNSS
  291. - variable: ddnssUsername
  292. label: DDNSS Username
  293. description: DDNSS Username.
  294. schema:
  295. type: string
  296. show_if: [["provider", "=", "ddnss"]]
  297. required: true
  298. empty: false
  299. - variable: ddnssPassword
  300. label: DDNSS Password
  301. description: DDNSS Password.
  302. schema:
  303. type: string
  304. show_if: [["provider", "=", "ddnss"]]
  305. private: true
  306. required: true
  307. empty: false
  308. - variable: ddnssProviderIP
  309. label: DDNSS Provider IP
  310. description: DDNSS Provider IP.
  311. schema:
  312. type: boolean
  313. show_if: [["provider", "=", "ddnss"]]
  314. default: false
  315. - variable: ddnssDualStack
  316. label: DDNSS Dual Stack
  317. description: DDNSS Dual Stack.
  318. schema:
  319. type: boolean
  320. show_if: [["provider", "=", "ddnss"]]
  321. default: false
  322. # Desec
  323. - variable: desecToken
  324. label: Desec Token
  325. description: Desec Token.
  326. schema:
  327. type: string
  328. show_if: [["provider", "=", "desec"]]
  329. required: true
  330. private: true
  331. empty: false
  332. # Digital Ocean
  333. - variable: digitalOceanToken
  334. label: Digital Ocean Token
  335. description: Digital Ocean Token
  336. schema:
  337. type: string
  338. show_if: [["provider", "=", "digitalocean"]]
  339. required: true
  340. private: true
  341. empty: false
  342. # DNS O Matic
  343. - variable: dnsOMaticUsername
  344. label: DNS O Matic Username
  345. description: DNS O Matic Username.
  346. schema:
  347. type: string
  348. show_if: [["provider", "=", "dnsomatic"]]
  349. required: true
  350. empty: false
  351. - variable: dnsOMaticPassword
  352. label: DNS O Matic Password
  353. description: DNS O Matic Password.
  354. schema:
  355. type: string
  356. show_if: [["provider", "=", "dnsomatic"]]
  357. required: true
  358. private: true
  359. empty: false
  360. - variable: dnsOMaticProviderIP
  361. label: DNS O Matic Provider IP
  362. description: DNS O Matic Provider IP.
  363. schema:
  364. type: boolean
  365. show_if: [["provider", "=", "dnsomatic"]]
  366. default: false
  367. # DNS Pod
  368. - variable: dnsPodToken
  369. label: DNS Pod Token
  370. description: DNS Pod Token.
  371. schema:
  372. type: string
  373. show_if: [["provider", "=", "dnspod"]]
  374. required: true
  375. private: true
  376. empty: false
  377. # Don Dominio
  378. - variable: donDominioUsername
  379. label: Don Dominio Username
  380. description: Don Dominio Username.
  381. schema:
  382. type: string
  383. show_if: [["provider", "=", "dondominio"]]
  384. required: true
  385. empty: false
  386. - variable: donDominioPassword
  387. label: Don Dominio Password
  388. description: Don Dominio Password.
  389. schema:
  390. type: string
  391. show_if: [["provider", "=", "dondominio"]]
  392. required: true
  393. private: true
  394. empty: false
  395. - variable: donDominioName
  396. label: Don Dominio Name
  397. description: Don Dominio Name.
  398. schema:
  399. type: string
  400. show_if: [["provider", "=", "dondominio"]]
  401. required: true
  402. empty: false
  403. # Dreamhost
  404. - variable: dreamHostKey
  405. label: Dreamhost Key
  406. description: Dreamhost Key.
  407. schema:
  408. type: string
  409. show_if: [["provider", "=", "dreamhost"]]
  410. required: true
  411. private: true
  412. empty: false
  413. # Duck DNS
  414. - variable: duckdnsToken
  415. label: Duck DNS Token
  416. description: Duck DNS Token.
  417. schema:
  418. type: string
  419. show_if: [["provider", "=", "duckdns"]]
  420. required: true
  421. private: true
  422. empty: false
  423. - variable: duckdnsProviderIP
  424. label: Duck DNS Provider IP
  425. description: Duck DNS Provider IP.
  426. schema:
  427. type: boolean
  428. show_if: [["provider", "=", "duckdns"]]
  429. default: false
  430. # DynDNS
  431. - variable: dynClientKey
  432. label: DynDNS Client Key
  433. description: DynDNS Client Key.
  434. schema:
  435. type: string
  436. show_if: [["provider", "=", "dyn"]]
  437. required: true
  438. private: true
  439. empty: false
  440. - variable: dynUsername
  441. label: DynDNS Username
  442. description: DynDNS Username.
  443. schema:
  444. type: string
  445. show_if: [["provider", "=", "dyn"]]
  446. required: true
  447. empty: false
  448. - variable: dynProviderIP
  449. label: DynDNS Provider IP
  450. description: DynDNS Provider IP.
  451. schema:
  452. type: boolean
  453. show_if: [["provider", "=", "dyn"]]
  454. default: false
  455. # Dynu
  456. - variable: dynuUsername
  457. label: Dynu Username
  458. description: Dynu Username.
  459. schema:
  460. type: string
  461. show_if: [["provider", "=", "dynu"]]
  462. required: true
  463. empty: false
  464. - variable: dynuPassword
  465. label: Dynu Password
  466. description: Dynu Password.
  467. schema:
  468. type: string
  469. show_if: [["provider", "=", "dynu"]]
  470. required: true
  471. private: true
  472. empty: false
  473. - variable: dynuGroup
  474. label: Dynu Group
  475. description: Dynu Group.
  476. schema:
  477. type: string
  478. show_if: [["provider", "=", "dynu"]]
  479. - variable: dynuProviderIP
  480. label: Dynu Provider IP
  481. description: Dynu Provider IP.
  482. schema:
  483. type: boolean
  484. show_if: [["provider", "=", "dynu"]]
  485. default: false
  486. # DynV6
  487. - variable: dynv6Token
  488. label: DynV6 Token
  489. description: DynV6 Token
  490. schema:
  491. type: string
  492. show_if: [["provider", "=", "dynv6"]]
  493. required: true
  494. private: true
  495. empty: false
  496. - variable: dynv6ProviderIP
  497. label: DynV6 Provider IP
  498. description: DynV6 Provider IP.
  499. schema:
  500. type: boolean
  501. show_if: [["provider", "=", "dynv6"]]
  502. default: false
  503. # EasyDNS
  504. - variable: easyDnsUsername
  505. label: EasyDNS Username
  506. description: EasyDNS Username.
  507. schema:
  508. type: string
  509. show_if: [["provider", "=", "easydns"]]
  510. required: true
  511. empty: false
  512. - variable: easyDnsToken
  513. label: EasyDNS Token
  514. description: EasyDNS Token.
  515. schema:
  516. type: string
  517. show_if: [["provider", "=", "easydns"]]
  518. required: true
  519. private: true
  520. empty: false
  521. # FreeDNS
  522. - variable: freeDnsToken
  523. label: FreeDNS Token
  524. description: FreeDNS Token.
  525. schema:
  526. type: string
  527. show_if: [["provider", "=", "freedns"]]
  528. required: true
  529. empty: false
  530. # Gandi
  531. - variable: gandiKey
  532. label: Gandi Key
  533. description: Gandi Key.
  534. schema:
  535. type: string
  536. show_if: [["provider", "=", "gandi"]]
  537. required: true
  538. private: true
  539. empty: false
  540. - variable: gandiTtl
  541. label: Gandi TTL
  542. description: Gandi TTL.
  543. schema:
  544. type: int
  545. show_if: [["provider", "=", "gandi"]]
  546. default: 3600
  547. required: true
  548. # GoIP.de
  549. - variable: goipUsername
  550. label: GoIP.de Username
  551. description: GoIP.de Username.
  552. schema:
  553. type: string
  554. show_if: [["provider", "=", "goip"]]
  555. required: true
  556. empty: false
  557. - variable: goipPassword
  558. label: GoIP.de Password
  559. description: GoIP.de Password.
  560. schema:
  561. type: string
  562. show_if: [["provider", "=", "goip"]]
  563. required: true
  564. private: true
  565. empty: false
  566. # GCP
  567. - variable: gcpProject
  568. label: GCP Project
  569. description: GCP Project.
  570. schema:
  571. type: string
  572. show_if: [["provider", "=", "gcp"]]
  573. required: true
  574. empty: false
  575. - variable: gcpZone
  576. label: GCP Zone
  577. description: GCP Zone.
  578. schema:
  579. type: string
  580. show_if: [["provider", "=", "gcp"]]
  581. required: true
  582. empty: false
  583. - variable: gcpCredentials
  584. label: GCP Credentials
  585. description: |
  586. GCP Credentials.</br>
  587. Paste the JSON content in this field
  588. schema:
  589. type: string
  590. show_if: [["provider", "=", "gcp"]]
  591. required: true
  592. private: true
  593. empty: false
  594. # GoDaddy
  595. - variable: godaddyKey
  596. label: GoDaddy Key
  597. description: GoDaddy Key.
  598. schema:
  599. type: string
  600. show_if: [["provider", "=", "godaddy"]]
  601. required: true
  602. private: true
  603. empty: false
  604. - variable: godaddySecret
  605. label: GoDaddy Secret
  606. description: GoDaddy Secret.
  607. schema:
  608. type: string
  609. show_if: [["provider", "=", "godaddy"]]
  610. required: true
  611. private: true
  612. empty: false
  613. # Google
  614. - variable: googleUsername
  615. label: Google Username
  616. description: Google Username.
  617. schema:
  618. type: string
  619. show_if: [["provider", "=", "google"]]
  620. required: true
  621. empty: false
  622. - variable: googlePassword
  623. label: Google Password
  624. description: Google Password.
  625. schema:
  626. type: string
  627. show_if: [["provider", "=", "google"]]
  628. required: true
  629. private: true
  630. empty: false
  631. # He.net
  632. - variable: hePassword
  633. label: He.net Password
  634. description: He.net Password.
  635. schema:
  636. type: string
  637. show_if: [["provider", "=", "he"]]
  638. required: true
  639. private: true
  640. empty: false
  641. - variable: heProviderIP
  642. label: He.net Provider IP
  643. description: He.net Provider IP.
  644. schema:
  645. type: boolean
  646. show_if: [["provider", "=", "he"]]
  647. default: false
  648. # Hetzner
  649. - variable: hetznerToken
  650. label: Hetzner Token
  651. description: Hetzner Token.
  652. schema:
  653. type: string
  654. show_if: [["provider", "=", "hetzner"]]
  655. required: true
  656. private: true
  657. empty: false
  658. - variable: hetznerZoneIdentifier
  659. label: Hetzner Zone ID
  660. description: Hetzner Zone ID.
  661. schema:
  662. type: string
  663. show_if: [["provider", "=", "hetzner"]]
  664. required: true
  665. empty: false
  666. - variable: hetznerTtl
  667. label: Hetzner TTL
  668. description: Hetzner TTL.
  669. schema:
  670. type: int
  671. show_if: [["provider", "=", "hetzner"]]
  672. # Infomaniak
  673. - variable: infomaniakUsername
  674. label: Infomaniak Username
  675. description: Infomaniak Username.
  676. schema:
  677. type: string
  678. show_if: [["provider", "=", "infomaniak"]]
  679. required: true
  680. empty: false
  681. - variable: infomaniakPassword
  682. label: Infomaniak Password
  683. description: Infomaniak Password.
  684. schema:
  685. type: string
  686. show_if: [["provider", "=", "infomaniak"]]
  687. required: true
  688. private: true
  689. empty: false
  690. - variable: infomaniakProviderIP
  691. label: Infomaniak Provider IP
  692. description: Infomaniak Provider IP.
  693. schema:
  694. type: boolean
  695. show_if: [["provider", "=", "infomaniak"]]
  696. default: false
  697. # INWX
  698. - variable: inwxUsername
  699. label: INWX Username
  700. description: INWX Username.
  701. schema:
  702. type: string
  703. show_if: [["provider", "=", "inwx"]]
  704. required: true
  705. empty: false
  706. - variable: inwxPassword
  707. label: INWX Password
  708. description: INWX Password.
  709. schema:
  710. type: string
  711. show_if: [["provider", "=", "inwx"]]
  712. private: true
  713. required: true
  714. empty: false
  715. # Ionos
  716. - variable: ionosApiKey
  717. label: Ionos API Key
  718. description: Ionos API Key.
  719. schema:
  720. type: string
  721. show_if: [["provider", "=", "ionos"]]
  722. required: true
  723. private: true
  724. empty: false
  725. # Linode
  726. - variable: linodeToken
  727. label: Linode Token
  728. description: Linode Token.
  729. schema:
  730. type: string
  731. show_if: [["provider", "=", "linode"]]
  732. required: true
  733. private: true
  734. empty: false
  735. # LuaDNS
  736. - variable: luadnsToken
  737. label: LuaDNS Token
  738. description: LuaDNS Token.
  739. schema:
  740. type: string
  741. show_if: [["provider", "=", "luadns"]]
  742. required: true
  743. private: true
  744. empty: false
  745. - variable: luadnsEmail
  746. label: LuaDNS Email
  747. description: LuaDNS Email.
  748. schema:
  749. type: string
  750. show_if: [["provider", "=", "luadns"]]
  751. required: true
  752. empty: false
  753. # Namecheap
  754. - variable: namecheapPassword
  755. label: Namecheap Password
  756. description: Namecheap Password.
  757. schema:
  758. type: string
  759. show_if: [["provider", "=", "namecheap"]]
  760. required: true
  761. private: true
  762. empty: false
  763. - variable: namecheapProviderIP
  764. label: Namecheap Provider IP
  765. description: Namecheap Provider IP.
  766. schema:
  767. type: boolean
  768. show_if: [["provider", "=", "namecheap"]]
  769. default: false
  770. # Name.com
  771. - variable: namecomUsername
  772. label: Name.com Username
  773. description: Name.com Username.
  774. schema:
  775. type: string
  776. show_if: [["provider", "=", "name.com"]]
  777. required: true
  778. empty: false
  779. - variable: namecomToken
  780. label: Name.com Token
  781. description: Name.com Token.
  782. schema:
  783. type: string
  784. show_if: [["provider", "=", "name.com"]]
  785. required: true
  786. private: true
  787. empty: false
  788. - variable: namecomTtl
  789. label: Name.com TTL
  790. description: Name.com TTL.
  791. schema:
  792. type: int
  793. show_if: [["provider", "=", "name.com"]]
  794. default: 300
  795. required: true
  796. # Netcup
  797. - variable: netcupApiKey
  798. label: Netcup API Key
  799. description: Netcup API Key.
  800. schema:
  801. type: string
  802. show_if: [["provider", "=", "netcup"]]
  803. required: true
  804. private: true
  805. empty: false
  806. - variable: netcupPassword
  807. label: Netcup Password
  808. description: Netcup Password.
  809. schema:
  810. type: string
  811. show_if: [["provider", "=", "netcup"]]
  812. required: true
  813. private: true
  814. empty: false
  815. - variable: netcupCustomerNumber
  816. label: Netcup Customer Number
  817. description: Netcup Customer Number.
  818. schema:
  819. type: string
  820. show_if: [["provider", "=", "netcup"]]
  821. required: true
  822. empty: false
  823. # NowDNS
  824. - variable: nowdnsUsername
  825. label: NowDNS Username
  826. description: NowDNS Username.
  827. schema:
  828. type: string
  829. show_if: [["provider", "=", "nowdns"]]
  830. required: true
  831. empty: false
  832. - variable: nowdnsPassword
  833. label: NowDNS Password
  834. description: NowDNS Password.
  835. schema:
  836. type: string
  837. show_if: [["provider", "=", "nowdns"]]
  838. required: true
  839. private: true
  840. empty: false
  841. # Njalla
  842. - variable: njallaKey
  843. label: Njalla Key
  844. description: Njalla Key.
  845. schema:
  846. type: string
  847. show_if: [["provider", "=", "njalla"]]
  848. required: true
  849. private: true
  850. empty: false
  851. - variable: njallaProviderIP
  852. label: Njalla Provider IP
  853. description: Njalla Provider IP.
  854. schema:
  855. type: boolean
  856. show_if: [["provider", "=", "njalla"]]
  857. default: false
  858. # NoIP
  859. - variable: noipUsername
  860. label: NoIP Username
  861. description: NoIP Username.
  862. schema:
  863. type: string
  864. show_if: [["provider", "=", "noip"]]
  865. required: true
  866. empty: false
  867. - variable: noipPassword
  868. label: NoIP Password
  869. description: NoIP Password.
  870. schema:
  871. type: string
  872. show_if: [["provider", "=", "noip"]]
  873. required: true
  874. private: true
  875. empty: false
  876. - variable: noipProviderIP
  877. label: NoIP Provider IP
  878. description: NoIP Provider IP.
  879. schema:
  880. type: boolean
  881. show_if: [["provider", "=", "noip"]]
  882. default: false
  883. # OpenDNS
  884. - variable: opendnsUsername
  885. label: OpenDNS Username
  886. description: OpenDNS Username.
  887. schema:
  888. type: string
  889. show_if: [["provider", "=", "opendns"]]
  890. required: true
  891. empty: false
  892. - variable: opendnsPassword
  893. label: OpenDNS Password
  894. description: OpenDNS Password.
  895. schema:
  896. type: string
  897. show_if: [["provider", "=", "opendns"]]
  898. required: true
  899. private: true
  900. empty: false
  901. - variable: opendnsProviderIP
  902. label: OpenDNS Provider IP
  903. description: OpenDNS Provider IP.
  904. schema:
  905. type: boolean
  906. show_if: [["provider", "=", "opendns"]]
  907. default: false
  908. # OVH
  909. - variable: ovhMode
  910. label: OVH Mode
  911. description: OVH Mode.
  912. schema:
  913. type: string
  914. show_if: [["provider", "=", "ovh"]]
  915. default: dynamic
  916. required: true
  917. enum:
  918. - value: dynamic
  919. description: Dynamic
  920. - value: api
  921. description: API
  922. - variable: ovhUsername
  923. label: OVH Username
  924. description: OVH Username.
  925. schema:
  926. type: string
  927. show_if: [["provider", "=", "ovh"]]
  928. - variable: ovhPassword
  929. label: OVH Password
  930. description: OVH Password.
  931. schema:
  932. type: string
  933. private: true
  934. show_if: [["provider", "=", "ovh"]]
  935. - variable: ovhApiEndpoint
  936. label: OVH API Endpoint
  937. description: OVH API Endpoint.
  938. schema:
  939. type: string
  940. show_if: [["provider", "=", "ovh"]]
  941. default: ovh-eu
  942. - variable: ovhAppKey
  943. label: OVH Application Key
  944. description: OVH Application Key.
  945. schema:
  946. type: string
  947. private: true
  948. show_if: [["provider", "=", "ovh"]]
  949. - variable: ovhAppSecret
  950. label: OVH Application Secret
  951. description: OVH Application Secret.
  952. schema:
  953. type: string
  954. private: true
  955. show_if: [["provider", "=", "ovh"]]
  956. - variable: ovhConsumerKey
  957. label: OVH Consumer Key
  958. description: OVH Consumer Key.
  959. schema:
  960. type: string
  961. private: true
  962. show_if: [["provider", "=", "ovh"]]
  963. - variable: ovhProviderIP
  964. label: OVH Provider IP
  965. description: OVH Provider IP.
  966. schema:
  967. type: boolean
  968. show_if: [["provider", "=", "ovh"]]
  969. default: false
  970. # Porkbun
  971. - variable: porkbunApiKey
  972. label: Porkbun API Key
  973. description: Porkbun API Key.
  974. schema:
  975. type: string
  976. show_if: [["provider", "=", "porkbun"]]
  977. required: true
  978. private: true
  979. empty: false
  980. - variable: porkbunSecretApiKey
  981. label: Porkbun Secret API Key
  982. description: Porkbun Secret API Key.
  983. schema:
  984. type: string
  985. show_if: [["provider", "=", "porkbun"]]
  986. required: true
  987. private: true
  988. empty: false
  989. - variable: porkbunTtl
  990. label: Porkbun TTL
  991. description: Porkbun TTL.
  992. schema:
  993. type: int
  994. show_if: [["provider", "=", "porkbun"]]
  995. default: 3600
  996. # Selfhost.de
  997. - variable: selfhostdeUsername
  998. label: Selfhost.de Username
  999. description: Selfhost.de Username.
  1000. schema:
  1001. type: string
  1002. show_if: [["provider", "=", "selfhost.de"]]
  1003. required: true
  1004. empty: false
  1005. - variable: selfhostdePassword
  1006. label: Selfhost.de Password
  1007. description: Selfhost.de Password.
  1008. schema:
  1009. type: string
  1010. show_if: [["provider", "=", "selfhost.de"]]
  1011. required: true
  1012. private: true
  1013. empty: false
  1014. - variable: selfhostdeProviderIP
  1015. label: Selfhost.de Provider IP
  1016. description: Selfhost.de Provider IP.
  1017. schema:
  1018. type: boolean
  1019. show_if: [["provider", "=", "selfhost.de"]]
  1020. default: false
  1021. # Servercow
  1022. - variable: servercowUsername
  1023. label: Servercow Username
  1024. description: Servercow Username.
  1025. schema:
  1026. type: string
  1027. show_if: [["provider", "=", "servercow"]]
  1028. required: true
  1029. empty: false
  1030. - variable: servercowPassword
  1031. label: Servercow Password
  1032. description: Servercow Password.
  1033. schema:
  1034. type: string
  1035. show_if: [["provider", "=", "servercow"]]
  1036. required: true
  1037. private: true
  1038. empty: false
  1039. - variable: servercowTtl
  1040. label: Servercow TTL
  1041. description: Servercow TTL.
  1042. schema:
  1043. type: int
  1044. show_if: [["provider", "=", "servercow"]]
  1045. default: 120
  1046. - variable: servercowProviderIP
  1047. label: Servercow Provider IP
  1048. description: Servercow Provider IP.
  1049. schema:
  1050. type: boolean
  1051. show_if: [["provider", "=", "servercow"]]
  1052. default: false
  1053. # Spdyn.de
  1054. - variable: spdynToken
  1055. label: Spdyn.de Token
  1056. description: Spdyn.de Token.
  1057. schema:
  1058. type: string
  1059. show_if: [["provider", "=", "spdyn"]]
  1060. required: true
  1061. private: true
  1062. empty: false
  1063. - variable: spdynUsername
  1064. label: Spdyn.de Username
  1065. description: Spdyn.de Username.
  1066. schema:
  1067. type: string
  1068. show_if: [["provider", "=", "spdyn"]]
  1069. required: true
  1070. empty: false
  1071. - variable: spdynPassword
  1072. label: Spdyn.de Password
  1073. description: Spdyn.de Password.
  1074. schema:
  1075. type: string
  1076. show_if: [["provider", "=", "spdyn"]]
  1077. required: true
  1078. private: true
  1079. empty: false
  1080. - variable: spdynProviderIP
  1081. label: Spdyn.de Provider IP
  1082. description: Spdyn.de Provider IP.
  1083. schema:
  1084. type: boolean
  1085. show_if: [["provider", "=", "spdyn"]]
  1086. default: false
  1087. # Strato
  1088. - variable: stratoPassword
  1089. label: Strato Password
  1090. description: Strato Password.
  1091. schema:
  1092. type: string
  1093. show_if: [["provider", "=", "strato"]]
  1094. required: true
  1095. private: true
  1096. empty: false
  1097. - variable: stratoProviderIP
  1098. label: Strato Provider IP
  1099. description: Strato Provider IP.
  1100. schema:
  1101. type: boolean
  1102. show_if: [["provider", "=", "strato"]]
  1103. default: false
  1104. # Variomedia
  1105. - variable: variomediaPassword
  1106. label: Variomedia Password
  1107. description: Variomedia Password.
  1108. schema:
  1109. type: string
  1110. show_if: [["provider", "=", "variomedia"]]
  1111. required: true
  1112. private: true
  1113. empty: false
  1114. - variable: variomediaEmail
  1115. label: Variomedia Email
  1116. description: Variomedia Email.
  1117. schema:
  1118. type: string
  1119. show_if: [["provider", "=", "variomedia"]]
  1120. required: true
  1121. empty: false
  1122. - variable: variomediaProviderIP
  1123. label: Variomedia Provider IP
  1124. description: Variomedia Provider IP.
  1125. schema:
  1126. type: boolean
  1127. show_if: [["provider", "=", "variomedia"]]
  1128. default: false
  1129. # ZoneEdit
  1130. - variable: zoneeditUsername
  1131. label: ZoneEdit Username
  1132. description: ZoneEdit Username.
  1133. schema:
  1134. type: string
  1135. show_if: [["provider", "=", "zoneedit"]]
  1136. required: true
  1137. empty: false
  1138. - variable: zoneeditToken
  1139. label: ZoneEdit Token
  1140. description: ZoneEdit Token.
  1141. schema:
  1142. type: string
  1143. show_if: [["provider", "=", "zoneedit"]]
  1144. required: true
  1145. private: true
  1146. empty: false
  1147. - variable: period
  1148. label: Update Period
  1149. description: |
  1150. Default period of IP address check, following this format:</br>
  1151. 5m = 5 minutes</br>
  1152. 1h = 1 hour</br>
  1153. 1h30m = 1 hour 30 minutes
  1154. schema:
  1155. type: string
  1156. default: 5m
  1157. required: true
  1158. - variable: updateCooldownPeriod
  1159. label: Update Cooldown Period
  1160. description: |
  1161. Duration to cooldown between updates for each record.
  1162. This is useful to avoid being rate limited or banned,
  1163. following this format:</br>
  1164. 5m = 5 minutes</br>
  1165. 1h = 1 hour</br>
  1166. 1h30m = 1 hour 30 minutes
  1167. schema:
  1168. type: string
  1169. default: 5m
  1170. required: true
  1171. - variable: backupPeriod
  1172. label: Backup Period
  1173. description: |
  1174. Set to a period to enable zip backups of data/config.json and
  1175. data/updates.json in a zip file following this format:</br>
  1176. 0 = disabled</br>
  1177. 10h = 10 hours</br>
  1178. 20h30m = 20 hours 30 minutes
  1179. schema:
  1180. type: string
  1181. default: 24h
  1182. required: true
  1183. - variable: httpTimeout
  1184. label: HTTP Timeout
  1185. description: |
  1186. Default timeout for HTTP requests, following this format:</br>
  1187. 10s = 10 seconds</br>
  1188. 1m = 1 minute</br>
  1189. 1m30s = 1 minute 30 seconds
  1190. schema:
  1191. type: string
  1192. default: 10s
  1193. required: true
  1194. - variable: publicIpDnsTimeout
  1195. label: Public IP DNS Timeout
  1196. description: |
  1197. Public IP DNS query timeout, following this format:</br>
  1198. 3s = 3 seconds</br>
  1199. 1m = 1 minute</br>
  1200. 1m30s = 1 minute 30 seconds
  1201. schema:
  1202. type: string
  1203. default: 3s
  1204. required: true
  1205. - variable: shoutrrrAddresses
  1206. label: Shoutrrr Addresses
  1207. description: |
  1208. List of Shoutrrr addresses to send notifications to. </br>
  1209. See https://containrrr.dev/shoutrrr/0.7/services/overview/ for more information.
  1210. schema:
  1211. type: list
  1212. default: []
  1213. items:
  1214. - variable: address
  1215. label: Address
  1216. schema:
  1217. type: string
  1218. required: true
  1219. empty: false
  1220. - variable: publicIpDnsProviders
  1221. label: Public IP DNS Providers
  1222. description: Providers to obtain the public IP address (IPv4 and/or IPv6)
  1223. schema:
  1224. type: list
  1225. min: 1
  1226. required: true
  1227. empty: false
  1228. default: [{"provider": "all", "placeholder": "placeholder"}]
  1229. items:
  1230. - variable: publicIpDnsProviderEntry
  1231. label: Public IP DNS Provider Entry
  1232. schema:
  1233. type: dict
  1234. attrs:
  1235. - variable: provider
  1236. label: Provider
  1237. schema:
  1238. type: string
  1239. required: true
  1240. enum:
  1241. - value: all
  1242. description: All providers
  1243. - value: opendns
  1244. description: opendns
  1245. - value: cloudflare
  1246. description: Cloudflare
  1247. # Workaround for a UI bug that is fixed in the next release
  1248. # (Single items in a dict inside a list was getting converted to a list of strings)
  1249. - variable: placeholder
  1250. label: placeholder
  1251. schema:
  1252. type: string
  1253. default: placeholder
  1254. required: true
  1255. hidden: true
  1256. - variable: publicIpHttpProviders
  1257. label: Public IP HTTP Providers
  1258. description: Providers to obtain the public IP address (IPv4 and/or IPv6)
  1259. schema:
  1260. type: list
  1261. min: 1
  1262. required: true
  1263. empty: false
  1264. default: [{"provider": "all", "custom": ""}]
  1265. items:
  1266. - variable: publicIpHttpProviderEntry
  1267. label: Public IP HTTP Provider Entry
  1268. schema:
  1269. type: dict
  1270. attrs:
  1271. - variable: provider
  1272. label: Provider
  1273. schema:
  1274. type: string
  1275. required: true
  1276. enum:
  1277. - value: all
  1278. description: All providers
  1279. - value: ipify
  1280. description: ipify
  1281. - value: ifconfig
  1282. description: ifconfig
  1283. - value: ipinfo
  1284. description: ipinfo
  1285. - value: google
  1286. description: google
  1287. - value: spdyn
  1288. description: spdyn
  1289. - value: ipleak
  1290. description: ipleak
  1291. - value: custom
  1292. description: Custom Provider
  1293. - variable: custom
  1294. label: Custom Value
  1295. schema:
  1296. type: string
  1297. show_if: [["provider", "=", "custom"]]
  1298. default: ""
  1299. required: true
  1300. - variable: publicIpv4HttpProviders
  1301. label: Public IPv4 HTTP Providers
  1302. description: Providers to obtain the public IPv4 address
  1303. schema:
  1304. type: list
  1305. min: 1
  1306. required: true
  1307. empty: false
  1308. default: [{"provider": "all", "custom": ""}]
  1309. items:
  1310. - variable: publicIpv4HttpProviderEntry
  1311. label: Public IPv4 HTTP Provider Entry
  1312. schema:
  1313. type: dict
  1314. attrs:
  1315. - variable: provider
  1316. label: Provider
  1317. schema:
  1318. type: string
  1319. required: true
  1320. enum:
  1321. - value: all
  1322. description: All providers
  1323. - value: ipleak
  1324. description: iplaek
  1325. - value: ipify
  1326. description: ipify
  1327. - value: custom
  1328. description: Custom Provider
  1329. - variable: custom
  1330. label: Custom Value
  1331. schema:
  1332. type: string
  1333. show_if: [["provider", "=", "custom"]]
  1334. default: ""
  1335. required: true
  1336. - variable: publicIpv6HttpProviders
  1337. label: Public IPv6 HTTP Providers
  1338. description: Providers to obtain the public IPv6 address
  1339. schema:
  1340. type: list
  1341. min: 1
  1342. required: true
  1343. empty: false
  1344. default: [{"provider": "all", "custom": ""}]
  1345. items:
  1346. - variable: publicIpv6HttpProviderEntry
  1347. label: Public IPv6 HTTP Provider Entry
  1348. schema:
  1349. type: dict
  1350. attrs:
  1351. - variable: provider
  1352. label: Provider
  1353. schema:
  1354. type: string
  1355. required: true
  1356. enum:
  1357. - value: all
  1358. description: All providers
  1359. - value: ipleak
  1360. description: ipleak
  1361. - value: ipify
  1362. description: ipify
  1363. - value: custom
  1364. description: Custom Provider
  1365. - variable: custom
  1366. label: Custom Value
  1367. schema:
  1368. type: string
  1369. show_if: [["provider", "=", "custom"]]
  1370. default: ""
  1371. required: true
  1372. - variable: publicIpFetchers
  1373. label: Public IP Fetchers
  1374. description: Fetcher types to obtain the public IP address
  1375. schema:
  1376. type: list
  1377. min: 1
  1378. required: true
  1379. empty: false
  1380. default: [{"provider": "all", "placeholder": "placeholder"}]
  1381. items:
  1382. - variable: publicIpFetcherEntry
  1383. label: Public IP Fetcher Entry
  1384. schema:
  1385. type: dict
  1386. attrs:
  1387. - variable: provider
  1388. label: Fetcher
  1389. schema:
  1390. type: string
  1391. required: true
  1392. enum:
  1393. - value: all
  1394. description: All providers
  1395. - value: http
  1396. description: HTTP
  1397. - value: dns
  1398. description: DNS
  1399. # Workaround for a UI bug that is fixed in the next release
  1400. # (Single items in a dict inside a list was getting converted to a list of strings)
  1401. - variable: placeholder
  1402. label: placeholder
  1403. schema:
  1404. type: string
  1405. default: placeholder
  1406. required: true
  1407. hidden: true
  1408. - variable: additionalEnvs
  1409. label: Additional Environment Variables
  1410. description: Configure additional environment variables for DDNS Updater.
  1411. schema:
  1412. type: list
  1413. default: []
  1414. items:
  1415. - variable: env
  1416. label: Environment Variable
  1417. schema:
  1418. type: dict
  1419. attrs:
  1420. - variable: name
  1421. label: Name
  1422. schema:
  1423. type: string
  1424. required: true
  1425. - variable: value
  1426. label: Value
  1427. schema:
  1428. type: string
  1429. required: true
  1430. - variable: ddnsRunAs
  1431. label: ""
  1432. group: User and Group Configuration
  1433. schema:
  1434. type: dict
  1435. attrs:
  1436. - variable: user
  1437. label: User ID
  1438. description: The user id that DDNS Updater will run as.
  1439. schema:
  1440. type: int
  1441. min: 2
  1442. default: 568
  1443. required: true
  1444. - variable: group
  1445. label: Group ID
  1446. description: The group id that DDNS Updater will run as.
  1447. schema:
  1448. type: int
  1449. min: 2
  1450. default: 568
  1451. required: true
  1452. - variable: ddnsNetwork
  1453. label: ""
  1454. group: Network Configuration
  1455. schema:
  1456. type: dict
  1457. attrs:
  1458. - variable: webPort
  1459. label: Web Port
  1460. description: The port for the DDNS Updater Web UI.
  1461. schema:
  1462. type: int
  1463. default: 30007
  1464. min: 9000
  1465. max: 65535
  1466. required: true
  1467. - variable: hostNetwork
  1468. label: Host Network
  1469. description: |
  1470. Bind to the host network. It's recommended to keep this disabled.</br>
  1471. schema:
  1472. type: boolean
  1473. default: false
  1474. - variable: ddnsStorage
  1475. label: ""
  1476. group: Storage Configuration
  1477. schema:
  1478. type: dict
  1479. attrs:
  1480. - variable: data
  1481. label: DDNS Updater Data Storage
  1482. description: The path to store DDNS Updater Data.
  1483. schema:
  1484. type: dict
  1485. attrs:
  1486. - variable: type
  1487. label: Type
  1488. description: |
  1489. ixVolume: Is dataset created automatically by the system.</br>
  1490. Host Path: Is a path that already exists on the system.
  1491. schema:
  1492. type: string
  1493. required: true
  1494. immutable: true
  1495. default: "ixVolume"
  1496. enum:
  1497. - value: "hostPath"
  1498. description: Host Path (Path that already exists on the system)
  1499. - value: "ixVolume"
  1500. description: ixVolume (Dataset created automatically by the system)
  1501. - variable: datasetName
  1502. label: Dataset Name
  1503. schema:
  1504. type: string
  1505. show_if: [["type", "=", "ixVolume"]]
  1506. required: true
  1507. hidden: true
  1508. immutable: true
  1509. default: "data"
  1510. $ref:
  1511. - "normalize/ixVolume"
  1512. - variable: hostPath
  1513. label: Host Path
  1514. schema:
  1515. type: hostpath
  1516. show_if: [["type", "=", "hostPath"]]
  1517. required: true
  1518. - variable: resources
  1519. group: Resources Configuration
  1520. label: ""
  1521. schema:
  1522. type: dict
  1523. attrs:
  1524. - variable: limits
  1525. label: Limits
  1526. schema:
  1527. type: dict
  1528. attrs:
  1529. - variable: cpu
  1530. label: CPU
  1531. description: CPU limit for DDNS Updater.
  1532. schema:
  1533. type: string
  1534. max_length: 6
  1535. valid_chars: '^(0\.[1-9]|[1-9][0-9]*)(\.[0-9]|m?)$'
  1536. valid_chars_error: |
  1537. Valid CPU limit formats are</br>
  1538. - Plain Integer - eg. 1</br>
  1539. - Float - eg. 0.5</br>
  1540. - Milicpu - eg. 500m
  1541. default: "4000m"
  1542. required: true
  1543. - variable: memory
  1544. label: Memory
  1545. description: Memory limit for DDNS Updater.
  1546. schema:
  1547. type: string
  1548. max_length: 12
  1549. valid_chars: '^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$'
  1550. valid_chars_error: |
  1551. Valid Memory limit formats are</br>
  1552. - Suffixed with E/P/T/G/M/K - eg. 1G</br>
  1553. - Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>
  1554. - Plain Integer in bytes - eg. 1024</br>
  1555. - Exponent - eg. 134e6
  1556. default: "8Gi"
  1557. required: true