Finally I was able to rename the disks, the problem was about handling that
put request and my inability to check libcurl documentation (I was treating
the XML I was sending as a string instead of a file).
Sorry because I needed this script to be working as fast as I could, so I
didn't try to reproduce the 500 error, but I wouldn't be suprised if it was
because of a totally wrong URL.
Sorry again :(
On Wed, Jun 28, 2017 at 1:56 PM, Juan Hernández <jhernand(a)redhat.com> wrote:
On 06/28/2017 01:34 PM, Bruno Rodriguez wrote:
> Shit, I got it. Sorry
>
> The problem is that I was accessing to the v4 disk-attachment id and I
> was getting everything quite messed up. I was doing all of this while
> creating a machine, so I was trying to rename the disk at the same time
> it's being created.
>
> I'll delete all the "if ($ovirt_major == 3)" I have in my code. If I
> have any problem I'll let you know.
>
> Thank you
>
If what you want to do is set the name of the disk for a VM that you are
creating then you can just set it when adding the disk:
POST /ovirt-engine/api/vms/123/diskattachments
<disk_attachment>
<disk>
<name>yourfavoritename</name>
...
</disk>
...
</disk_attachment>
That way you don't need to modify it later.
Also, in general, try to wait till the objects are completely created
before trying to use or update them. For disks in particular, it is good
idea to repeatedly retrieve the disk till the 'status' is 'OK':
https://github.com/oVirt/ovirt-engine-sdk/blob/master/
sdk/examples/add_vm_disk.py#L73-L80
(This is an example from the Python SDK, but you get the idea. There are
SDKs for Ruby and Java as well.)
Finally, if you get a 500 error then there is most probably a bug. The
API should never return that, even if you try to do something that
doesn't make sense it should respond with a reasonable error message. If
you keep getting that 500 error please share the details.
> On Wed, Jun 28, 2017 at 1:03 PM, Juan Hernández <jhernand(a)redhat.com
> <mailto:jhernand@redhat.com>> wrote:
>
> On 06/28/2017 12:55 PM, Bruno Rodriguez wrote:
> > I'm sorry about bothering you again, but after trying it some
times I'm
> > still getting a "500 Internal Server Error". I'm using a
REST
client
> > instead of CURL and I tried adding a "Version: 3" to headers and
used
> > the URL with the v3 as well.
> >
> > I'm issuing a PUT of
> >
> > <disk><alias>Alias_for_disk</alias></disk>
> >
> > To the URL
> >
> >
https://myserver/ovirt-engine/api/v3/vms/62498f51-0203-48b9-
83c8-4c6f3bdfe05c/disks/583ed952-46a8-4bc5-8a27-8660e4a24ea2
> <
https://myserver/ovirt-engine/api/v3/vms/62498f51-
0203-48b9-83c8-4c6f3bdfe05c/disks/583ed952-46a8-4bc5-8a27-8660e4a24ea2>
> >
> > I mean, I can live without it but we are using oVirt as a "static
> > virtualization" environment and is quite useful for us being able
to
> > recognize easily each disk by its server name. In case I have to
wait
> > until the 4.2 API version to automatize this I'll do :(
> >
>
> That should work. Can you please check if you get any useful message
in
> /var/log/ovirt-engine/server.log or /var/log/ovirt-engine/engine.
log?
>
> >
> >
> > On Wed, Jun 28, 2017 at 11:18 AM, Bruno Rodriguez <bruno(a)pic.es
<mailto:bruno@pic.es>
> > <mailto:bruno@pic.es <mailto:bruno@pic.es>>> wrote:
> >
> > Thank you very much !!!
> >
> > I expected I was missing something like that. Thanks again!
> >
> > On Wed, Jun 28, 2017 at 11:12 AM, Juan Hernández
> > <jhernand(a)redhat.com <mailto:jhernand@redhat.com>
> <mailto:jhernand@redhat.com <mailto:jhernand@redhat.com>>>
wrote:
> >
> > On 06/28/2017 10:43 AM, Bruno Rodriguez wrote:
> > > Thank you, Daniel
> > >
> > > I tried a PUT with the same XML body, I got a "405
> Method Not Allowed".
> > > It's quite strange, there must be someting I'm
missing
> > >
> >
> > The operation to update a disk will be introduced in
version 4
> > of the
> > API with version 4.2 of the engine. Meanwhile the way to
> update
> > the disk
> > is to use version 3 of the API and the disks
> sub-collection of the
> > virtual machine. That means that if you have a VM with id
123
> > and a disk
> > with id 456 you can send a request like this:
> >
> > PUT /ovirt-engine/api/v3/vms/123/disks/456
> >
> > With a request body like this:
> >
> > <disk>
> > <alias>newalias</alias>
> > </disk>
> >
> > Note that you can use the above "v3" prefix in the URL
or
> else the
> > "Version: 3" header. A complete example using curl:
> >
> > ---8<---
> > #!/bin/bash -ex
> >
> > url="https://.../ovirt-engine/api"
> > user="admin@internal"
> > password="..."
> > vm_id="..."
> > disk_id="..."
> >
> > curl \
> > --verbose \
> > --cacert "ca.pem" \
> > --header "Version: 3" \
> > --header "Content-Type: application/xml" \
> > --user "${user}:${password}" \
> > --request PUT \
> > --data "
> > <disk>
> > <alias>newalias</alias>
> > </disk>
> > " \
> > "${url}/vms/${vm_id}/disks/${disk_id}"
> > --->8---
> >
> > >
> > > On Wed, Jun 28, 2017 at 10:07 AM, Daniel Erez
> <derez(a)redhat.com <mailto:derez@redhat.com>
<mailto:derez@redhat.com
> <mailto:derez@redhat.com>>
> > > <mailto:derez@redhat.com <mailto:derez@redhat.com>
<mailto:derez@redhat.com
> <mailto:derez@redhat.com>>>> wrote:
> > >
> > > Hi,
> > >
> > > Updating is done using the PUT method.
> > > Please try that with the same XML body.
> > >
> > > Thanks,
> > > Daniel
> > >
> > > On Wed, Jun 28, 2017 at 10:26 AM Bruno Rodriguez <
bruno(a)pic.es <mailto:bruno@pic.es> <mailto:bruno@pic.es
> <mailto:bruno@pic.es>>
> > > <mailto:bruno@pic.es <mailto:bruno@pic.es>
> <mailto:bruno@pic.es <mailto:bruno@pic.es>>>> wrote:
> > >
> > > Hello everyone,
> > >
> > > I'm having some problems about renaming some
> disks (setting a
> > > different alias, name or description) for VMs
> disks created from
> > > a template. When I get this URL
> > >
> > >
>
https://ovirt-manager/ovirt-engine/api/disks/0123
> <
https://ovirt-manager/ovirt-engine/api/disks/0123>
> > <
https://ovirt-manager/ovirt-engine/api/disks/0123
> <
https://ovirt-manager/ovirt-engine/api/disks/0123>>
> > >
> <
https://ovirt-manager/ovirt-engine/api/disks/0123
> <
https://ovirt-manager/ovirt-engine/api/disks/0123>
> > <
https://ovirt-manager/ovirt-engine/api/disks/0123
> <
https://ovirt-manager/ovirt-engine/api/disks/0123>>>
> > >
> > > I can see are the methods sparsify, export, move
> and copy. I
> > > tried to POST the following XML to the previous
> URL with no
> > > result (as expected, it won't work)
> > >
> > > <disk>
> > > <alias>my_machine_Disk1</alias>
> > > </disk>
> > >
> > > I'm quite sure I'm thinking about it in a
wrong
> way (as usual).
> > > Any help would be welcome...
> > >
> > > Thank you in advance
> > >
> > > --
> > > Bruno Rodríguez Rodríguez
> > >
> > > *Port d'Informació Científica (PIC)*
> > >
> > > _______________________________________________
> > > Users mailing list
> > > Users(a)ovirt.org <mailto:Users@ovirt.org>
> <mailto:Users@ovirt.org <mailto:Users@ovirt.org>>
> > <mailto:Users@ovirt.org <mailto:Users@ovirt.org>
> <mailto:Users@ovirt.org <mailto:Users@ovirt.org>>>
> > >
http://lists.ovirt.org/mailman/listinfo/users
> <
http://lists.ovirt.org/mailman/listinfo/users>
> > <
http://lists.ovirt.org/mailman/listinfo/users
> <
http://lists.ovirt.org/mailman/listinfo/users>>
> > > <
http://lists.ovirt.org/mailman/listinfo/users
> <
http://lists.ovirt.org/mailman/listinfo/users>
> > <
http://lists.ovirt.org/mailman/listinfo/users
> <
http://lists.ovirt.org/mailman/listinfo/users>>>
> > >
> > >
> > >
> > >
> > > --
> > > Bruno Rodríguez Rodríguez
> > >
> > > *Port d'Informació Científica (PIC)*
> > > Campus UAB - Edificio D,
> > > C / Albareda, s / n
> > > 08193-Bellaterra (Barcelona), España
> > > Telf. +34 93 170 27 30 <tel:%2B34%2093%20170%2027%2030>
> <tel:%2B34%2093%20170%2027%2030>
> > > GPS coordenadas: 41.500850 2.110628
> > >
> > > "Si algo me ha enseñado el tetris, es que los errores se
> acumulan y los
> > > triunfos desaparecen"
> > >
> > >
> > > _______________________________________________
> > > Users mailing list
> > > Users(a)ovirt.org <mailto:Users@ovirt.org>
> <mailto:Users@ovirt.org <mailto:Users@ovirt.org>>
> > >
http://lists.ovirt.org/mailman/listinfo/users
> <
http://lists.ovirt.org/mailman/listinfo/users>
> > <
http://lists.ovirt.org/mailman/listinfo/users
> <
http://lists.ovirt.org/mailman/listinfo/users>>
> > >
> >
> >
> >
> >
> > --
> > Bruno Rodríguez Rodríguez
> >
> > *Port d'Informació Científica (PIC)*
> > Campus UAB - Edificio D,
> > C / Albareda, s / n
> > 08193-Bellaterra (Barcelona), España
> > Telf. +34 93 170 27 30 <tel:%2B34%2093%20170%2027%2030>
> > GPS coordenadas: 41.500850 2.110628
> >
> > "Si algo me ha enseñado el tetris, es que los errores se
> acumulan y
> > los triunfos desaparecen"
> >
> >
> >
> >
> > --
> > Bruno Rodríguez Rodríguez
> >
> > *Port d'Informació Científica (PIC)*
> > Campus UAB - Edificio D,
> > C / Albareda, s / n
> > 08193-Bellaterra (Barcelona), España
> > Telf. +34 93 170 27 30 <tel:%2B34%2093%20170%2027%2030>
> > GPS coordenadas: 41.500850 2.110628
> >
> > "Si algo me ha enseñado el tetris, es que los errores se acumulan
> y los
> > triunfos desaparecen"
>
>
>
>
> --
> Bruno Rodríguez Rodríguez
>
> *Port d'Informació Científica (PIC)*
> Campus UAB - Edificio D,
> C / Albareda, s / n
> 08193-Bellaterra (Barcelona), España
> Telf. +34 93 170 27 30
> GPS coordenadas: 41.500850 2.110628
>
> "Si algo me ha enseñado el tetris, es que los errores se acumulan y los
> triunfos desaparecen"
--
Bruno Rodríguez Rodríguez
*Port d'Informació Científica (PIC)*
Campus UAB - Edificio D,
C / Albareda, s / n
08193-Bellaterra (Barcelona), España
Telf. +34 93 170 27 30
GPS coordenadas: 41.500850 2.110628
"Si algo me ha enseñado el tetris, es que los errores se acumulan y los
triunfos desaparecen"