{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/k9s-config-yaml/latest.json",
  "title": "K9s config schema",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/derailed/k9s/master/internal/config/json/schemas/k9s.json",
    "sourceSha256": "30ca2d423f91eb5ab06aaf2684473b833a1fc92c2efbc791799420ec9bf041db",
    "fileMatch": [
      "**/k9s/config.yaml"
    ],
    "parsers": [
      "yaml"
    ]
  },
  "type": "object",
  "properties": {
    "k9s": {
      "properties": {
        "liveViewAutoRefresh": {
          "type": "boolean"
        },
        "gpuVendors": {
          "type": "object",
          "additionalProperties": {
            "type": "object",
            "properties": {
              "vendor": {
                "type": "string"
              },
              "model": {
                "type": "string"
              }
            },
            "required": [
              "vendor",
              "model"
            ]
          }
        },
        "screenDumpDir": {
          "type": "string"
        },
        "refreshRate": {
          "type": "number"
        },
        "apiServerTimeout": {
          "type": "string"
        },
        "maxConnRetry": {
          "type": "integer"
        },
        "readOnly": {
          "type": "boolean"
        },
        "noExitOnCtrlC": {
          "type": "boolean"
        },
        "skipLatestRevCheck": {
          "type": "boolean"
        },
        "disablePodCounting": {
          "type": "boolean"
        },
        "defaultView": {
          "type": "string"
        },
        "portForwardAddress": {
          "type": "string"
        },
        "ui": {
          "type": "object",
          "properties": {
            "enableMouse": {
              "type": "boolean"
            },
            "headless": {
              "type": "boolean"
            },
            "logoless": {
              "type": "boolean"
            },
            "crumbsless": {
              "type": "boolean"
            },
            "splashless": {
              "type": "boolean"
            },
            "noIcons": {
              "type": "boolean"
            },
            "reactive": {
              "type": "boolean"
            },
            "skin": {
              "type": "string"
            },
            "defaultsToFullScreen": {
              "type": "boolean"
            },
            "useFullGVRTitle": {
              "type": "boolean"
            },
            "invert": {
              "type": "boolean"
            }
          },
          "additionalProperties": false
        },
        "shellPod": {
          "type": "object",
          "required": [
            "image",
            "namespace",
            "limits"
          ],
          "properties": {
            "image": {
              "type": "string"
            },
            "command": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "args": {
              "type": "array",
              "items": {
                "type": "string"
              }
            },
            "namespace": {
              "type": "string"
            },
            "limits": {
              "type": "object",
              "properties": {
                "cpu": {
                  "type": "string"
                },
                "memory": {
                  "type": "string"
                }
              },
              "required": [
                "cpu",
                "memory"
              ]
            },
            "labels": {
              "type": "object",
              "required": [],
              "additionalProperties": {
                "type": "string"
              }
            },
            "tty": {
              "type": "boolean"
            },
            "imagePullPolicy": {
              "type": "string"
            },
            "imagePullSecrets": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "name": {
                    "type": "string"
                  }
                }
              }
            }
          },
          "additionalProperties": true
        },
        "imageScans": {
          "type": "object",
          "required": [
            "enable"
          ],
          "properties": {
            "enable": {
              "type": "boolean"
            },
            "namespace": {
              "type": "string"
            },
            "exclusions": {
              "type": "object",
              "properties": {
                "namespaces": {
                  "type": "array",
                  "items": {
                    "type": "string"
                  }
                },
                "labels": {
                  "type": "object",
                  "additionalProperties": {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          "additionalProperties": false
        },
        "logger": {
          "type": "object",
          "properties": {
            "tail": {
              "type": "integer"
            },
            "buffer": {
              "type": "integer"
            },
            "sinceSeconds": {
              "type": "integer"
            },
            "textWrap": {
              "type": "boolean"
            },
            "disableAutoscroll": {
              "type": "boolean"
            },
            "columnLock": {
              "type": "boolean"
            },
            "showTime": {
              "type": "boolean"
            }
          },
          "additionalProperties": false
        },
        "thresholds": {
          "type": "object",
          "properties": {
            "cpu": {
              "type": "object",
              "properties": {
                "critical": {
                  "type": "integer"
                },
                "warn": {
                  "type": "integer"
                }
              }
            },
            "memory": {
              "type": "object",
              "properties": {
                "critical": {
                  "type": "integer"
                },
                "warn": {
                  "type": "integer"
                }
              }
            }
          },
          "additionalProperties": false
        }
      },
      "additionalProperties": false,
      "type": "object"
    }
  },
  "additionalProperties": false,
  "required": [
    "k9s"
  ]
}
