Thanks, Jae - I pushed a change like you mention below to openstackx.  At this point, most of the features we need for dashboard support of servers.create have been pushed to nova core, so we should be able to get rid of the openstackx dep for this call.<br>
<br>A<br><br><div class="gmail_quote">2011/9/8 Jae Sang Lee <span dir="ltr"><<a href="mailto:hyangii@gmail.com">hyangii@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
<div><div style="color: rgb(51, 51, 51); font-family: 'UbuntuBeta Mono','Ubuntu Mono',monospace; line-height: 18px; font-size: 12px;"><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;">self answer :)</span></div>

<div style="color: rgb(51, 51, 51); font-family: 'UbuntuBeta Mono','Ubuntu Mono',monospace; line-height: 18px; font-size: 12px;"><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;"><br>

</span></div><div style="color: rgb(51, 51, 51); font-family: 'UbuntuBeta Mono','Ubuntu Mono',monospace; line-height: 18px; font-size: 12px;"><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;">before api error, there are http 400 error nova.api.openstack.wsgi [-] <a href="http://localhost:8774/v1.1/admin/extras/servers" target="_blank">http://localhost:8774/v1.1/admin/extras/servers</a> returned with HTTP 400</span></div>

<div style="color: rgb(51, 51, 51); font-family: 'UbuntuBeta Mono','Ubuntu Mono',monospace; line-height: 18px; font-size: 12px;"><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;">When launced an instance using dashboard, <a href="http://openstackx.extenstions.admin.py" target="_blank">openstackx.extenstions.admin.py</a>. And In create_instance() method, self._get_kernel_ramdisk_from_image(req, image_id) is called.</span></div>

<div style="color: rgb(51, 51, 51); font-family: 'UbuntuBeta Mono','Ubuntu Mono',monospace; line-height: 18px; font-size: 12px;"><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;"><br>

</span></div><div style="color: rgb(51, 51, 51); font-family: 'UbuntuBeta Mono','Ubuntu Mono',monospace; line-height: 18px; font-size: 12px;"><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;">But, real _get_kernel_ramdisk_from_image() method is in <a href="http://nova.api.openstack.create_instance_helper.py" target="_blank">nova.api.openstack.create_instance_helper.py</a>. And definition is _get_kernel_ramdisk_from_image(self, req, </span><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;"><b>image_service</b></span><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;">, image_id). Because of this, nova-api print HTTP 400 error. So I fixed <a href="http://openstackx.extenstions.admin.py" target="_blank">openstackx.extenstions.admin.py</a>'s self._get_kernel_ramdisk_from_image(req, image_id) to self._get_kernel_ramdisk_from_image(req, image_service, image_id). and instance could launched.</span></div>

<div><font face="Tahoma" size="3"><br></font></div><div style="color: rgb(51, 51, 51); font-family: 'UbuntuBeta Mono','Ubuntu Mono',monospace; line-height: 18px; font-size: 12px;">
<span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;"><br>

</span></div><br><div class="gmail_quote">2011³â 9¿ù 9ÀÏ ¿ÀÀü 10:05, Jae Sang Lee <span dir="ltr"><<a href="mailto:hyangii@gmail.com" target="_blank">hyangii@gmail.com</a>></span>´ÔÀÇ ¸»:<div><div></div><div class="h5"><br>
<blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">
and this is a nova-api error message. When I launched an instance at dashboard, this error occured.<div><br></div><div><div><div></div><div><div>11555 2011-09-07 21:24:20,829 INFO nova.api.openstack.wsgi [-] <a href="http://localhost:8774/v1.1/admin/extras/servers" target="_blank">http://localhost:8774/v1.1/admin/extras/servers</a> returned with HTTP 400</div>


<div>11556 2011-09-07 21:24:20,829 ERROR nova.api.openstack [-] Caught error: 'Fault' object has no attribute 'explanation'</div><div>11557 (nova.api.openstack): TRACE: Traceback (most recent call last):</div>


<div>11558 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/nova/api/openstack/__init__.py", line 64, in __call__</div><div>11559 (nova.api.openstack): TRACE:     return req.get_response(self.application)</div>


<div>11560 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/webob/request.py", line 1053, in get_response</div><div>11561 (nova.api.openstack): TRACE:     application, catch_exc_info=False)</div>


<div>11562 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/webob/request.py", line 1022, in call_application</div><div>11563 (nova.api.openstack): TRACE:     app_iter = application(self.environ, start_response)</div>


<div>11564 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/keystone/middleware/auth_token.py", line 186, in __call__</div><div>11565 (nova.api.openstack): TRACE:     return self._forward_request(env, start_response, proxy_headers)</div>


<div>11566 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/keystone/middleware/auth_token.py", line 312, in _forward_request</div><div>11567 (nova.api.openstack): TRACE:     return self.app(env, start_response)</div>


