The purpose of the 'vm_fields.vlan' field was changed for v4 RHV providers.
* In the v3 API it represents the 'network name'.
* In the v4 API (if 'use_ovirt_engine_sdk' is specified in the setting as 'true') it represents the 'vnic profile id' or 'profile name (network name)'.
Example:
/api/provision_requests
1. Provision a virtual machine with one vNic where the 'profile_id' of the vNic is '9c61ef19-f8aa-4ce3-bc24-49d211c1d019'.
"vm_fields" : {
...
"vlan" : "9c61ef19-f8aa-4ce3-bc24-49d211c1d019"
}
2. Provision a virtual machine with one vNic where the 'profile_name' of the vNic is 'ovirtmgmt' and the network name is 'ovirtmgmt'.
"vm_fields" : {
...
"vlan" : "ovirtmgmt (ovirtmgmt)"
}
3. Provision a virtual machine with one vNic where the vNic has no profile.
"vm_fields" : {
...
"vlan" : "<Empty>"
}
4. Provision a virtual machine keeping the source template vNics.
"vm_fields" : {
...
"vlan" : "<Template>"
}
Description of problem:
RHEV provider=> vm provision -
Specifying vnic profile on virtual nics instead of network.
Version-Release number of selected component (if applicable):
How reproducible: 100%
Steps to Reproduce:
1. Open provision vm dialog
2. select a source template
3. go to the network tab
Actual results:
A list of networks (taken from the hosts/selected host) is displayed.
Expected results:
- If the ovirt's provider version >= 4
A list of vnic profiles should be displayed.
- ovirt's provider version < 4 should work as before.
Additional info:
Same for rest api. For version 4 ovirt provider, a 'vnic profile-id' should be supplied in the 'vlan' field and not the 'network-name'.
Example-
{
"version" : "1.1",
"template_fields" : {
"guid" :"ef14be00-27fa-11e7-9a72-54ee7525f88c"
},
"vm_fields" : {
"number_of_cpus" : 1,
"vm_name" : "vm1",
"vm_memory" : "1024",
"vlan" : "9c61ef19-f8aa-4ce3-bc24-49d211c1d019"
},
"requester" : {
"user_name" : "admin",
"owner_first_name" : "John",
"owner_last_name" : "Doe",
"owner_email" : "jdoe",
"auto_approve" : true
},
"ems_custom_attributes" : { },
"miq_custom_attributes" : { }
}
Tested on ManageIQ nightly build from July 14 2017
(Version master.20170725053733_604c5f9):
The vnic profile list on ManageIQ indeed reflect RHV vNic profile list.
For each vNic profile that exist on RHV,
VM provision worked well, the profile attached to the created VM was correct,
and the VM was run.
The VM provision request finished successfully.
For profile <Empty> -
VM provision succeeded. VM was started. Network interface was set to an empty profile.
for profile <None> -
VM provision succeeded, VM was started. Network interface was set to the template's vNic profile
** It is required to change the <None> option into something more clear,
that will reflect it's actual purpose: 'use template nics'.
On CFME version 5.9.0.8.20171109215303_ed87902 there is still the option <None>. Please take a look at Ilanit's comment #4. This option name does obscure its real purpose.
Description of problem: RHEV provider=> vm provision - Specifying vnic profile on virtual nics instead of network. Version-Release number of selected component (if applicable): How reproducible: 100% Steps to Reproduce: 1. Open provision vm dialog 2. select a source template 3. go to the network tab Actual results: A list of networks (taken from the hosts/selected host) is displayed. Expected results: - If the ovirt's provider version >= 4 A list of vnic profiles should be displayed. - ovirt's provider version < 4 should work as before. Additional info: Same for rest api. For version 4 ovirt provider, a 'vnic profile-id' should be supplied in the 'vlan' field and not the 'network-name'. Example- { "version" : "1.1", "template_fields" : { "guid" :"ef14be00-27fa-11e7-9a72-54ee7525f88c" }, "vm_fields" : { "number_of_cpus" : 1, "vm_name" : "vm1", "vm_memory" : "1024", "vlan" : "9c61ef19-f8aa-4ce3-bc24-49d211c1d019" }, "requester" : { "user_name" : "admin", "owner_first_name" : "John", "owner_last_name" : "Doe", "owner_email" : "jdoe", "auto_approve" : true }, "ems_custom_attributes" : { }, "miq_custom_attributes" : { } }