
now we have support network get/create/delete/activate/deactivate Now we need to support the attach/detach/ <https://github.com/kimchi-project/kimchi/wiki/customize-VM#organization-of-sub-resources-and-rest-api-exposition> a Network to a guest. And get the info of Network attached to a guest. libvirt supports several types of network interfaces: 'bridge','network','user','ethernet','direct','hostdev','mcast', 'server', 'client' but there is not a unique "name" attribute for "interface" element.(more libvirt network interfaces info <http://libvirt.org/formatdomain.html#elementsNICS>) That is not good to define our REST API. But for "network" type resource, there is a "network" attribute of "source" resource. And the value of "network" attribute is the name of network that we defined by /networks POST method. the "network" type + "network" attribute is unique. We can define the Network Interfaces like this to support "network" type Interfaces: GET /vms/*name*/Interfaces?type=network&network="default" But this is not RESTFUL. Maybe We can also name a Network Interface by the Interface mac. The mac is unique. GET /vms/*name*/Interfaces/mac The best way for user is get the NICS name in guest. such as eth0, eth1.... GET /vms/*name*/Interfaces/eth0 GET /vms/*name*/Interfaces/eth1 But there is a problem, we need get the nic name and mac from guest. and Make a map in kimchi DB. also the nic name may change, we need make the map consistence with guest nic name. -- Sheldon Feng(???)<shaohef@linux.vnet.ibm.com> IBM Linux Technology Center