<div>11568 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/webob/dec.py", line 159, in __call__</div><div>11569 (nova.api.openstack): TRACE:     return resp(environ, start_response)</div><div>

11570 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/webob/dec.py", line 159, in __call__</div>
<div>11571 (nova.api.openstack): TRACE:     return resp(environ, start_response)</div><div>11572 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/webob/dec.py", line 159, in __call__</div><div>

11573 (nova.api.openstack): TRACE:     return resp(environ, start_response)</div>
<div>11574 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/routes/middleware.py", line 131, in __call__</div><div>11575 (nova.api.openstack): TRACE:     response = self.app(environ, start_response)</div>


<div>11576 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/webob/dec.py", line 159, in __call__</div><div>11577 (nova.api.openstack): TRACE:     return resp(environ, start_response)</div><div>

11578 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/webob/dec.py", line 159, in __call__</div>
<div>11579 (nova.api.openstack): TRACE:     return resp(environ, start_response)</div><div>11580 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/webob/dec.py", line 147, in __call__</div><div>

11581 (nova.api.openstack): TRACE:     resp = self.call_func(req, *args, **self.kwargs)</div>
<div>11582 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/webob/dec.py", line 208, in call_func</div><div>11583 (nova.api.openstack): TRACE:     return self.func(req, *args, **kwargs)</div><div>


11584 (nova.api.openstack): TRACE:   File "/usr/lib/pymodules/python2.6/nova/api/openstack/faults.py", line 55, in __call__</div><div>11585 (nova.api.openstack): TRACE:     'message': self.wrapped_exc.explanation}}</div>


</div></div><div>11586 (nova.api.openstack): TRACE: AttributeError: 'Fault' object has no attribute 'explanation'</div><div><br></div><div>What is a problem? My environment(Nova and dashboard, keystone) is  trunk version</div>

<div><div></div><div>
<br><div class="gmail_quote">2011/9/8 ÀÌÀç»ó <span dir="ltr"><<a href="mailto:hyangii@gmail.com" target="_blank">hyangii@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">


Hi, everyone.<div><br></div><div>I installed Nova environment(trunk version) with keystone(git clone), dashboard(git clone). so I login and can see user dashboard, system panel.</div><div><br></div><div>(I can make user, tanant, keypair, network, etc on.)</div>



<div><br></div><div>I also connect glance image service. I tried to make a instance with glance image. </div><div><br></div><div>but there was somthing wrong. when I clicked create instance in dashboard, this is dashboard error message.</div>



<div><br></div><div>==========================</div><div><div><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;">Traceback (most recent call last):</span></div>



<div><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;">  File "/root/openstack-dashboard/django-openstack/django_openstack/dash/views/images.py", line 93, in handle<br>




    data.get('user_data'))<br>
  File "/root/openstack-dashboard/django-openstack/django_openstack/api.py", line 431, in server_create<br>
    name, image, flavor, key_name=key_name, user_data=user_data),<br>
  File "/root/openstack-dashboard/openstack-dashboard/.dashboard-venv/src/openstackx/openstackx/extras/servers.py", line 115, in create<br>
    return self._create("/extras/servers", body, "server")<br>
  File "/root/openstack-dashboard/openstack-dashboard/.dashboard-venv/src/openstackx/openstackx/api/base.py", line 40, in _create<br>
    resp, body = self.api.connection.post(url, body=body)<br>
  File "/root/openstack-dashboard/openstack-dashboard/.dashboard-venv/src/openstackx/openstackx/api/connection.py", line 83, in post<br>
    return self._cs_request(url, 'POST', **kwargs)<br>
  File "/root/openstack-dashboard/openstack-dashboard/.dashboard-venv/src/openstackx/openstackx/api/connection.py", line 65, in _cs_request<br>
    **kwargs)<br>
  File "/root/openstack-dashboard/openstack-dashboard/.dashboard-venv/src/openstackx/openstackx/api/connection.py", line 48, in request<br>
    raise exceptions.from_response(resp, body)<br>
ApiException: 'Fault' object has no attribute 'explanation' (HTTP 500)</span></div></div><div><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;">======================</span></div>



<div><span style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Tahoma; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; font-size: medium;"><br>



</span></div><div>I tried to find point of error, but I can't find. How can I fix this problem?</div><div><br></div>
</blockquote></div><br></div></div></div>
</blockquote></div></div></div><br></div>
<br>_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/%7Eopenstack" target="_blank">https://launchpad.net/~openstack</a><br>
Post to     : <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a><br>
Unsubscribe : <a href="https://launchpad.net/%7Eopenstack" target="_blank">https://launchpad.net/~openstack</a><br>
More help   : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
<br></blockquote></div><br>