app_versions.json 78 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028
  1. {
  2. "1.2.17": {
  3. "healthy": true,
  4. "supported": false,
  5. "healthy_error": null,
  6. "location": "/__w/charts/charts/community/pgadmin/1.2.17",
  7. "last_update": "2025-03-06 08:26:26",
  8. "required_features": [
  9. "normalize/acl",
  10. "normalize/ixVolume",
  11. "definitions/certificate"
  12. ],
  13. "human_version": "9.1_1.2.17",
  14. "version": "1.2.17",
  15. "chart_metadata": {
  16. "name": "pgadmin",
  17. "description": "pgAdmin is the most popular and feature rich Open Source administration and development platform for PostgreSQL",
  18. "annotations": {
  19. "title": "pgAdmin"
  20. },
  21. "type": "application",
  22. "version": "1.2.17",
  23. "apiVersion": "v2",
  24. "appVersion": "9.1",
  25. "kubeVersion": ">=1.16.0-0",
  26. "maintainers": [
  27. {
  28. "name": "truenas",
  29. "url": "https://www.truenas.com/",
  30. "email": "dev@ixsystems.com"
  31. }
  32. ],
  33. "dependencies": [
  34. {
  35. "name": "common",
  36. "repository": "file://../../../common",
  37. "version": "1.2.9"
  38. }
  39. ],
  40. "home": "https://www.pgadmin.org/",
  41. "icon": "https://media.sys.truenas.net/apps/pgadmin/icons/icon.png",
  42. "sources": [
  43. "https://hub.docker.com/r/dpage/pgadmin4",
  44. "https://github.com/truenas/charts/tree/master/library/ix-dev/community/pgadmin",
  45. "https://www.pgadmin.org/"
  46. ],
  47. "keywords": [
  48. "database",
  49. "management"
  50. ]
  51. },
  52. "app_metadata": {
  53. "runAsContext": [
  54. {
  55. "userName": "pgadmin",
  56. "groupName": "pgadmin",
  57. "gid": 5050,
  58. "uid": 5050,
  59. "description": "pgAdmin runs as a non-root user."
  60. }
  61. ],
  62. "capabilities": [
  63. {
  64. "name": "NET_BIND_SERVICE",
  65. "description": "pgAdmin requires this ability to bind to privileged ports."
  66. }
  67. ],
  68. "hostMounts": []
  69. },
  70. "schema": {
  71. "groups": [
  72. {
  73. "name": "pgAdmin Configuration",
  74. "description": "Configure pgAdmin"
  75. },
  76. {
  77. "name": "Network Configuration",
  78. "description": "Configure Network for pgAdmin"
  79. },
  80. {
  81. "name": "Storage Configuration",
  82. "description": "Configure Storage for pgAdmin"
  83. },
  84. {
  85. "name": "Resources Configuration",
  86. "description": "Configure Resources for pgAdmin"
  87. }
  88. ],
  89. "portals": {
  90. "web_portal": {
  91. "protocols": [
  92. "$kubernetes-resource_configmap_portal_protocol"
  93. ],
  94. "host": [
  95. "$kubernetes-resource_configmap_portal_host"
  96. ],
  97. "ports": [
  98. "$kubernetes-resource_configmap_portal_port"
  99. ],
  100. "path": "$kubernetes-resource_configmap_portal_path"
  101. }
  102. },
  103. "questions": [
  104. {
  105. "variable": "pgadminConfig",
  106. "label": "",
  107. "group": "pgAdmin Configuration",
  108. "schema": {
  109. "type": "dict",
  110. "attrs": [
  111. {
  112. "variable": "adminEmail",
  113. "label": "Admin Email",
  114. "description": "The email address for the pgAdmin admin user.",
  115. "schema": {
  116. "type": "string",
  117. "required": true,
  118. "default": ""
  119. }
  120. },
  121. {
  122. "variable": "adminPassword",
  123. "label": "Admin Password",
  124. "description": "The password for the pgAdmin admin user.",
  125. "schema": {
  126. "type": "string",
  127. "required": true,
  128. "private": true,
  129. "default": ""
  130. }
  131. },
  132. {
  133. "variable": "additionalEnvs",
  134. "label": "Additional Environment Variables",
  135. "description": "Configure additional environment variables for pgAdmin.",
  136. "schema": {
  137. "type": "list",
  138. "default": [],
  139. "items": [
  140. {
  141. "variable": "env",
  142. "label": "Environment Variable",
  143. "schema": {
  144. "type": "dict",
  145. "attrs": [
  146. {
  147. "variable": "name",
  148. "label": "Name",
  149. "schema": {
  150. "type": "string",
  151. "required": true
  152. }
  153. },
  154. {
  155. "variable": "value",
  156. "label": "Value",
  157. "schema": {
  158. "type": "string",
  159. "required": true
  160. }
  161. }
  162. ]
  163. }
  164. }
  165. ]
  166. }
  167. }
  168. ]
  169. }
  170. },
  171. {
  172. "variable": "pgadminNetwork",
  173. "label": "",
  174. "group": "Network Configuration",
  175. "schema": {
  176. "type": "dict",
  177. "attrs": [
  178. {
  179. "variable": "webPort",
  180. "label": "Web Port",
  181. "description": "The port for the pgAdmin Web UI.",
  182. "schema": {
  183. "type": "int",
  184. "default": 30056,
  185. "min": 9000,
  186. "max": 65535,
  187. "required": true
  188. }
  189. },
  190. {
  191. "variable": "hostNetwork",
  192. "label": "Host Network",
  193. "description": "Bind to the host network. It's recommended to keep this disabled.</br>\n",
  194. "schema": {
  195. "type": "boolean",
  196. "default": false
  197. }
  198. },
  199. {
  200. "variable": "certificateID",
  201. "label": "Certificate",
  202. "description": "The certificate to use for pgAdmin",
  203. "schema": {
  204. "type": "int",
  205. "null": true,
  206. "$ref": [
  207. "definitions/certificate"
  208. ],
  209. "enum": [
  210. {
  211. "value": null,
  212. "description": "No Certificate"
  213. }
  214. ],
  215. "default": null
  216. }
  217. }
  218. ]
  219. }
  220. },
  221. {
  222. "variable": "pgadminStorage",
  223. "label": "",
  224. "group": "Storage Configuration",
  225. "schema": {
  226. "type": "dict",
  227. "attrs": [
  228. {
  229. "variable": "config",
  230. "label": "pgAdmin Config Storage",
  231. "description": "The path to store pgAdmin Configuration.",
  232. "schema": {
  233. "type": "dict",
  234. "attrs": [
  235. {
  236. "variable": "type",
  237. "label": "Type",
  238. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.\n",
  239. "schema": {
  240. "type": "string",
  241. "required": true,
  242. "immutable": true,
  243. "default": "ixVolume",
  244. "enum": [
  245. {
  246. "value": "hostPath",
  247. "description": "Host Path (Path that already exists on the system)"
  248. },
  249. {
  250. "value": "ixVolume",
  251. "description": "ixVolume (Dataset created automatically by the system)"
  252. }
  253. ]
  254. }
  255. },
  256. {
  257. "variable": "ixVolumeConfig",
  258. "label": "ixVolume Configuration",
  259. "description": "The configuration for the ixVolume dataset.",
  260. "schema": {
  261. "type": "dict",
  262. "show_if": [
  263. [
  264. "type",
  265. "=",
  266. "ixVolume"
  267. ]
  268. ],
  269. "$ref": [
  270. "normalize/ixVolume"
  271. ],
  272. "attrs": [
  273. {
  274. "variable": "aclEnable",
  275. "label": "Enable ACL",
  276. "description": "Enable ACL for the dataset.",
  277. "schema": {
  278. "type": "boolean",
  279. "default": false
  280. }
  281. },
  282. {
  283. "variable": "datasetName",
  284. "label": "Dataset Name",
  285. "description": "The name of the dataset to use for storage.",
  286. "schema": {
  287. "type": "string",
  288. "required": true,
  289. "immutable": true,
  290. "hidden": true,
  291. "default": "config"
  292. }
  293. },
  294. {
  295. "variable": "aclEntries",
  296. "label": "ACL Configuration",
  297. "schema": {
  298. "type": "dict",
  299. "show_if": [
  300. [
  301. "aclEnable",
  302. "=",
  303. true
  304. ]
  305. ],
  306. "attrs": [
  307. {
  308. "variable": "path",
  309. "label": "Path",
  310. "description": "Path to perform ACL",
  311. "schema": {
  312. "type": "string",
  313. "hidden": true
  314. }
  315. },
  316. {
  317. "variable": "entries",
  318. "label": "ACL Entries",
  319. "description": "ACL Entries",
  320. "schema": {
  321. "type": "list",
  322. "items": [
  323. {
  324. "variable": "aclEntry",
  325. "label": "ACL Entry",
  326. "schema": {
  327. "type": "dict",
  328. "attrs": [
  329. {
  330. "variable": "id_type",
  331. "label": "ID Type",
  332. "schema": {
  333. "type": "string",
  334. "enum": [
  335. {
  336. "value": "USER",
  337. "description": "Entry is for a USER"
  338. },
  339. {
  340. "value": "GROUP",
  341. "description": "Entry is for a GROUP"
  342. }
  343. ],
  344. "default": "USER"
  345. }
  346. },
  347. {
  348. "variable": "id",
  349. "label": "ID",
  350. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  351. "schema": {
  352. "type": "int",
  353. "required": true,
  354. "min": 0
  355. }
  356. },
  357. {
  358. "variable": "access",
  359. "label": "Access",
  360. "schema": {
  361. "type": "string",
  362. "enum": [
  363. {
  364. "value": "READ",
  365. "description": "Read Access"
  366. },
  367. {
  368. "value": "MODIFY",
  369. "description": "Modify Access"
  370. },
  371. {
  372. "value": "FULL_CONTROL",
  373. "description": "FULL_CONTROL Access"
  374. }
  375. ]
  376. }
  377. }
  378. ]
  379. }
  380. }
  381. ]
  382. }
  383. }
  384. ]
  385. }
  386. }
  387. ]
  388. }
  389. },
  390. {
  391. "variable": "hostPathConfig",
  392. "label": "Host Path Configuration",
  393. "schema": {
  394. "type": "dict",
  395. "show_if": [
  396. [
  397. "type",
  398. "=",
  399. "hostPath"
  400. ]
  401. ],
  402. "attrs": [
  403. {
  404. "variable": "aclEnable",
  405. "label": "Enable ACL",
  406. "description": "Enable ACL for the dataset.",
  407. "schema": {
  408. "type": "boolean",
  409. "default": false
  410. }
  411. },
  412. {
  413. "variable": "acl",
  414. "label": "ACL Configuration",
  415. "schema": {
  416. "type": "dict",
  417. "show_if": [
  418. [
  419. "aclEnable",
  420. "=",
  421. true
  422. ]
  423. ],
  424. "attrs": [
  425. {
  426. "variable": "path",
  427. "label": "Host Path",
  428. "description": "Host Path to perform ACL",
  429. "schema": {
  430. "type": "hostpath",
  431. "required": true,
  432. "empty": false
  433. }
  434. },
  435. {
  436. "variable": "entries",
  437. "label": "ACL Entries",
  438. "description": "ACL Entries",
  439. "schema": {
  440. "type": "list",
  441. "items": [
  442. {
  443. "variable": "aclEntry",
  444. "label": "ACL Entry",
  445. "schema": {
  446. "type": "dict",
  447. "attrs": [
  448. {
  449. "variable": "id_type",
  450. "label": "ID Type",
  451. "schema": {
  452. "type": "string",
  453. "enum": [
  454. {
  455. "value": "USER",
  456. "description": "Entry is for a USER"
  457. },
  458. {
  459. "value": "GROUP",
  460. "description": "Entry is for a GROUP"
  461. }
  462. ],
  463. "default": "USER"
  464. }
  465. },
  466. {
  467. "variable": "id",
  468. "label": "ID",
  469. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  470. "schema": {
  471. "type": "int",
  472. "required": true,
  473. "min": 0
  474. }
  475. },
  476. {
  477. "variable": "access",
  478. "label": "Access",
  479. "schema": {
  480. "type": "string",
  481. "enum": [
  482. {
  483. "value": "READ",
  484. "description": "Read Access"
  485. },
  486. {
  487. "value": "MODIFY",
  488. "description": "Modify Access"
  489. },
  490. {
  491. "value": "FULL_CONTROL",
  492. "description": "FULL_CONTROL Access"
  493. }
  494. ]
  495. }
  496. }
  497. ]
  498. }
  499. }
  500. ]
  501. }
  502. },
  503. {
  504. "variable": "options",
  505. "label": "ACL Options",
  506. "schema": {
  507. "type": "dict",
  508. "attrs": [
  509. {
  510. "variable": "force",
  511. "label": "Force Flag",
  512. "description": "Enabling `Force` applies ACL even if the path has existing data",
  513. "schema": {
  514. "type": "boolean",
  515. "default": false
  516. }
  517. }
  518. ]
  519. }
  520. }
  521. ],
  522. "$ref": [
  523. "normalize/acl"
  524. ]
  525. }
  526. },
  527. {
  528. "variable": "hostPath",
  529. "label": "Host Path",
  530. "description": "The host path to use for storage.",
  531. "schema": {
  532. "type": "hostpath",
  533. "show_if": [
  534. [
  535. "aclEnable",
  536. "=",
  537. false
  538. ]
  539. ],
  540. "required": true
  541. }
  542. }
  543. ]
  544. }
  545. }
  546. ]
  547. }
  548. },
  549. {
  550. "variable": "additionalStorages",
  551. "label": "Additional Storage",
  552. "description": "Additional storage for pgAdmin.",
  553. "schema": {
  554. "type": "list",
  555. "default": [],
  556. "items": [
  557. {
  558. "variable": "storageEntry",
  559. "label": "Storage Entry",
  560. "schema": {
  561. "type": "dict",
  562. "attrs": [
  563. {
  564. "variable": "type",
  565. "label": "Type",
  566. "description": "ixVolume: Is dataset created automatically by the system.</br>\nHost Path: Is a path that already exists on the system.</br>\nSMB Share: Is a SMB share that is mounted to a persistent volume claim.\n",
  567. "schema": {
  568. "type": "string",
  569. "required": true,
  570. "default": "ixVolume",
  571. "immutable": true,
  572. "enum": [
  573. {
  574. "value": "hostPath",
  575. "description": "Host Path (Path that already exists on the system)"
  576. },
  577. {
  578. "value": "ixVolume",
  579. "description": "ixVolume (Dataset created automatically by the system)"
  580. },
  581. {
  582. "value": "smb-pv-pvc",
  583. "description": "SMB Share (Mounts a persistent volume claim to a SMB share)"
  584. }
  585. ]
  586. }
  587. },
  588. {
  589. "variable": "readOnly",
  590. "label": "Read Only",
  591. "description": "Mount the volume as read only.",
  592. "schema": {
  593. "type": "boolean",
  594. "default": false
  595. }
  596. },
  597. {
  598. "variable": "mountPath",
  599. "label": "Mount Path",
  600. "description": "The path inside the container to mount the storage.",
  601. "schema": {
  602. "type": "path",
  603. "required": true
  604. }
  605. },
  606. {
  607. "variable": "hostPathConfig",
  608. "label": "Host Path Configuration",
  609. "schema": {
  610. "type": "dict",
  611. "show_if": [
  612. [
  613. "type",
  614. "=",
  615. "hostPath"
  616. ]
  617. ],
  618. "attrs": [
  619. {
  620. "variable": "aclEnable",
  621. "label": "Enable ACL",
  622. "description": "Enable ACL for the dataset.",
  623. "schema": {
  624. "type": "boolean",
  625. "default": false
  626. }
  627. },
  628. {
  629. "variable": "acl",
  630. "label": "ACL Configuration",
  631. "schema": {
  632. "type": "dict",
  633. "show_if": [
  634. [
  635. "aclEnable",
  636. "=",
  637. true
  638. ]
  639. ],
  640. "attrs": [
  641. {
  642. "variable": "path",
  643. "label": "Host Path",
  644. "description": "Host Path to perform ACL",
  645. "schema": {
  646. "type": "hostpath",
  647. "required": true,
  648. "empty": false
  649. }
  650. },
  651. {
  652. "variable": "entries",
  653. "label": "ACL Entries",
  654. "description": "ACL Entries",
  655. "schema": {
  656. "type": "list",
  657. "items": [
  658. {
  659. "variable": "aclEntry",
  660. "label": "ACL Entry",
  661. "schema": {
  662. "type": "dict",
  663. "attrs": [
  664. {
  665. "variable": "id_type",
  666. "label": "ID Type",
  667. "schema": {
  668. "type": "string",
  669. "enum": [
  670. {
  671. "value": "USER",
  672. "description": "Entry is for a USER"
  673. },
  674. {
  675. "value": "GROUP",
  676. "description": "Entry is for a GROUP"
  677. }
  678. ],
  679. "default": "USER"
  680. }
  681. },
  682. {
  683. "variable": "id",
  684. "label": "ID",
  685. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  686. "schema": {
  687. "type": "int",
  688. "required": true,
  689. "min": 0
  690. }
  691. },
  692. {
  693. "variable": "access",
  694. "label": "Access",
  695. "schema": {
  696. "type": "string",
  697. "enum": [
  698. {
  699. "value": "READ",
  700. "description": "Read Access"
  701. },
  702. {
  703. "value": "MODIFY",
  704. "description": "Modify Access"
  705. },
  706. {
  707. "value": "FULL_CONTROL",
  708. "description": "FULL_CONTROL Access"
  709. }
  710. ]
  711. }
  712. }
  713. ]
  714. }
  715. }
  716. ]
  717. }
  718. },
  719. {
  720. "variable": "options",
  721. "label": "ACL Options",
  722. "schema": {
  723. "type": "dict",
  724. "attrs": [
  725. {
  726. "variable": "force",
  727. "label": "Force Flag",
  728. "description": "Enabling `Force` applies ACL even if the path has existing data",
  729. "schema": {
  730. "type": "boolean",
  731. "default": false
  732. }
  733. }
  734. ]
  735. }
  736. }
  737. ],
  738. "$ref": [
  739. "normalize/acl"
  740. ]
  741. }
  742. },
  743. {
  744. "variable": "hostPath",
  745. "label": "Host Path",
  746. "description": "The host path to use for storage.",
  747. "schema": {
  748. "type": "hostpath",
  749. "show_if": [
  750. [
  751. "aclEnable",
  752. "=",
  753. false
  754. ]
  755. ],
  756. "required": true
  757. }
  758. }
  759. ]
  760. }
  761. },
  762. {
  763. "variable": "ixVolumeConfig",
  764. "label": "ixVolume Configuration",
  765. "description": "The configuration for the ixVolume dataset.",
  766. "schema": {
  767. "type": "dict",
  768. "show_if": [
  769. [
  770. "type",
  771. "=",
  772. "ixVolume"
  773. ]
  774. ],
  775. "$ref": [
  776. "normalize/ixVolume"
  777. ],
  778. "attrs": [
  779. {
  780. "variable": "aclEnable",
  781. "label": "Enable ACL",
  782. "description": "Enable ACL for the dataset.",
  783. "schema": {
  784. "type": "boolean",
  785. "default": false
  786. }
  787. },
  788. {
  789. "variable": "datasetName",
  790. "label": "Dataset Name",
  791. "description": "The name of the dataset to use for storage.",
  792. "schema": {
  793. "type": "string",
  794. "required": true,
  795. "immutable": true,
  796. "default": "storage_entry"
  797. }
  798. },
  799. {
  800. "variable": "aclEntries",
  801. "label": "ACL Configuration",
  802. "schema": {
  803. "type": "dict",
  804. "show_if": [
  805. [
  806. "aclEnable",
  807. "=",
  808. true
  809. ]
  810. ],
  811. "attrs": [
  812. {
  813. "variable": "path",
  814. "label": "Path",
  815. "description": "Path to perform ACL",
  816. "schema": {
  817. "type": "string",
  818. "hidden": true
  819. }
  820. },
  821. {
  822. "variable": "entries",
  823. "label": "ACL Entries",
  824. "description": "ACL Entries",
  825. "schema": {
  826. "type": "list",
  827. "items": [
  828. {
  829. "variable": "aclEntry",
  830. "label": "ACL Entry",
  831. "schema": {
  832. "type": "dict",
  833. "attrs": [
  834. {
  835. "variable": "id_type",
  836. "label": "ID Type",
  837. "schema": {
  838. "type": "string",
  839. "enum": [
  840. {
  841. "value": "USER",
  842. "description": "Entry is for a USER"
  843. },
  844. {
  845. "value": "GROUP",
  846. "description": "Entry is for a GROUP"
  847. }
  848. ],
  849. "default": "USER"
  850. }
  851. },
  852. {
  853. "variable": "id",
  854. "label": "ID",
  855. "description": "Make sure to check the ID value is correct and aligns with RunAs user context of the application",
  856. "schema": {
  857. "type": "int",
  858. "required": true,
  859. "min": 0
  860. }
  861. },
  862. {
  863. "variable": "access",
  864. "label": "Access",
  865. "schema": {
  866. "type": "string",
  867. "enum": [
  868. {
  869. "value": "READ",
  870. "description": "Read Access"
  871. },
  872. {
  873. "value": "MODIFY",
  874. "description": "Modify Access"
  875. },
  876. {
  877. "value": "FULL_CONTROL",
  878. "description": "FULL_CONTROL Access"
  879. }
  880. ]
  881. }
  882. }
  883. ]
  884. }
  885. }
  886. ]
  887. }
  888. }
  889. ]
  890. }
  891. }
  892. ]
  893. }
  894. },
  895. {
  896. "variable": "smbConfig",
  897. "label": "SMB Share Configuration",
  898. "description": "The configuration for the SMB Share.",
  899. "schema": {
  900. "type": "dict",
  901. "show_if": [
  902. [
  903. "type",
  904. "=",
  905. "smb-pv-pvc"
  906. ]
  907. ],
  908. "attrs": [
  909. {
  910. "variable": "server",
  911. "label": "Server",
  912. "description": "The server for the SMB share.",
  913. "schema": {
  914. "type": "string",
  915. "required": true
  916. }
  917. },
  918. {
  919. "variable": "share",
  920. "label": "Share",
  921. "description": "The share name for the SMB share.",
  922. "schema": {
  923. "type": "string",
  924. "required": true
  925. }
  926. },
  927. {
  928. "variable": "domain",
  929. "label": "Domain (Optional)",
  930. "description": "The domain for the SMB share.",
  931. "schema": {
  932. "type": "string"
  933. }
  934. },
  935. {
  936. "variable": "username",
  937. "label": "Username",
  938. "description": "The username for the SMB share.",
  939. "schema": {
  940. "type": "string",
  941. "required": true
  942. }
  943. },
  944. {
  945. "variable": "password",
  946. "label": "Password",
  947. "description": "The password for the SMB share.",
  948. "schema": {
  949. "type": "string",
  950. "required": true,
  951. "private": true
  952. }
  953. },
  954. {
  955. "variable": "size",
  956. "label": "Size (in Gi)",
  957. "description": "The size of the volume quota.",
  958. "schema": {
  959. "type": "int",
  960. "required": true,
  961. "min": 1,
  962. "default": 1
  963. }
  964. }
  965. ]
  966. }
  967. }
  968. ]
  969. }
  970. }
  971. ]
  972. }
  973. }
  974. ]
  975. }
  976. },
  977. {
  978. "variable": "resources",
  979. "group": "Resources Configuration",
  980. "label": "",
  981. "schema": {
  982. "type": "dict",
  983. "attrs": [
  984. {
  985. "variable": "limits",
  986. "label": "Limits",
  987. "schema": {
  988. "type": "dict",
  989. "attrs": [
  990. {
  991. "variable": "cpu",
  992. "label": "CPU",
  993. "description": "CPU limit for pgAdmin.",
  994. "schema": {
  995. "type": "string",
  996. "max_length": 6,
  997. "valid_chars": "^(0\\.[1-9]|[1-9][0-9]*)(\\.[0-9]|m?)$",
  998. "valid_chars_error": "Valid CPU limit formats are</br>\n- Plain Integer - eg. 1</br>\n- Float - eg. 0.5</br>\n- Milicpu - eg. 500m\n",
  999. "default": "4000m",
  1000. "required": true
  1001. }
  1002. },
  1003. {
  1004. "variable": "memory",
  1005. "label": "Memory",
  1006. "description": "Memory limit for pgAdmin.",
  1007. "schema": {
  1008. "type": "string",
  1009. "max_length": 12,
  1010. "valid_chars": "^[1-9][0-9]*([EPTGMK]i?|e[0-9]+)?$",
  1011. "valid_chars_error": "Valid Memory limit formats are</br>\n- Suffixed with E/P/T/G/M/K - eg. 1G</br>\n- Suffixed with Ei/Pi/Ti/Gi/Mi/Ki - eg. 1Gi</br>\n- Plain Integer in bytes - eg. 1024</br>\n- Exponent - eg. 134e6\n",
  1012. "default": "8Gi",
  1013. "required": true
  1014. }
  1015. }
  1016. ]
  1017. }
  1018. }
  1019. ]
  1020. }
  1021. }
  1022. ]
  1023. },
  1024. "app_readme": "<h1>pgAdmin</h1>\n<p><a href=\"https://github.com/pgadmin-org/pgadmin4\">pgAdmin</a> is the most popular and feature rich Open Source administration and development platform for PostgreSQL</p>\n<blockquote>\n<p>When application is installed, a container will be launched with <strong>root</strong> privileges.\nThis is required in order to apply the correct permissions to the <code>pgAdmin</code> directories.\nAfterward, the <code>pgAdmin</code> container will run as a <strong>non</strong>-root user (<code>5050</code>).\nAll mounted storage(s) will be <code>chown</code>ed only if the parent directory does not match the configured user.</p>\n</blockquote>",
  1025. "detailed_readme": "<h1>pgAdmin</h1>\n<p><a href=\"https://github.com/pgadmin-org/pgadmin4\">pgAdmin</a> is the most popular and feature rich Open Source administration and development platform for PostgreSQL</p>\n<blockquote>\n<p>When application is installed, a container will be launched with <strong>root</strong> privileges.\nThis is required in order to apply the correct permissions to the <code>pgAdmin</code> directories.\nAfterward, the <code>pgAdmin</code> container will run as a <strong>non</strong>-root user (<code>5050</code>).\nAll mounted storage(s) will be <code>chown</code>ed only if the parent directory does not match the configured user.</p>\n</blockquote>",
  1026. "changelog": null
  1027. }
  1028. }