{
  "$schema": "http://json-schema.org/schema#",
  "type": "object",
  "properties": {
	"wordpress": {
	  "wordpressUsername": {
		"type": "string",
		"title": "Username",
		"form": true
	  },
	  "wordpressPassword": {
		"type": "string",
		"title": "Password",
		"form": true,
		"description": "Defaults to a random 10-character alphanumeric string if not set"
	  },
	  "wordpressEmail": {
		"type": "string",
		"title": "Admin email",
		"form": true
	  },
	  "wordpressBlogName": {
		"type": "string",
		"title": "Blog Name",
		"form": true
	  }
    },
    "s3": {
      "description": "Configuration of temporary identity",
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Add S3 temporary identity inside your environment",
          "default": true
        },
        "accessKeyId": {
          "description": "AWS Access Key",
          "type": "string",
          "x-onyxia": {
            "overwriteDefaultWith": "{{s3.AWS_ACCESS_KEY_ID}}"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        },
        "endpoint": {
          "description": "AWS S3 Endpoint",
          "type": "string",
          "x-onyxia": {
            "overwriteDefaultWith": "{{s3.AWS_S3_ENDPOINT}}"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        },
        "defaultRegion": {
          "description": "AWS S3 default region",
          "type": "string",
          "x-onyxia": {
            "overwriteDefaultWith": "{{s3.AWS_DEFAULT_REGION}}"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        },
        "secretAccessKey": {
          "description": "AWS S3 secret access key",
          "type": "string",
          "render": "password",
          "x-onyxia": {
            "overwriteDefaultWith": "{{s3.AWS_SECRET_ACCESS_KEY}}"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        },
        "sessionToken": {
          "description": "AWS S3 session Token",
          "type": "string",
          "render": "password",
          "x-onyxia": {
            "overwriteDefaultWith": "{{s3.AWS_SESSION_TOKEN}}"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        }
      }
    },
    "ingress": {
      "type": "object",
      "form": true,
      "title": "Ingress Details",
      "properties": {
        "enabled": {
          "description": "Enable Ingress",
          "type": "boolean",
          "default": true,
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "k8s.ingress"
          }
        },
        "hostname": {
          "type": "string",
          "form": true,
          "title": "Hostname",
          "x-onyxia": {
            "hidden": false,
            "overwriteDefaultWith": "{{project.id}}-mlflow.{{k8s.domain}}"
          }
        },
        "ingressClassName": {
          "type": "string",
          "form": true,
          "title": "ingressClassName",
          "default": "",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{k8s.ingressClassName}}"
          }
        }
      }
    },
    "route": {
      "type": "object",
      "form": true,
      "title": "Route details",
      "properties": {
        "enabled": {
          "description": "Enable route",
          "type": "boolean",
          "default": false,
          "x-onyxia": {
            "hidden": false,
            "overwriteDefaultWith": "k8s.route"
          }
        },
        "hostname": {
          "type": "string",
          "form": true,
          "title": "Hostname",
          "x-onyxia": {
            "hidden": false,
            "overwriteDefaultWith": "{{project.id}}-mlflow.{{k8s.domain}}"
          }
        }
      }
    },
    "security": {
      "description": "security specific configuration",
      "type": "object",
      "properties": {
        "password": {
          "type": "string",
          "description": "Password",
          "default": "changeme",
          "render": "password",
          "x-onyxia": {
            "overwriteDefaultWith": "{{project.password}}"
          }
        },
        "allowlist": {
          "type": "object",
          "description": "IP protection",
          "properties": {
            "enabled": {
              "type": "boolean",
              "title": "Enable IP protection",
              "description": "Only the configured set of IPs will be able to reach the service",
              "default": true,
              "x-onyxia": {
                "overwriteDefaultWith": "region.defaultIpProtection"
              }
            },
            "ip": {
              "type": "string",
              "description": "the white list of IP is whitespace",
              "title": "Whitelist of IP",
              "default": "0.0.0.0",
              "x-onyxia": {
                "overwriteDefaultWith": "{{user.ip}}"
              },
              "hidden": {
                "value": false,
                "path": "security/allowlist/enabled"
              }
            }
          }
        },
        "networkPolicy": {
          "type": "object",
          "description": "Define access policy to the service",
          "properties": {
            "enabled": {
              "type": "boolean",
              "title": "Enable network policy",
              "description": "Only pod from the same namespace will be allowed",
              "default": true,
              "x-onyxia": {
                "overwriteDefaultWith": "region.defaultNetworkPolicy"
              }
            },
            "from": {
              "type": "array",
              "description": "Array of source allowed to have network access to your service",
              "default": [
                {
                  "namespaceSelector": {
                    "matchLabels": {
                      "kubernetes.io/metadata.name": "ingress"
                    }
                  }
                }
              ],
              "x-onyxia": {
                "overwriteDefaultWith": "region.from"
              }
            }
          }
        }
      }
    },
    "resources": {
      "description": "Your service will have at least the requested resources and never more than its limits. No limit for a resource and you can consume everything left on the host machine.",
      "type": "object",
      "properties": {
        "requests": {
          "description": "Guaranteed resources",
          "type": "object",
          "properties": {
            "cpu": {
              "description": "The amount of cpu guaranteed",
              "title": "CPU",
              "type": "string",
              "default": "100m",
              "render": "slider",
              "sliderMin": 50,
              "sliderMax": 40000,
              "sliderStep": 50,
              "sliderUnit": "m",
              "sliderExtremity": "down",
              "sliderExtremitySemantic": "guaranteed",
              "sliderRangeId": "cpu"
            },
            "memory": {
              "description": "The amount of memory guaranteed",
              "title": "memory",
              "type": "string",
              "default": "2Gi",
              "render": "slider",
              "sliderMin": 1,
              "sliderMax": 200,
              "sliderStep": 1,
              "sliderUnit": "Gi",
              "sliderExtremity": "down",
              "sliderExtremitySemantic": "guaranteed",
              "sliderRangeId": "memory"
            }
          }
        },
        "limits": {
          "description": "max resources",
          "type": "object",
          "properties": {
            "cpu": {
              "description": "The maximum amount of cpu",
              "title": "CPU",
              "type": "string",
              "default": "30000m",
              "render": "slider",
              "sliderMin": 50,
              "sliderMax": 40000,
              "sliderStep": 50,
              "sliderUnit": "m",
              "sliderExtremity": "up",
              "sliderExtremitySemantic": "Maximum",
              "sliderRangeId": "cpu"
            },
            "memory": {
              "description": "The maximum amount of memory",
              "title": "Memory",
              "type": "string",
              "default": "50Gi",
              "render": "slider",
              "sliderMin": 1,
              "sliderMax": 200,
              "sliderStep": 1,
              "sliderUnit": "Gi",
              "sliderExtremity": "up",
              "sliderExtremitySemantic": "Maximum",
              "sliderRangeId": "memory"
            }
          }
        }
      }
    },
    "mariadb": {
      "type": "object",
      "title": "MariaDB Details",
      "form": true,
      "properties": {
        "enabled": {
          "type": "boolean",
          "title": "Use a new MariaDB database hosted in the cluster",
          "form": true,
          "description": "Whether to deploy a mariadb server to satisfy the applications database requirements. To use an external database switch this off and configure the external database details"
        },
        "primary": {
          "type": "object",
          "properties": {
            "persistence": {
              "type": "object",
              "properties": {
                "size": {
                  "type": "string",
                  "title": "Volume Size",
                  "form": true,
                  "hidden": {
                    "value": false,
                    "path": "mariadb/primary/persistence/enabled"
                  },
                  "render": "slider",
                  "sliderMin": 1,
                  "sliderMax": 100,
                  "sliderUnit": "Gi"
                }
              }
            }
          }
        }
      }
    },
	  
	  
	  
	  
	  
	  
	  
	  
	  
	  
    "resources": {
      "description": "Your service will have at least the requested resources and never more than its limits. No limit for a resource and you can consume everything left on the host machine.",
      "type": "object",
      "properties": {
        "requests": {
          "description": "Guaranteed resources",
          "type": "object",
          "properties": {
            "cpu": {
              "description": "The amount of cpu guaranteed",
              "title": "CPU",
              "type": "string",
              "default": "100m",
              "render": "slider",
              "sliderMin": 50,
              "sliderMax": 40000,
              "sliderStep": 50,
              "sliderUnit": "m",
              "sliderExtremity": "down",
              "sliderExtremitySemantic": "guaranteed",
              "sliderRangeId": "cpu",
              "x-onyxia": {
                "overwriteDefaultWith": "region.resources.cpuRequest",
                "useRegionSliderConfig": "cpu"
              }
            },
            "memory": {
              "description": "The amount of memory guaranteed",
              "title": "memory",
              "type": "string",
              "default": "2Gi",
              "render": "slider",
              "sliderMin": 1,
              "sliderMax": 200,
              "sliderStep": 1,
              "sliderUnit": "Gi",
              "sliderExtremity": "down",
              "sliderExtremitySemantic": "guaranteed",
              "sliderRangeId": "memory",
              "x-onyxia": {
                "overwriteDefaultWith": "region.resources.memoryRequest",
                "useRegionSliderConfig": "memory"
              }
            }
          }
        },
        "limits": {
          "description": "max resources",
          "type": "object",
          "properties": {
            "cpu": {
              "description": "The maximum amount of cpu",
              "title": "CPU",
              "type": "string",
              "default": "30000m",
              "render": "slider",
              "sliderMin": 50,
              "sliderMax": 40000,
              "sliderStep": 50,
              "sliderUnit": "m",
              "sliderExtremity": "up",
              "sliderExtremitySemantic": "Maximum",
              "sliderRangeId": "cpu",
              "x-onyxia": {
                "overwriteDefaultWith": "region.resources.cpuLimit",
                "useRegionSliderConfig": "cpu"
              }
            },
            "memory": {
              "description": "The maximum amount of memory",
              "title": "Memory",
              "type": "string",
              "default": "50Gi",
              "render": "slider",
              "sliderMin": 1,
              "sliderMax": 200,
              "sliderStep": 1,
              "sliderUnit": "Gi",
              "sliderExtremity": "up",
              "sliderExtremitySemantic": "Maximum",
              "sliderRangeId": "memory",
              "x-onyxia": {
                "overwriteDefaultWith": "region.resources.memoryLimit",
                "useRegionSliderConfig": "memory"
              }
            }
          }
        }
      }
    },
    "discovery": {
      "description": "configure your service to autodetect some ressources.",
      "type": "object",
      "properties": {
        "hive": {
          "type": "boolean",
          "title": "Enable hive metastore discovery",
          "description": "discover your hive metastore service",
          "default": true
        },
        "mlflow": {
          "type": "boolean",
          "title": "Enable mlflow discovery",
          "description": "discover your mlflow service",
          "default": true
        },
        "metaflow": {
          "type": "boolean",
          "title": "Enable metaflow discovery",
          "description": "discover your metaflow service",
          "default": true
        }
      }
    },
    "service": {
      "description": "spark-history specific configuration",
      "type": "object",
      "properties": {
        "image": {
          "description": "image docker",
          "type": "object",
          "properties": {
            "pullPolicy": {
              "type": "string",
              "description": "option when pulling the docker image",
              "default": "IfNotPresent",
              "enum": [
                "IfNotPresent",
                "Always",
                "Never"
              ]
            },
            "version": {
              "description": "vscode supported version",
              "type": "string",
              "default": "inseefrlab/onyxia-vscode-python:py3.11.6",
              "listEnum": [
                "inseefrlab/onyxia-vscode-python:py3.11.6",
                "inseefrlab/onyxia-vscode-python:py3.10.13"
              ],
              "render": "list",
              "hidden": {
                "value": true,
                "path": "service/image/custom/enabled"
              }
            },
            "custom": {
              "description": "use a custom vscode docker image",
              "type": "object",
              "properties": {
                "enabled": {
                  "title": "custom image",
                  "type": "boolean",
                  "description": "use a custom vscode docker images",
                  "default": false
                },
                "version": {
                  "description": "vscode unsupported version",
                  "type": "string",
                  "default": "inseefrlab/onyxia-vscode-python:py3.11.6",
                  "hidden": {
                    "value": false,
                    "path": "service/image/custom/enabled"
                  }
                }
              }
            }
          }
        }
      }
    },
    "persistence": {
      "description": "Configuration for persistence",
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Create a persistent volume",
          "default": true
        },
        "size": {
          "type": "string",
          "title": "Persistent volume size",
          "description": "Size of the persistent volume",
          "default": "10Gi",
          "form": true,
          "render": "slider",
          "sliderMin": 1,
          "sliderMax": 100,
          "sliderStep": 1,
          "sliderUnit": "Gi",
          "x-onyxia": {
            "overwriteDefaultWith": "region.resources.disk",
            "useRegionSliderConfig": "disk"
          },
          "hidden": {
            "value": false,
            "path": "persistence/enabled"
          }
        }
      }
    },
    "security": {
      "description": "security specific configuration",
      "type": "object",
      "properties": {
        "password": {
          "type": "string",
          "description": "Password",
          "default": "changeme",
          "render": "password",
          "x-onyxia": {
            "overwriteDefaultWith": "{{project.password}}"
          }
        },
        "allowlist": {
          "type": "object",
          "description": "IP protection",
          "properties": {
            "enabled": {
              "type": "boolean",
              "title": "Enable IP protection",
              "description": "Only the configured set of IPs will be able to reach the service",
              "default": true,
              "x-onyxia": {
                "overwriteDefaultWith": "region.defaultIpProtection"
              }
            },
            "ip": {
              "type": "string",
              "description": "the white list of IP is whitespace",
              "title": "Whitelist of IP",
              "x-onyxia": {
                "overwriteDefaultWith": "{{user.ip}}"
              }
            }
          }
        },
        "networkPolicy": {
          "type": "object",
          "description": "Define access policy to the service",
          "properties": {
            "enabled": {
              "type": "boolean",
              "title": "Enable network policy",
              "description": "Only pod from the same namespace will be allowed",
              "default": true,
              "x-onyxia": {
                "overwriteDefaultWith": "region.defaultNetworkPolicy"
              }
            },
            "from": {
              "type": "array",
              "description": "Array of source allowed to have network access to your service",
              "default": [],
              "x-onyxia": {
                "hidden": true,
                "overwriteDefaultWith": "region.from"
              }
            }
          }
        }
      }
    },
    "kubernetes": {
      "description": "configuration of your kubernetes access",
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "allow your service to access your namespace ressources",
          "default": true
        },
        "role": {
          "type": "string",
          "description": "bind your service account to this kubernetes default role",
          "default": "view",
          "hidden": {
            "value": false,
            "path": "kubernetes/enabled"
          },
          "enum": [
            "view",
            "edit",
            "admin"
          ]
        }
      }
    },
    "git": {
      "description": "Git user configuration",
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Add git config inside your environment",
          "default": true
        },
        "name": {
          "type": "string",
          "description": "user name for git",
          "default": "",
          "x-onyxia": {
            "overwriteDefaultWith": "{{git.name}}"
          },
          "hidden": {
            "value": false,
            "path": "git/enabled"
          }
        },
        "email": {
          "type": "string",
          "description": "user email for git",
          "default": "",
          "x-onyxia": {
            "overwriteDefaultWith": "{{git.email}}"
          },
          "hidden": {
            "value": false,
            "path": "git/enabled"
          }
        },
        "cache": {
          "type": "string",
          "description": "duration in seconds of the credentials cache duration",
          "default": "",
          "x-onyxia": {
            "overwriteDefaultWith": "{{git.credentials_cache_duration}}"
          },
          "hidden": {
            "value": false,
            "path": "git/enabled"
          }
        },
        "token": {
          "type": "string",
          "description": "personal access token",
          "default": "",
          "render": "password",
          "x-onyxia": {
            "overwriteDefaultWith": "{{git.token}}"
          },
          "hidden": {
            "value": false,
            "path": "git/enabled"
          }
        },
        "repository": {
          "type": "string",
          "description": "projet",
          "default": "",
          "x-onyxia": {
            "overwriteDefaultWith": "{{git.project}}"
          },
          "hidden": {
            "value": false,
            "path": "git/enabled"
          }
        },
        "branch": {
          "type": "string",
          "description": "Branch automatically checked out",
          "default": "",
          "hidden": {
            "value": "",
            "path": "git/repository"
          }
        }
      }
    },
    "vault": {
      "description": "Configuration of vault client",
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Add vault temporary identity inside your environment",
          "default": true
        },
        "token": {
          "description": "token vault",
          "type": "string",
          "render": "password",
          "x-onyxia": {
            "overwriteDefaultWith": "{{vault.VAULT_TOKEN}}"
          },
          "hidden": {
            "value": false,
            "path": "vault/enabled"
          }
        },
        "url": {
          "description": "url of vault server",
          "type": "string",
          "x-onyxia": {
            "overwriteDefaultWith": "{{vault.VAULT_ADDR}}"
          },
          "hidden": {
            "value": false,
            "path": "vault/enabled"
          }
        },
        "mount": {
          "description": "mount of the v2 secret engine",
          "type": "string",
          "x-onyxia": {
            "overwriteDefaultWith": "{{vault.VAULT_MOUNT}}"
          },
          "hidden": {
            "value": false,
            "path": "vault/enabled"
          }
        },
        "directory": {
          "description": "top level directory",
          "type": "string",
          "x-onyxia": {
            "overwriteDefaultWith": "{{vault.VAULT_TOP_DIR}}"
          },
          "hidden": {
            "value": false,
            "path": "vault/enabled"
          }
        },
        "secret": {
          "description": "the path of the secret to convert into a list of environment variables",
          "type": "string",
          "default": "",
          "hidden": {
            "value": false,
            "path": "vault/enabled"
          }
        }
      }
    },
    "s3": {
      "description": "Configuration of temporary identity",
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean",
          "description": "Add S3 temporary identity inside your environment",
          "default": true
        },
        "accessKeyId": {
          "description": "AWS Access Key",
          "type": "string",
          "x-onyxia": {
            "overwriteDefaultWith": "s3.AWS_ACCESS_KEY_ID"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        },
        "endpoint": {
          "description": "AWS S3 Endpoint",
          "type": "string",
          "x-onyxia": {
            "overwriteDefaultWith": "{{s3.AWS_S3_ENDPOINT}}"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        },
        "defaultRegion": {
          "description": "AWS S3 default region",
          "type": "string",
          "x-onyxia": {
            "overwriteDefaultWith": "{{s3.AWS_DEFAULT_REGION}}"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        },
        "secretAccessKey": {
          "description": "AWS S3 secret access key",
          "type": "string",
          "render": "password",
          "x-onyxia": {
            "overwriteDefaultWith": "{{s3.AWS_SECRET_ACCESS_KEY}}"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        },
        "sessionToken": {
          "description": "AWS S3 session Token",
          "type": "string",
          "render": "password",
          "x-onyxia": {
            "overwriteDefaultWith": "{{s3.AWS_SESSION_TOKEN}}"
          },
          "hidden": {
            "value": false,
            "path": "s3/enabled"
          }
        }
      }
    },
    "ingress": {
      "type": "object",
      "form": true,
      "title": "Ingress Details",
      "properties": {
        "enabled": {
          "description": "Enable Ingress",
          "type": "boolean",
          "default": true,
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "k8s.ingress"
          }
        },
        "hostname": {
          "type": "string",
          "form": true,
          "title": "Hostname",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
          }
        },
        "userHostname": {
          "type": "string",
          "form": true,
          "title": "Hostname",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
          }
        },
        "ingressClassName": {
          "type": "string",
          "form": true,
          "title": "ingressClassName",
          "default": "",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{k8s.ingressClassName}}"
          }
        },
        "useCertManager": {
          "type": "boolean",
          "description": "Whether CertManager should be used to generate a certificate",
          "default": false,
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "k8s.useCertManager"
          }
        },
        "certManagerClusterIssuer":{
          "type": "string",
          "description": "certManager cluster issuer",
          "title": "CertManager Cluster Issuer",
          "default": "",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "k8s.certManagerClusterIssuer"
          }
        }
      }
    },
    "route": {
      "type": "object",
      "form": true,
      "title": "Route details",
      "properties": {
        "enabled": {
          "description": "Enable route",
          "type": "boolean",
          "default": false,
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "k8s.route"
          }
        },
        "hostname": {
          "type": "string",
          "form": true,
          "title": "Hostname",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-0.{{k8s.domain}}"
          }
        },
        "userHostname": {
          "type": "string",
          "form": true,
          "title": "Hostname",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{project.id}}-{{k8s.randomSubdomain}}-user.{{k8s.domain}}"
          }
        }
      }
    },
    "networking": {
      "type": "object",
      "form": true,
      "title": "Networking detail",
      "properties": {
        "user": {
          "type": "object",
          "description": "user defined port",
          "properties": {
            "enabled": {
              "type": "boolean",
              "title": "Enable a custom service port",
              "description": "Enable a custom service port",
              "default": false
            },
            "port": {
              "type": "integer",
              "description": "port of the custom service",
              "title": "Custom service port",
              "hidden": {
                "value": false,
                "path": "networking/user/enabled"
              },
              "default": 5000
            }
          }
        }
      }
    },
    "init": {
      "description": "Init parameters",
      "type": "object",
      "properties": {
        "regionInit": {
          "type": "string",
          "description": "region initialization script",
          "default": "",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{k8s.initScriptUrl}}"
          }
        },
        "regionInitCheckSum": {
          "type": "string",
          "description": "region initialization script",
          "default": "",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{k8s.initScriptCheckSum}}"
          }
        },
        "personalInit": {
          "type": "string",
          "description": "user initialization script",
          "default": ""
        },
        "personalInitArgs": {
          "type": "string",
          "description": "args for user initialization script",
          "default": ""
        }
      }
    },
    "repository": {
      "description": "python repositories for pip and conda",
      "type": "object",
      "properties": {
        "pipRepository": {
          "type": "string",
          "description": "python repository for pip",
          "default": "",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{packageRepositoryInjection.pypiProxyUrl}}"
          }
        },
        "condaRepository": {
          "type": "string",
          "description": "python repository for pip",
          "default": "",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "{{packageRepositoryInjection.condaProxyUrl}}"
          }
        }
      }
    },
    "startupProbe": {
      "type": "object",
      "description": "Start up probe",
      "default": {},
      "x-onyxia": {
        "hidden": true,
        "overwriteDefaultWith": "region.startupProbe"
      }
    },
    "tolerations": {
      "type": "array",
      "description": "Array of tolerations",
      "default": [],
      "x-onyxia": {
        "hidden": true,
        "overwriteDefaultWith": "region.tolerations"
      }
    },
    "nodeSelector": {
      "type": "object",
      "description": "NodeSelector",
      "default": {},
      "x-onyxia": {
        "hidden": true,
        "overwriteDefaultWith": "region.nodeSelector"
      }
    },
    "userPreferences": {
      "description": "User Preferences",
      "type": "object",
      "properties": {
        "darkMode": {
          "type": "boolean",
          "description": "dark mode is or is not enabled",
          "default": false,
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "user.darkMode"
          }
        },
        "language": {
          "type": "string",
          "description": "Preferred language",
          "default": "en",
          "x-onyxia": {
            "hidden": true,
            "overwriteDefaultWith": "user.lang"
          }
        }
      }
    },
    "global": {
      "description": "Suspend",
      "type": "object",
      "properties": {
        "suspend": {
          "type": "boolean",
          "description": "Suspend this service",
          "default": false,
          "x-onyxia": {
            "hidden": true
          }
        }
      }
    }
  }
}