values_schema.schema.json 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293
  1. {
  2. "$schema": "http://json-schema.org/draft-07/schema#",
  3. "type": "object",
  4. "description": "This schema is used to validate `values.schema.json` to ensure each parameter has `default` and `description` set, and that top level properties have a `x-docsSection` set.",
  5. "definitions": {
  6. "leafs": {
  7. "additionalProperties": {
  8. "additionalProperties": {
  9. "$ref": "#/definitions/leafs"
  10. }
  11. },
  12. "if": {
  13. "oneOf": [
  14. {
  15. "properties": {
  16. "type": {
  17. "const": "integer"
  18. }
  19. }
  20. },
  21. {
  22. "properties": {
  23. "type": {
  24. "const": "number"
  25. }
  26. }
  27. },
  28. {
  29. "properties": {
  30. "type": {
  31. "const": "string"
  32. }
  33. }
  34. },
  35. {
  36. "properties": {
  37. "type": {
  38. "const": "boolean"
  39. }
  40. }
  41. },
  42. {
  43. "properties": {
  44. "type": {
  45. "const": "object"
  46. },
  47. "properties": false
  48. }
  49. },
  50. {
  51. "properties": {
  52. "type": {
  53. "const": "array"
  54. },
  55. "items": false
  56. }
  57. }
  58. ]
  59. },
  60. "then": {
  61. "required": [
  62. "description",
  63. "default"
  64. ]
  65. }
  66. }
  67. },
  68. "required": [
  69. "x-docsSectionOrder"
  70. ],
  71. "properties": {
  72. "section_order": {
  73. "type": "array",
  74. "items": {
  75. "type": "string"
  76. }
  77. },
  78. "properties": {
  79. "additionalProperties": {
  80. "allOf": [
  81. {
  82. "$ref": "#/definitions/leafs"
  83. },
  84. {
  85. "required": [
  86. "x-docsSection"
  87. ]
  88. }
  89. ]
  90. }
  91. }
  92. }
  93. }