)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":16198,"name":"Ilya Popov","email":"hebulrih@gmail.com","username":"IPO"},"change_message_id":"c8ea04d946f2df2fb242638b6f69c9366381a8af","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"8ec14769_1ba595c7","updated":"2023-01-27 11:29:24.000000000","message":"After some investigation looks like that requirements of one vendor of VDI solution (to add particular devices to the domain XML) are not common for others (VDI vendors)","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"19c82264180aa374ad70204160a6eda74dcb838d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"44428d9c_e109a061","updated":"2022-12-14 14:02:01.000000000","message":"I have couple of things inline","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"},{"author":{"_account_id":16198,"name":"Ilya Popov","email":"hebulrih@gmail.com","username":"IPO"},"change_message_id":"eb44078a07d64b4eef8955236d828a1f9dd4c7db","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"82be81d1_71aa7a81","updated":"2022-12-05 08:22:53.000000000","message":"Very necessary functionality for VDI","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"63382efc6288ba1b3137e9ae5ae9ac5f77db9c62","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"8703a895_2ee88a95","updated":"2022-12-15 10:14:03.000000000","message":"mostly this looks fine.\n","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"}],"specs/2023.1/approved/libvirt-audio-device.rst":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"63382efc6288ba1b3137e9ae5ae9ac5f77db9c62","unresolved":true,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"For the purposes of using a vm with a graphical interface or vdi with an"},{"line_number":21,"context_line":"openstack, it is not possible to connect an audio device via spice."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"Use Cases"},{"line_number":24,"context_line":"---------"}],"source_content_type":"text/x-rst","patch_set":1,"id":"042543cb_d345f21f","line":21,"updated":"2022-12-15 10:14:03.000000000","message":"ok so this is for spice.\n\nwe do not support direct conenction to the vm via s spic clent \nwe only support connecting via the spice proxy\n\nis audio supported in that configuration vai horizon?","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"63382efc6288ba1b3137e9ae5ae9ac5f77db9c62","unresolved":true,"context_lines":[{"line_number":27,"context_line":"  device for instance."},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"* A user should be able to access the graphical console of an instance (via"},{"line_number":30,"context_line":"  VNC or SPICE) with audio transmission."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"Proposed change"},{"line_number":33,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"063d03f1_669ce4cd","line":30,"updated":"2022-12-15 10:14:03.000000000","message":"VNC will not support this in the context of the novncproxy which uses teh html5 web console currently unless this has change recently?\n\nby the way if VNC and RDP are installed in the guest they usaly can enable audio for the vdi usecase without changed to the vm. windows support a seperate software emulated audio service that can be enabeld in the OS. linux can also provide emulated audio devices but those will not be accable to qemu.","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"19c82264180aa374ad70204160a6eda74dcb838d","unresolved":true,"context_lines":[{"line_number":42,"context_line":"  \u003c/devices\u003e"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"To set the sound card model, it is proposed to use user metadata of the"},{"line_number":45,"context_line":"operating system image (for example, hw_sound_model, hw_sound_codec). Thus,"},{"line_number":46,"context_line":"when creating an instance from this image, the sound card will be automatically"},{"line_number":47,"context_line":"added to libvirt xml. You can specify a codec for the card, but only for two"},{"line_number":48,"context_line":"models [1]_. The codec name is suggested to be specified via the hw_sound_codec"}],"source_content_type":"text/x-rst","patch_set":1,"id":"79ebbb2c_f4d737f0","line":45,"range":{"start_line":45,"start_character":24,"end_line":45,"end_character":67},"updated":"2022-12-14 14:02:01.000000000","message":"do you need to add these as image properties to glance? \nhttps://docs.openstack.org/glance/latest/admin/useful-image-properties.html","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"63382efc6288ba1b3137e9ae5ae9ac5f77db9c62","unresolved":true,"context_lines":[{"line_number":42,"context_line":"  \u003c/devices\u003e"},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"To set the sound card model, it is proposed to use user metadata of the"},{"line_number":45,"context_line":"operating system image (for example, hw_sound_model, hw_sound_codec). Thus,"},{"line_number":46,"context_line":"when creating an instance from this image, the sound card will be automatically"},{"line_number":47,"context_line":"added to libvirt xml. You can specify a codec for the card, but only for two"},{"line_number":48,"context_line":"models [1]_. The codec name is suggested to be specified via the hw_sound_codec"}],"source_content_type":"text/x-rst","patch_set":1,"id":"83105535_e38c7eaa","line":45,"range":{"start_line":45,"start_character":24,"end_line":45,"end_character":67},"in_reply_to":"79ebbb2c_f4d737f0","updated":"2022-12-15 10:14:03.000000000","message":"need no but should\n\nthey should also be added to https://opendev.org/openstack/glance/src/branch/master/etc/metadefs/compute-libvirt-image.json\n\nthe glance metadefs is the programatic api to discover what image properties are valid. this is used by heat and horizon to generate teh dialogs used to add image properties to images.","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"19c82264180aa374ad70204160a6eda74dcb838d","unresolved":true,"context_lines":[{"line_number":57,"context_line":"  \u003c/devices\u003e"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"In the absence of the specified metadata, xml will not change."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Alternatives"},{"line_number":62,"context_line":"------------"},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"cfdcf179_d8183820","line":60,"updated":"2022-12-14 14:02:01.000000000","message":"Do we need to change anything on our novncproxy service to make this work?","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"63382efc6288ba1b3137e9ae5ae9ac5f77db9c62","unresolved":true,"context_lines":[{"line_number":57,"context_line":"  \u003c/devices\u003e"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"In the absence of the specified metadata, xml will not change."},{"line_number":60,"context_line":""},{"line_number":61,"context_line":"Alternatives"},{"line_number":62,"context_line":"------------"},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":1,"id":"1ae3c727_2f701f46","line":60,"in_reply_to":"cfdcf179_d8183820","updated":"2022-12-15 10:14:03.000000000","message":"no curerntly audio is not supported when using vnc, it is for spice but our proxy just converts the tcp socket into a websocket so that it cna be used form a web client. this will just enable vms to have a virtualised audion device.\n\n\n\nwe also need to scheduler based on this\n\nto do that a new sound traits namespace shoudl be defiend\nlike the graphics one\nhttps://github.com/openstack/os-traits/blob/master/os_traits/compute/graphics.py\n\nthe hw_sound_model and hw_sound_codec values shoudl be modeled as \n\nCOMPUTE_SOUND_* traits\n\nthe transform_image_metadata prefilter can be simple extended\n https://github.com/openstack/nova/blob/d7de0c121aa5680f8e836447b111bd5975df306c/nova/scheduler/request_filter.py#L210\n\n\n  prefix_map \u003d {\n        \u0027hw_cdrom_bus\u0027: \u0027COMPUTE_STORAGE_BUS\u0027,\n        \u0027hw_disk_bus\u0027: \u0027COMPUTE_STORAGE_BUS\u0027,\n        \u0027hw_video_model\u0027: \u0027COMPUTE_GRAPHICS_MODEL\u0027,\n        \u0027hw_vif_model\u0027: \u0027COMPUTE_NET_VIF_MODEL\u0027,\n        \u0027hw_architecture\u0027: \u0027HW_ARCH\u0027,\n        \u0027hw_emulation_architecture\u0027: \u0027COMPUTE_ARCH\u0027,\n        \u0027hw_viommu_model\u0027: \u0027COMPUTE_VIOMMU\u0027,\n    }\n    \n    -\u003e\n    \n    prefix_map \u003d {\n        \u0027hw_cdrom_bus\u0027: \u0027COMPUTE_STORAGE_BUS\u0027,\n        \u0027hw_disk_bus\u0027: \u0027COMPUTE_STORAGE_BUS\u0027,\n        \u0027hw_video_model\u0027: \u0027COMPUTE_GRAPHICS_MODEL\u0027,\n        \u0027hw_vif_model\u0027: \u0027COMPUTE_NET_VIF_MODEL\u0027,\n        \u0027hw_architecture\u0027: \u0027HW_ARCH\u0027,\n        \u0027hw_emulation_architecture\u0027: \u0027COMPUTE_ARCH\u0027,\n        \u0027hw_viommu_model\u0027: \u0027COMPUTE_VIOMMU\u0027,\n        \u0027hw_sound_model\u0027: \u0027COMPUTE_SOUND_MODEL\u0027,\n        \u0027hw_sound_codec\u0027: \u0027COMPUTE_SOUND_CODEC\u0027,\n    }\n    \n    \nthe libvirt driver and any future driver that chooses to supprot this should report the models and codec aviable based on the hypervisor version installed.\n\nthis will be required for both move operations and inital schulding to work correctly.","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"19c82264180aa374ad70204160a6eda74dcb838d","unresolved":true,"context_lines":[{"line_number":142,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":143,"context_line":""},{"line_number":144,"context_line":"* Implement unit tests for each function to cover testing of added and changed"},{"line_number":145,"context_line":"  methods."},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"Documentation Impact"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":1,"id":"ac307a59_651f3959","line":145,"updated":"2022-12-14 14:02:01.000000000","message":"you can add functional tests based on our libvirt fixture as well asserting that the xml is created properly","commit_id":"2fc10a243448cd2d3503c146b499c8b02754c3a3"}]}
