{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/mlos-config-mlos-jsonc-mlos-json5-mlos-json/_shared/latest--azure-fileshare-service-subschema.json",
  "title": "mlos_bench Azure FileShare Service config",
  "description": "config for an mlos_bench Azure FileShare Service",
  "x-lintel": {
    "source": "https://raw.githubusercontent.com/microsoft/MLOS/main/mlos_bench/mlos_bench/config/schemas/services/remote/azure/azure-fileshare-service-subschema.json",
    "sourceSha256": "c6f726eee66650124d3dbe16ee8ee33f34a53484646fa30a09137fca6da4c1a5"
  },
  "type": "object",
  "properties": {
    "class": {
      "enum": [
        "mlos_bench.services.remote.azure.AzureFileShareService",
        "mlos_bench.services.remote.azure.azure_fileshare.AzureFileShareService"
      ]
    },
    "config": {
      "type": "object",
      "allOf": [
        {
          "$ref": "https://catalog.lintel.tools/schemas/schemastore/mlos-config-mlos-jsonc-mlos-json5-mlos-json/_shared/latest--common-defs-subschemas.json#/$defs/poll_configs"
        },
        {
          "type": "object",
          "properties": {
            "storageAccountName": {
              "description": "Azure storage account name (typically provided in the global config in order to omit from source control).",
              "type": "string"
            },
            "storageFileShareName": {
              "description": "Azure storage file share name.",
              "type": "string"
            },
            "storageAccountKey": {
              "description": "Azure storage account key (typically provided in the global config in order to omit from source control).",
              "type": "string"
            }
          },
          "required": [
            "storageFileShareName"
          ]
        }
      ],
      "unevaluatedProperties": false
    }
  },
  "required": [
    "class",
    "config"
  ]
}
