I'm ussing a foreman 1.2.1.
When I try to create a host with this json works fine.
{"host":{"build":"1","puppet_ca_proxy_id":"4","puppet_proxy_id":"4","architecture_id":"1","hostgroup_id":"3","operatingsystem_id":"21","provision_method":"build","enabled":"1","medium_id":"20","ip":"10.240.8.1","organization_id":"2","compute_attributes":{"cpus":"1","start":"1","volumes_attributes":{"new_0":{"capacity":"10G","format_type":"raw","pool_name":"disks"}},"memory":"1073741824","nics_attributes":{"0":{"bridge":"virbr0"}}},"managed":"true","compute_resource_id":11,"name":"israelo4","mac":"","ptable_id":"11","location_id":"1"}}
But this other json fails (differences highlighted)
{"host":{"mac":"","compute_attributes":{"memory":"1073741824","cpus":"1","volumes_attributes":{"new_0":{"pool_name":"disks","capacity":"10G","format_type":"raw"}},"nics_attributes":{"0":{"network":"oamtraffic"}},"start":"1"},"compute_resource_id":11,"managed":"true","operatingsystem_id":"21","puppet_ca_proxy_id":"4","hostgroup_id":"3","build":"1","name":"israelo4","medium_id":"20","enabled":"1","ptable_id":"11","puppet_proxy_id":"4","organization_id":"2","architecture_id":"1","ip":"10.240.8.1","location_id":"1","provision_method":"build"}}
Ussing web interface works fine both.
With tcpdump I can see
1- xml when I use a bridge from API
- <interface type='bridge'>*
-
<mac address='52:54:00:1b:ce:ed'/>*
-
<source bridge='virbr0'/>*
-
<model type='virtio'/>*
-
<address type='pci' domain='0x0000' bus='0x00' slot='0x03'
function='0x0'/>*
- </interface> *
2- xml when I use a network from API* (Here is the issue)*
- <interface type='bridge'>*
-
<mac address='52:54:00:30:bc:ae'/>*
-
<source bridge=''/>*
-
<model type='virtio'/>*
-
<address type='pci' domain='0x0000' bus='0x00' slot='0x03'
function='0x0'/>*
- </interface>*
3- xml when I use a bridge from web interface
- <interface type='bridge'>*
-
<mac address='52:54:00:60:e8:cd'/>*
-
<source bridge='virbr1'/>*
-
<target dev='vnet14'/>*
-
<model type='virtio'/>*
-
<alias name='net0'/>*
-
<address type='pci' domain='0x0000' bus='0x00' slot='0x03'
function='0x0'/>*
- </interface>*
4- xml when I use a network from webinterface
- <interface type='network'>*
-
<mac address='52:54:00:17:e3:3a'/>*
-
<source network='oamtraffic'/>*
-
<model type='virtio'/>*
-
<address type='pci' domain='0x0000' bus='0x00' slot='0x03'
function='0x0'/>*
- </interface>*
Any Ideas?
Thanks.