3 Star 2 Fork 0

Gitee 极速下载 / kimchi

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
此仓库是为了提升国内下载速度的镜像仓库,每日同步一次。 原始仓库: https://github.com/kimchi-project/kimchi
克隆/下载
API.json 37.76 KB
一键复制 编辑 原始数据 按行查看 历史
Aline Manera 提交于 2019-12-09 23:41 . Use jsonschema Draft3Validator
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925
{
"$schema": "http://json-schema.org/draft-03/schema#",
"title": "Kimchi API",
"description": "Json schema for Kimchi API",
"type": "object",
"kimchitype": {
"graphics": {
"description": "Configure graphics parameters for the new VM",
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": ["spice", "vnc"],
"error": "KCHVM0014E"
},
"listen": {
"error": "KCHVM0015E",
"type": [
{
"type": "string",
"format": "ipv4"
},
{
"type": "string",
"format": "ipv6"
}
]
}
}
},
"cpu_info": {
"description": "Configure CPU specifics for a VM.",
"type": "object",
"properties": {
"vcpus": {
"description": "The new number of virtual CPUs for the VM",
"type": "integer",
"minimum": 1,
"error": "KCHTMPL0012E"
},
"maxvcpus": {
"description": "The maximum number of virtual CPUs that can be assigned to the VM",
"type": "integer",
"minimum": 1,
"error": "KCHTMPL0012E"
},
"topology": {
"description": "Configure the guest CPU topology.",
"type": "object",
"properties": {
"sockets": {
"type": "integer",
"minimum": 1,
"error": "KCHTMPL0026E"
},
"cores": {
"type": "integer",
"minimum": 1,
"error": "KCHTMPL0026E"
},
"threads": {
"type": "integer",
"minimum": 1,
"error": "KCHTMPL0026E"
}
},
"additionalProperties": false,
"error": "KCHCPUINF0009E"
}
},
"additionalProperties": false,
"error": "KCHCPUINF0008E"
},
"memory": {
"description": "Current memory and maximum memory values",
"type": "object",
"properties": {
"current": {
"description": "Memory (MB) for the template",
"type": "integer",
"minimum": 512,
"error": "KCHTMPL0013E"
},
"maxmemory": {
"description": "Maximum memory (MB) for the template",
"type": "integer",
"minimum": 512,
"error": "KCHTMPL0013E"
}
},
"additionalProperties": false,
"error": "KCHTMPL0030E"
},
"interface": {
"description": "Host network interface. This indicates how to configure the host network interface (Ethernet, Bond, VLAN) as direct macvtap or as OVS interface to a VM.",
"type": "object",
"properties": {
"type": {
"description": "Host network interface type. Valid types are: 'macvtap' for host network interface (Ethernet, Bond, VLAN) to be connected as direct MacVTap or 'ovs' for openvswitch host network interface to be connected as virtual switch to a VM.",
"type": "string",
"required": true,
"pattern": "^(macvtap|ovs)$",
"error": "KCHTMPL0034E"
},
"name": {
"description": "The host network interface name. It should be name of host network interface(Ethernet, Bond, VLAN) for type 'macvtap' and name of host openvswitch bridge interface for type ovs",
"type": "string",
"required": true,
"error": "KCHTMPL0035E"
},
"mode": {
"description": "Only applicable for macvtap interface type. That indicates whether packets will be delivered directly to target device (bridge) or to the external bridge (vepa-capable bridge).",
"type": "string",
"pattern": "^(bridge|vepa)$",
"error": "KCHTMPL0036E"
}
},
"additionalProperties": false,
"error": "KCHTMPL0038E"
}
},
"properties": {
"storagepools_create": {
"type": "object",
"error": "KCHPOOL0026E",
"properties": {
"name": {
"description": "The name of the Storage Pool",
"type": "string",
"required": true,
"minLength": 1,
"pattern": "^[^/]*$",
"error": "KCHPOOL0016E"
},
"type": {
"description": "The type of the defined Storage Pool",
"type": "string",
"required": true,
"pattern": "^dir|netfs|logical|kimchi-iso|iscsi|scsi$",
"error": "KCHPOOL0017E"
},
"path": {
"description": "The path of the defined Storage Pool",
"type": "string",
"error": "KCHPOOL0018E"
},
"source": {
"description": "Dictionary containing source information of the pool",
"type": "object",
"properties": {
"host": {
"description": "IP or hostname of server for a pool backed from a remote host",
"type": "string",
"error": "KCHPOOL0019E"
},
"path": {
"description": "Export path on NFS server for NFS pool",
"type": "string",
"error": "KCHPOOL0018E"
},
"devices": {
"description": "Array of devices to be used in the Storage Pool",
"type": "array",
"minItems": 1,
"uniqueItems": true,
"error": "KCHPOOL0021E",
"items": {
"description": "Full path of the block device node",
"type": "string",
"error": "KCHPOOL0020E"
}
},
"target": {
"description": "Target IQN of an iSCSI pool",
"type": "string",
"error": "KCHPOOL0022E"
},
"port": {
"description": "Listening port of a remote storage server",
"type": "integer",
"minimum": 1,
"maximum": 65535,
"error": "KCHPOOL0023E"
},
"adapter_name": {
"description": "SCSI host name",
"type": "string",
"error": "KCHPOOL0030E"
},
"auth": {
"description": "Storage back-end authentication information",
"type": "object",
"properties": {
"username": {
"description": "Login username of the iSCSI target",
"type": "string",
"error": "KCHPOOL0024E"
},
"password": {
"description": "Login password of the iSCSI target",
"type": "string",
"error": "KCHPOOL0025E"
}
}
},
"from_vg": {
"description": "Indicate if a logical pool will be created from an existing VG or not",
"type": "boolean",
"error": "KCHPOOL0026E"
}
}
}
}
},
"storagepool_update": {
"type": "object",
"properties": {
"autostart": {
"description": "Set autostart value of the pool",
"type": "boolean"
},
"disks": {
"description": "List of disks/partitions to be added",
"type": "array",
"items": { "type": "string" },
"minItems": 1,
"uniqueItems": true
}
},
"additionalProperties": false
},
"storagevolumes_create": {
"type": "object",
"properties": {
"name": {
"description": "The name of the Storage Volume",
"type": "string",
"minLength": 1,
"error": "KCHVOL0013E"
},
"capacity": {
"description": "The total size (MiB) of the storage volume",
"type": "number",
"minimum": 1,
"error": "KCHVOL0020E"
},
"upload": {
"description": "When the storage volume will be uploaded",
"type": "boolean",
"error": "KCHVOL0025E"
},
"allocation": {
"description": "The size(MiB) of allocation when create the storage volume",
"type": "number",
"minimum": 1,
"error": "KCHVOL0014E"
},
"format": {
"description": "The format of the volume",
"type": "string",
"pattern": "^(|qcow|qcow2|qed|raw|vmdk|vpc)$",
"error": "KCHVOL0015E"
},
"url": {
"description": "The remote URL of the storage volume",
"type": "string",
"pattern": "^(http|ftp)[s]?://",
"error": "KCHVOL0021E"
}
}
},
"storagevolume_update": {
"type": "object",
"properties": {
"chunk": {
"description": "Upload storage volume chunk",
"error": "KCHVOL0024E",
"required": true
},
"chunk_size": {
"description": "Chunk size of uploaded storage volume",
"type": "string",
"required": true,
"error": "KCHVOL0024E"
}
},
"additionalProperties": false
},
"vms_create": {
"type": "object",
"error": "KCHVM0016E",
"properties": {
"name": {
"description": "The name of the new VM",
"type": "string",
"pattern": "^[^/]*$",
"error": "KCHVM0011E"
},
"title": {
"description": "Title of VM",
"type": "string",
"error": "KCHVM0085E"
},
"description": {
"description": "Description of VM",
"type": "string",
"error": "KCHVM0086E"
},
"template": {
"description": "The URI of a template to use when building a VM",
"type": "string",
"pattern": "^/plugins/kimchi/templates/(.*?)/?$",
"required": true,
"error": "KCHVM0012E"
},
"storagepool": {
"description": "Assign a specefic Storage Pool to the new VM",
"type": "string",
"pattern": "^/plugins/kimchi/storagepools/[^/]+/?$",
"error": "KCHVM0013E"
},
"graphics": { "$ref": "#/kimchitype/graphics" }
}
},
"vm_update": {
"type": "object",
"properties": {
"name": {
"description": "New name of VM",
"type": "string",
"pattern": "^[^/]*$",
"minLength": 1,
"error": "KCHVM0011E"
},
"title": {
"description": "Title of VM",
"type": "string",
"error": "KCHVM0085E"
},
"description": {
"description": "Description of VM",
"type": "string",
"error": "KCHVM0086E"
},
"bootorder": {
"description": "Boot order",
"type": "array",
"error": "KCHVM0052E",
"items": [
{"type": "string",
"enum": ["hd", "cdrom", "network", "fd"]
},
{"type": "string",
"enum": ["hd", "cdrom", "network", "fd"]
},
{"type": "string",
"enum": ["hd", "cdrom", "network", "fd"]
},
{"type": "string",
"enum": ["hd", "cdrom", "network", "fd"]
}
],
"minItems": 1,
"maxItems": 4,
"additionalItems": false,
"uniqueItems": true
},
"bootmenu": {
"description": "Bootmenu on guest power on",
"error": "KCHVM0053E",
"type": "boolean"
},
"autostart": {
"description": "Enable/Disable guest autostart",
"type": "boolean"
},
"users": {
"description": "Array of users who have permission to the VM",
"type": "array",
"uniqueItems": true,
"error": "KCHVM0023E",
"items": {
"description": "User name",
"type": "string",
"error": "KCHVM0024E"
}
},
"groups": {
"description": "Array of groups who have permission to the VM",
"type": "array",
"uniqueItems": true,
"error": "KCHVM0025E",
"items": {
"description": "Group name",
"type": "string",
"error": "KCHVM0026E"
}
},
"graphics": {
"description": "Graphics information from guest",
"type": "object",
"properties": {
"passwd": {
"description": "New graphics password.",
"type": "string",
"error": "KCHVM0031E"
},
"passwdValidTo": {
"description": "Life time for the graphics password.",
"type": "number",
"error": "KCHVM0032E"
},
"type": {
"description": "Graphics type",
"type": "string",
"enum": ["spice", "vnc"],
"error": "KCHVM0054E"
}
}
},
"cpu_info": { "$ref": "#/kimchitype/cpu_info" },
"memory": { "$ref": "#/kimchitype/memory" },
"console": {
"description": "type of the console attached to the guest in s390x architecture",
"type": "string",
"pattern": "^sclp|virtio$",
"error": "KCHVM0088E"
}
},
"additionalProperties": false
},
"vm_migrate": {
"type": "object",
"properties": {
"remote_host": {
"description": "IP address or hostname of the remote server",
"type": "string",
"minLength": 1,
"required": true,
"error": "KCHVM0060E"
},
"user": {
"description": "User of the remote server",
"type": "string",
"minLength": 1,
"error": "KCHVM0059E"
},
"password": {
"description": "Password of the user in the remote server",
"type": "string",
"error": "KCHVM0069E"
},
"enable_rdma": {
"description": "Enables RDMA transport",
"type": "boolean",
"error": "KCHVM0091E"
}
},
"additionalProperties": false
},
"networks_create": {
"type": "object",
"error": "KCHNET0016E",
"properties": {
"name": {
"description": "The name of the new network",
"type": "string",
"minLength": 1,
"required": true,
"pattern": "^[^/\"]*$",
"error": "KCHNET0011E"
},
"connection": {
"description": "Specifies how this network should be connected to the other networks",
"type": "string",
"required": true,
"pattern": "^isolated|nat|bridge|macvtap|vepa|passthrough$",
"error": "KCHNET0012E"
},
"subnet": {
"description": "Network segment in slash-separated format with ip address and prefix or netmask",
"type": "string",
"error": "KCHNET0013E"
},
"interfaces": {
"description": "An array of network interfaces of the host",
"type": "array",
"minItems": 1,
"error": "KCHNET0014E"
},
"vlan_id": {
"description": "Network's VLAN ID",
"type": "integer",
"maximum": 4094,
"minimum": 1,
"error": "KCHNET0015E"
}
}
},
"network_update": {
"type": "object",
"additionalProperties": false,
"error": "KCHAPI0001E",
"properties": {
"name": {
"description": "The new name of the network",
"type": "string",
"minLength": 1,
"pattern": "^[^/\"]*$",
"error": "KCHNET0011E"
},
"subnet": {
"description": "Network segment in slash-separated format with ip address and prefix or netmask",
"type": "string",
"error": "KCHNET0013E"
},
"interfaces": {
"description": "An array of network interfaces of the host",
"type": "array",
"error": "KCHNET0014E"
},
"vlan_id": {
"description": "Network's VLAN ID",
"type": "integer",
"maximum": 4094,
"minimum": 1,
"error": "KCHNET0015E"
}
}
},
"vmifaces_create": {
"type": "object",
"error": "KCHVMIF0007E",
"properties": {
"type": {
"description": "The type of VM network interface that libvirt supports. Type 'macvtap' for host network interface (Ethernet, Bond, VLAN) to be connected as direct MacVTap or 'ovs' for openvswitch host network interface to be connected as virtual switch to a VM or 'network' for libvirt virtual network to be connected to VM. ",
"type": "string",
"required": true,
"pattern": "^network|macvtap|ovs$",
"error": "KCHVMIF0004E"
},
"network": {
"description": "the name of one available network",
"type": "string",
"error": "KCHVMIF0005E"
},
"source": {
"description": "The host network interface name. It should be name of host network interface(Ethernet, Bond, VLAN) for type 'macvtap' and name of host openvswitch bridge interface for type ovs",
"type": "string",
"error": "KCHVMIF0016E"
},
"mode": {
"description": "Only applicable for macvtap ifaces type. That indicates whether packets will be delivered directly to target device (bridge) or to the external bridge (vepa-capable bridge)",
"type": "string",
"pattern": "^bridge|vepa$",
"error": "KCHVMIF0017E"
},
"model": {
"description": "model of emulated network interface card",
"type": "string",
"pattern": "^ne2k_pci|i82551|i82557b|i82559er|rtl8139|e1000|pcnet|virtio$",
"error": "KCHVMIF0006E"
},
"mac": {
"description": "Network Interface Card MAC address",
"type": "string",
"pattern": "(^$)|^(([0-9a-fA-F]{2}:){5}[0-9a-fA-F]{2}$)",
"error": "KCHVMIF0010E"
}
}
},
"vmiface_update": {
"type": "object",
"error": "KCHVMIF0008E",
"properties": {
"mac": {
"description": "Network Interface Card MAC address",
"type": "string",
"pattern": "^([0-9a-fA-F]{2}:){5}[0-9a-fA-F]{2}$",
"error": "KCHVMIF0010E"
}
}
},
"templates_create": {
"type": "object",
"error": "KCHTMPL0016E",
"properties": {
"name": {
"description": "The name of the template",
"type": "string",
"pattern": "^[^ ]+( +[^ ]+)*$",
"minLength": 1,
"error": "KCHTMPL0008E"
},
"icon": {
"description": "The template icon path",
"type": "string",
"pattern": "^plugins/kimchi/images/",
"error": "KCHTMPL0009E"
},
"os_distro": {
"description": "Distribution name of the Operating System",
"type": "string",
"minLength": 1,
"error": "KCHTMPL0010E"
},
"os_version": {
"description": "Version of the Operating System",
"type": "string",
"minLength": 1,
"error": "KCHTMPL0011E"
},
"memory": { "$ref": "#/kimchitype/memory" },
"source_media": {
"type" : "object",
"required": true,
"properties" : {
"type": {
"description": "Type of source media: disk or netboot",
"required": true,
"type": "string",
"pattern": "^disk|netboot$"
},
"path": {
"description": "Path for installation media (ISO, disk, remote ISO)",
"type": "string",
"pattern" : "^((/)|(http)[s]?:|[t]?(ftp)[s]?:)+.*$"
}
},
"additionalProperties": false
},
"disks": {
"description": "List of disks",
"type": "array",
"items": {
"type": "object",
"properties": {
"index": {
"description": "Index of the disk",
"type": "integer",
"minimum": 0
},
"format": {
"description": "Type of the image of the disk",
"type": "string",
"pattern": "^(qcow|qcow2|qed|raw|vmdk|vpc)$",
"error": "KCHTMPL0027E"
},
"size": {
"description": "Size (GB) of the disk",
"type": "number",
"minimum": 1,
"error": "KCHTMPL0022E"
},
"pool": {
"description": "Storage pool information",
"type": "object",
"properties": {
"name": {
"description": "Location (URI) of the storage pool",
"type": "string",
"pattern": "^/plugins/kimchi/storagepools/[^/]+/?$",
"error": "KCHTMPL0015E"
}
}
}
}
},
"minItems": 1,
"uniqueItems": true
},
"networks": {
"description": "list of which networks will be assigned to the new VM.",
"type": "array",
"items": { "type": "string" },
"error": "KCHTMPL0017E"
},
"interfaces": {
"description": "list of host interfaces to be assigned to new VM",
"type": "array",
"items": { "ref": "#/kimchitype/interface"},
"error": "KCHTMPL0037E"
},
"folder": {
"description": "Folder",
"type": "array",
"items": { "type": "string" }
},
"graphics": { "$ref": "#/kimchitype/graphics" },
"cpu_info": { "$ref": "#/kimchitype/cpu_info" },
"console": {
"description": "type of the console attached to the guest in s390x architecture",
"type": "string",
"pattern": "^sclp|virtio$",
"error": "KCHTMPL0044E"
}
},
"additionalProperties": false,
"error": "KCHAPI0001E"
},
"storageservers_get_list": {
"type": "object",
"properties": {
"_target_type": {
"description": "List storage servers of given type",
"type": "string",
"pattern": "^netfs|iscsi$"
}
},
"additionalProperties": false,
"error": "KCHAPI0001E"
},
"storagetargets_get_list": {
"type": "object",
"properties": {
"_target_type": {
"description": "List storage servers of given type",
"type": "string",
"pattern": "^netfs|iscsi$"
},
"_server_port": {
"description": "the port of iscsi storage servers",
"type": "string",
"pattern": "^[0-9]{1,5}$"
}
},
"additionalProperties": false,
"error": "KCHAPI0001E"
},
"vmstorages_create": {
"type": "object",
"error": "KCHVMSTOR0012E",
"properties": {
"type": {
"description": "The storage type",
"type": "string",
"pattern": "^cdrom|disk$",
"required": true,
"error": "KCHVMSTOR0002E"
},
"pool": {
"description": "Storage pool name disk image locate in",
"type": "string",
"minLength": 1,
"error": "KCHVMSTOR0012E"
},
"vol": {
"description": "Storage volume name of disk image",
"type": "string",
"minLength": 1,
"error": "KCHVMSTOR0012E"
},
"path": {
"description": "Path of iso image file or disk mount point",
"type": "string",
"pattern": "^((/)|(http)[s]?:|[t]?(ftp)[s]?:)+.*$",
"error": "KCHVMSTOR0003E"
}
}
},
"vmstorage_update": {
"type": "object",
"error": "KCHVMSTOR0013E",
"properties": {
"path": {
"description": "Path of iso image file or disk mount point",
"type": "string",
"required": true,
"pattern": "^(|(/)|(http)[s]?:|[t]?(ftp)[s]?:)+.*$",
"error": "KCHVMSTOR0003E"
}
},
"additionalProperties": false
},
"template_update": {
"type": "object",
"properties": {
"name": {
"description": "The name of the template",
"type": "string",
"pattern": "^[^ ]+( +[^ ]+)*$",
"minLength": 1,
"error": "KCHTMPL0008E"
},
"icon": {
"description": "The template icon path",
"type": "string",
"pattern": "^plugins/kimchi/images/",
"error": "KCHTMPL0009E"
},
"os_distro": {
"description": "Distribution name of the Operating System",
"type": "string",
"minLength": 1,
"error": "KCHTMPL0010E"
},
"os_version": {
"description": "Version of the Operating System",
"type": "string",
"minLength": 1,
"error": "KCHTMPL0011E"
},
"memory": { "$ref": "#/kimchitype/memory" },
"cdrom": {
"description": "Path for cdrom",
"type": "string",
"pattern": "^((/)|(http)[s]?:|[t]?(ftp)[s]?:)+.*$",
"error": "KCHTMPL0014E"
},
"disks": {
"description": "List of disks",
"type": "array",
"items": {
"type": "object",
"properties": {
"index": {
"description": "Index of the disk",
"type": "integer",
"minimum": 0
},
"size": {
"description": "Size (GB) of the disk",
"type": "integer",
"minimum": 1,
"error": "KCHTMPL0022E"
},
"format": {
"description": "Type of the image of the disk",
"type": "string",
"pattern": "^(qcow|qcow2|qed|raw|vmdk|vpc)$",
"error": "KCHTMPL0027E"
},
"pool": {
"description": "Storage pool information",
"type": "object",
"properties": {
"name": {
"description": "Location (URI) of the storage pool",
"type": "string",
"pattern": "^/plugins/kimchi/storagepools/[^/]+/?$",
"error": "KCHTMPL0015E"
}
}
}
}
},
"minItems": 1,
"uniqueItems": true,
"error": "KCHTMPL0033E"
},
"networks": {
"description": "list of which networks will be assigned to the new VM.",
"type": "array",
"items": { "type": "string" },
"error": "KCHTMPL0017E"
},
"interfaces": {
"description": "list of host interfaces to be assigned to new VM",
"type": "array",
"items": { "ref": "#/kimchitype/interface"},
"error": "KCHTMPL0037E"
},
"folder": {
"description": "Folder",
"type": "array",
"items": { "type": "string" }
},
"graphics": { "$ref": "#/kimchitype/graphics" },
"cpu_info": { "$ref": "#/kimchitype/cpu_info" },
"console": {
"description": "type of the console attached to the guest in s390x architecture",
"type": "string",
"pattern": "^sclp|virtio$",
"error": "KCHTMPL0044E"
}
},
"additionalProperties": false,
"error": "KCHAPI0001E"
},
"devices_get_list": {
"type": "object",
"properties": {
"_cap": {
"description": "List specific type of device",
"type": "string",
"pattern": "^fc_host|net|pci|scsi|scsi_host|storage|system|usb|usb_device$",
"error": "KCHDEVS0001E"
},
"_passthrough": {
"description": "List only devices eligible to be assigned to guest",
"type": "string",
"pattern": "^true|false$",
"error": "KCHDEVS0002E"
},
"_passthrough_affected_by": {
"description": "List the affected devices in the same group of a certain device to be assigned to guest",
"type": "string",
"pattern": "^[_A-Za-z0-9-]+$",
"error": "KCHDEVS0003E"
},
"_available_only": {
"description": "List only devices that are not being used by any other VM",
"type": "string",
"pattern": "^true|false$",
"error": "KCHDEVS0004E"
}
},
"additionalProperties": false,
"error": "KCHAPI0001E"
},
"vmhostdevs_create": {
"type": "object",
"properties": {
"name": {
"description": "Then name of the device to assign to VM",
"type": "string",
"required": true,
"pattern": "^[_A-Za-z0-9-]+$",
"error": "KCHVMHDEV0004E"
}
},
"error": "KCHAPI0001E"
}
}
}
Python
1
https://gitee.com/mirrors/kimchi.git
git@gitee.com:mirrors/kimchi.git
mirrors
kimchi
kimchi
master

搜索帮助

53164aa7 5694891 3bd8fe86 5694891