On 06/11/12 18:37, Ian Main wrote: > On Fri, Nov 02, 2012 at 11:35:44AM +0200, [email protected] wrote: >> Hi Ian: >> >> On 01/11/12 22:01, Ian Main wrote: >>> >>> Howdy guys, >>> >>> So I've been using the openstack driver as a backend for heat -> >>> deltacloud work. I just posted a few patches to resolve issues that I >>> have run into but I've now hit a more serious roadblock and that is the >> >> great thanks for those but I need some clarification: >> >> "Add user-data support to openstack driver" >> >> in this patch - are you trying to add the ability to push user-data into >> a launched instance (as opposed to server metadata, which is different)? >> If you are then Openstack has a different way of doing this, called >> 'server personality' [1] which we already have implemented. You have to >> pass a hash that matches the data you want pushed with where on the >> server you want it, like: {path1='server_path1'. content1='contents1', >> path2='server_path2', content2='contents2'} >> >> When testing this against openstack@HPcloud, I was able to inject data >> but only into /etc (see comment at [2] for more info). As an example, >> the cURL command for launching an Openstack instance via deltacloud, >> complete with user data looks like: >> >> curl -ivX POST --user "foo:bar" -F "image_id=foo" -F >> "path1=/etc/my_file1" -F "content1=another test 1 here" -F >> "path2=/etc/anotherfile" -F "content2=this is a test" >> "http://localhost:3001/api/instances?format=xml" >> >> >> >>> lack of volume support for openstack. >>> >> >> great - this is something i've been meaning to do for a while. But >> again, need some clarification/info. Until now, there is no mention of >> 'Volumes' in the Nova 'API Proper' [3]. It *has* been available as an >> API extension. This is not a problem as I've already implemented other >> extensions such as 'floating IPs' and 'keypairs' for the Openstack >> rubygem [4]. However, I am also aware that there is a 'new' service >> called 'Cinder' which is meant to be the 'Volume API'. I suspect that >> what was formerly an extension has now (in folsom?) become the seperate >> 'cinder' aka 'Volume' service - though the API is not yet available at >> [5]. So my question is - what are you using? Have you deployed the >> Volume service (I guess this is the case but I need to know so I can >> proceed for implementation), > > I guess it is more complicated when coming from ruby.. we are using the > python novaclient and the volume API is just built in. My guess > is they are routing it to wherever it needs to go. > > Code I see in novaclient is eg: > > body = {'volume': {'size': size, > 'snapshot_id': snapshot_id, > 'display_name': display_name, > 'display_description': display_description, > 'volume_type': volume_type}} > return self._create('/volumes', body, 'volume') > > Which just calls the same base class _create() that all the other API > functions use. I honestly have not kept up on the swift vs cinder debate > though I have heard it discussed.. If I were you though I would just > duplicate novaclient calls. >
apologies for the delay - jumping on this today. marios > Ian >
