{
  "description": "Represents an ISCSI disk. ISCSI volumes can only be mounted as read/write once. ISCSI volumes support ownership management and SELinux relabeling.",
  "properties": {
    "chapAuthDiscovery": {
      "description": "chapAuthDiscovery defines whether support iSCSI Discovery CHAP authentication",
      "type": [
        "boolean",
        "null"
      ]
    },
    "chapAuthSession": {
      "description": "chapAuthSession defines whether support iSCSI Session CHAP authentication",
      "type": [
        "boolean",
        "null"
      ]
    },
    "fsType": {
      "description": "fsType is the filesystem type of the volume that you want to mount. Tip: Ensure that the filesystem type is supported by the host operating system. Examples: \"ext4\", \"xfs\", \"ntfs\". Implicitly inferred to be \"ext4\" if unspecified. More info: https://kubernetes.io/docs/concepts/storage/volumes#iscsi",
      "type": [
        "string",
        "null"
      ]
    },
    "initiatorName": {
      "description": "initiatorName is the custom iSCSI Initiator Name. If initiatorName is specified with iscsiInterface simultaneously, new iSCSI interface <target portal>:<volume name> will be created for the connection.",
      "type": [
        "string",
        "null"
      ]
    },
    "iqn": {
      "description": "iqn is the target iSCSI Qualified Name.",
      "type": [
        "string",
        "null"
      ]
    },
    "iscsiInterface": {
      "description": "iscsiInterface is the interface Name that uses an iSCSI transport. Defaults to 'default' (tcp).",
      "type": [
        "string",
        "null"
      ]
    },
    "lun": {
      "description": "lun represents iSCSI Target Lun number.",
      "format": "int32",
      "type": [
        "integer",
        "null"
      ]
    },
    "portals": {
      "description": "portals is the iSCSI Target Portal List. The portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260).",
      "items": {
        "type": [
          "string",
          "null"
        ]
      },
      "type": [
        "array",
        "null"
      ],
      "x-kubernetes-list-type": "atomic"
    },
    "readOnly": {
      "description": "readOnly here will force the ReadOnly setting in VolumeMounts. Defaults to false.",
      "type": [
        "boolean",
        "null"
      ]
    },
    "secretRef": {
      "description": "LocalObjectReference contains enough information to let you locate the referenced object inside the same namespace.",
      "properties": {
        "name": {
          "description": "Name of the referent. This field is effectively required, but due to backwards compatibility is allowed to be empty. Instances of this type with an empty value here are almost certainly wrong. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names",
          "type": [
            "string",
            "null"
          ]
        }
      },
      "type": [
        "object",
        "null"
      ],
      "x-kubernetes-map-type": "atomic",
      "additionalProperties": false
    },
    "targetPortal": {
      "description": "targetPortal is iSCSI Target Portal. The Portal is either an IP or ip_addr:port if the port is other than default (typically TCP ports 860 and 3260).",
      "type": [
        "string",
        "null"
      ]
    }
  },
  "required": [
    "targetPortal",
    "iqn",
    "lun"
  ],
  "type": "object",
  "additionalProperties": false,
  "$schema": "http://json-schema.org/schema#"
}