On 03/29/2016 03:07 PM, Arpit Makhiyaviya wrote:
> Thanks for quick response.
> we already knew this and we are passing following xml when calling Start
> action.
>
What version of the engine are you using exactly? This is a known bug.
The "cloud_init" element is ignored. See here for details:
Cloud-Init payload not passed into VM via python SDK
https://bugzilla.redhat.com/1305904
That will be fixed in version 3.6.5. If you have a version 3.6.2 or
newer then you can use the workaround described there, using the
"initailization" element directly.
> <action>
> <vm>
> <initialization>
> <cloud_init>
> <host>
> <address>vm-cloud-init-restapi</address>
> </host>
> <authorized_keys>
> <authorized_key>
> <user>
> <user_name>root</user_name>
> </user>
> <key>ssh-rsa restapi-cloud-init-ssh-key root@localdomain</key>
> </authorized_key>
> </authorized_keys>
> <regenerate_ssh_keys>true</regenerate_ssh_keys>
> <timezone>Atlantic/Reykjavik</timezone>
> <users>
> <user>
> <user_name>root</user_name>
> <password>SuperSecretPassword!</password>
> </user>
> </users>
> <network_configuration>
> <nics>
> <nic>
> <name>eth0</name>
> <boot_protocol>STATIC</boot_protocol>
> <network>
> <ip address="192.168.2.11" netmask="255.255.255.0"
> gateway="192.168.2.254" />
> </network>
> <on_boot>true</on_boot>
> </nic>
> <nic>
> <name>eth1</name>
> <boot_protocol>DHCP</boot_protocol>
> <on_boot>true</on_boot>
> </nic>
> </nics>
> <dns>
> <servers>
> <host>
> <address>10.20.30.100</address>
> </host>
> </servers>
> <search_domains>
> <host>
> <address>domain.your.rhevm.com
> <http://domain.your.rhevm.com></address>
> </host>
> </search_domains>
> </dns>
> </network_configuration>
> <files>
> <file>
> <name>/tmp/file1.txt</name>
> <content>line 1
> line 2
> and now something special
> !@#$%^&*()_+</content>
> <type>PLAINTEXT</type>
> </file>
> </files>
> </cloud_init>
> </initialization>
> </vm>
> </action>
>
> we also found following link . is this related to my issue?
>
> https://gerrit.ovirt.org/#/c/50240/2
>
> Regards,
> *Arpit Makhiyaviya*
> Software Engineer
> +91-79-40038284
> +91-971-437-6669
> <http://www.sculptsoft.com>
>
> On Tue, Mar 29, 2016 at 6:24 PM, Renout Gerrits <mail@renout.nl
> <mailto:mail@renout.nl>> wrote:
>
> In the more recent versions you have to use 'use_cloud_init=True' in
> the api, which isn't described in most documentation yet. Maybe
> thats the reason it isn't working?
>
> Here's a working snippet:
>
> vm = api.vms.get(name=vm_name)
>
> action = params.Action(
> use_cloud_init=True,
> vm=params.VM(
> initialization=params.Initialization(
> regenerate_ssh_keys=True,
> host_name=vm_fqdn,
> nic_configurations=params.GuestNicsConfiguration(
> nic_configuration=[
> params.GuestNicConfiguration(
> name="eth0",
> boot_protocol="static",
> on_boot=True,
> ip=params.IP(
> address=vm_address,
> netmask=vm_netmask,
> gateway=vm_gateway,
> ),
> ),
> ],
> ),
> ),
> ),
> )
>
> vm.start(action)
>
>
> On Tue, Mar 29, 2016 at 2:03 PM, Arpit Makhiyaviya
> <arpit.icreate@gmail.com <mailto:arpit.icreate@gmail.com>> wrote:
>
> Hello,
> we are using ovirt api with json data format.
> we have create vm from template and i want to set
> ip,macaddress,user and password for that we are using cloud_init
> for that we it can't set any options.
>
--
Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta
3ºD, 28016 Madrid, Spain
Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941 - Red Hat S.L.