{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/butane-config/latest.json",
  "title": "Fedora Coreos Butane Schema",
  "x-lintel": {
    "source": "https://relativ-it.github.io/Butane-Schemas/Butane-Schema.json",
    "sourceSha256": "f8b35959afdf51aba1851b640c7dc75d1110ecf152fa717f491b7a7336837ae8",
    "fileMatch": [
      "*.bu"
    ]
  },
  "type": "object",
  "properties": {
    "variant": {
      "default": "fcos",
      "type": "string",
      "title": "variant (string):",
      "description": "Used to differentiate configs for different operating systems.",
      "enum": [
        "fcos",
        "flatcar"
      ]
    },
    "version": {
      "title": "version (string):",
      "type": "string"
    }
  },
  "required": [
    "variant",
    "version"
  ],
  "allOf": [
    {
      "oneOf": [
        {
          "properties": {
            "variant": {
              "const": "fcos"
            },
            "version": {
              "enum": [
                "1.4.0",
                "1.5.0",
                "1.6.0",
                "1.7.0"
              ],
              "default": "1.7.0"
            }
          }
        },
        {
          "properties": {
            "variant": {
              "const": "flatcar"
            },
            "version": {
              "enum": [
                "1.1.0"
              ],
              "default": "1.1.0"
            }
          }
        }
      ]
    },
    {
      "oneOf": [
        {
          "allOf": [
            {
              "properties": {
                "variant": {
                  "const": "fcos"
                },
                "version": {
                  "const": "1.4.0"
                }
              }
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/butane-config/_shared/latest--butane-v1.4.0.json"
            }
          ]
        },
        {
          "allOf": [
            {
              "properties": {
                "variant": {
                  "const": "fcos"
                },
                "version": {
                  "const": "1.5.0"
                }
              }
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/butane-config/_shared/latest--butane-v1.5.0.json"
            }
          ]
        },
        {
          "allOf": [
            {
              "properties": {
                "variant": {
                  "const": "fcos"
                },
                "version": {
                  "const": "1.6.0"
                }
              }
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/butane-config/_shared/latest--butane-v1.6.0.json"
            }
          ]
        },
        {
          "allOf": [
            {
              "properties": {
                "variant": {
                  "const": "fcos"
                },
                "version": {
                  "const": "1.7.0"
                }
              }
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/butane-config/_shared/latest--butane-v1.7.0.json"
            }
          ]
        },
        {
          "allOf": [
            {
              "properties": {
                "variant": {
                  "const": "flatcar"
                },
                "version": {
                  "const": "1.1.0"
                }
              }
            },
            {
              "$ref": "https://catalog.lintel.tools/schemas/schemastore/butane-config/_shared/latest--butane-flatcar-v1.1.0.json"
            }
          ]
        }
      ]
    }
  ],
  "$comment": "Sources: https://github.com/Relativ-IT/Butane-Schemas/tree/Release"
}
