{ "$schema": "https://json-structure.org/meta/core/v0/#", "$id": "https://raw.githubusercontent.com/api-evangelist/youki/refs/heads/main/json-structure/oci-runtime-config-vm-structure.json", "name": "OciRuntimeConfigVm", "vm": { "description": "configuration for virtual-machine-based containers", "type": "object", "required": [ "kernel" ], "properties": { "hypervisor": { "description": "hypervisor config used by VM-based containers", "type": "object", "required": [ "path" ], "properties": { "path": { "$ref": "defs.json#/definitions/FilePath" }, "parameters": { "$ref": "defs.json#/definitions/ArrayOfStrings" } } }, "kernel": { "description": "kernel config used by VM-based containers", "type": "object", "required": [ "path" ], "properties": { "path": { "$ref": "defs.json#/definitions/FilePath" }, "parameters": { "$ref": "defs.json#/definitions/ArrayOfStrings" }, "initrd": { "$ref": "defs.json#/definitions/FilePath" } } }, "image": { "description": "root image config used by VM-based containers", "type": "object", "required": [ "path", "format" ], "properties": { "path": { "$ref": "defs.json#/definitions/FilePath" }, "format": { "$ref": "defs-vm.json#/definitions/RootImageFormat" } } }, "hwConfig": { "description": "hardware configuration for the VM image", "type": "object", "properties": { "deviceTree": { "$ref": "defs.json#/definitions/FilePath" }, "vcpus": { "$ref": "defs.json#/definitions/uint32" }, "memory": { "$ref": "defs.json#/definitions/uint64" }, "dtdevs": { "$ref": "defs.json#/definitions/ArrayOfStrings" }, "iomems": { "type": "array", "items": { "$ref": "defs-vm.json#/definitions/IOMemEntryFormat" } }, "irqs": { "$ref": "defs.json#/definitions/ArrayOfUint32" } } } } } }