Revision 90d90bd2

b/api/servers.py
64 64
        d['hostId'] = server.hostid
65 65
        d['updated'] = server.updated.isoformat()
66 66
        d['created'] = server.created.isoformat()
67
        d['flavorId'] = server.flavor.id            # XXX Should use flavorRef instead?
68
        d['imageId'] = server.sourceimage.id        # XXX Should use imageRef instead?
67
        d['flavorRef'] = server.flavor.id
68
        d['imageRef'] = server.sourceimage.id
69 69
        d['description'] = server.description       # XXX Not in OpenStack docs
70 70
        
71 71
        server_meta = server.virtualmachinemetadata_set.all()
......
122 122
    try:
123 123
        server = req['server']
124 124
        name = server['name']
125
        sourceimage = Image.objects.get(id=server['imageId'])
126
        flavor = Flavor.objects.get(id=server['flavorId'])
125
        sourceimage = Image.objects.get(id=server['imageRef'])
126
        flavor = Flavor.objects.get(id=server['flavorRef'])
127 127
    except KeyError:
128 128
        raise BadRequest
129 129
    except Image.DoesNotExist:
......
152 152
        disk_template='plain',
153 153
        disks=[{"size": 2000}],         #FIXME: Always ask for a 2GB disk for now
154 154
        nics=[{}],
155
        os='debootstrap+default',       #TODO: select OS from imageId
155
        os='debootstrap+default',       #TODO: select OS from imageRef
156 156
        ip_check=False,
157
        nam_check=False,
157
        name_check=False,
158 158
        pnode=rapi.GetNodes()[0],       #TODO: verify if this is necessary
159 159
        dry_run=dry_run,
160 160
        beparams=dict(auto_balance=True, vcpus=flavor.cpu, memory=flavor.ram))
b/api/templates/server.xml
6 6
    {% if server.adminPass %}adminPass="{{ server.adminPass }}"{% endif %}
7 7
    created="{{ server.created }}"
8 8
    description="{{ server.description }}"
9
    flavorId="{{ server.flavorId }}"
9
    flavorRef="{{ server.flavorRef }}"
10 10
    hostId="{{ server.hostId }}"
11 11
    id="{{ server.id }}"
12
    imageId="{{ server.imageId }}"
12
    imageRef="{{ server.imageRef }}"
13 13
    name="{{ server.name }}"
14 14
    progress="{{ server.progress }}"
15 15
    status="{{ server.status }}"
b/api/tests_redux.py
26 26
        {
27 27
            "server" : {
28 28
                "name" : "%(name)s",
29
                "flavorId" : "%(flavorId)s",
30
                "imageId" : "%(imageId)s"
29
                "flavorRef" : "%(flavorRef)s",
30
                "imageRef" : "%(imageRef)s"
31 31
            }
32 32
        }
33 33
        '''
34 34
        
35
        def new_server(imageId=1, flavorId=1):
35
        def new_server(imageRef=1, flavorRef=1):
36 36
            name = self.create_server_name()
37
            return name, TEMPLATE % dict(name=name, imageId=imageId, flavorId=flavorId)
37
            return name, TEMPLATE % dict(name=name, imageRef=imageRef, flavorRef=flavorRef)
38 38
        
39 39
        def verify_response(response, name):
40 40
            assert response.status_code == 202
41 41
            reply =  json.loads(response.content)
42 42
            server = reply['server']
43 43
            assert server['name'] == name
44
            assert server['imageId'] == 1
45
            assert server['flavorId'] == 1
44
            assert server['imageRef'] == 1
45
            assert server['flavorRef'] == 1
46 46
            assert server['status'] == 'BUILD'
47 47
            assert server['adminPass']
48 48
            assert server['addresses']
......
69 69
                                    HTTP_ACCEPT='application/xml')
70 70
        verify_response(response, name)
71 71
        
72
        name, data = new_server(imageId=0)
72
        name, data = new_server(imageRef=0)
73 73
        url = '/api/%s/servers' % API
74 74
        response = self.client.post(url, content_type='application/json', data=data)
75 75
        verify_error(response, 404, 'itemNotFound')
76 76
        
77
        name, data = new_server(flavorId=0)
77
        name, data = new_server(flavorRef=0)
78 78
        url = '/api/%s/servers' % API
79 79
        response = self.client.post(url, content_type='application/json', data=data)
80 80
        verify_error(response, 404, 'itemNotFound')

Also available in: Unified diff