Ask Your Question

gabriel-hurley's profile - activity

2014-03-17 06:44:18 -0500 received badge  Teacher (source)
2013-08-09 18:47:01 -0500 answered a question list of supported browsers

There is not an officially documented list. It wouldn't be a bad idea to have one, but no one has done the work to gather community feedback etc.

Relatively recent Chrome, FF, Safari are obvious.

In terms of IE, 9 and 10 are definitely on the list, but I'm strongly inclined to say that IE8 should be excluded, for two reasons:

  1. IE8 is missing support for most of ECMAScript 5 (e.g. modern javascript) and requires numerous polyfills, etc. to be functional. We can save ourselves a lot of coding pain by not supporting it.

  2. Microsoft's mainstream support for IE8 has already ended, and extended support ends early next year. If we're writing a standardized list of browsers, I'd rather not add IE8 to that list and do work to be compatible when we're going to remove it again in a handful of months.

Currently this is just my opinion, but that's where things are at.

2013-05-08 19:35:22 -0500 answered a question Wishlist: Multi Compute Node and Horizon

See this blueprint: (

2013-02-21 22:52:26 -0500 answered a question ADA Compliance / Accessibility

It has not been explicitly "tested", though we do make a best-effort to make it as accessible as possible.

That said, the ADA does not actually make specific technical assertions about what makes a web interface "accessible". It's a matter of best practices and principles established by trial-and-error in various court cases and organizations. So, while any given "test" is certainly providing valuable feedback, there is no absolute metric by which I would say "this must be fixed".

Specific items should be logged as tickets and can be decided upon on their merits.

Hope that makes sense. Thanks for the question!

2013-01-29 01:34:17 -0500 answered a question Recoverable error logged at ERROR level

I could get behind logging it as a WARN. A real ERROR message was (hopefully) logged on the other end of the API where the problem originated. From Horizon's perspective it's a problem, but we can recover so a full-blown ERROR isn't required.

2012-11-21 22:37:27 -0500 answered a question What is the Django admin password?

The OpenStack Dashboard uses Keystone for authentication. You can log in with any user in Keystone that's been granted roles on a project.

Horizon (the framework part) is compatible with Django's default contrib.auth backend, but OpenStack Dashboard (the OpenStack-specific reference implementation) only works with Keystone since it's meant to manage an OpenStack cloud.

2012-10-29 19:35:34 -0500 answered a question openstack dashboard doesnot show anything after login

Is this installation very recent (e.g. a fresh install from DevStack, or installed with Keystone from github)? If so, then you're hitting this bug: (

Basically, Keystone just switched to using PKI-signed tokens by default, and it broke Horizon. The keystone and horizon teams are working to resolve this as soon as possible. For the interim you can set "token_format = UUID" in your keystone. conf file.

2012-10-26 21:39:18 -0500 answered a question horizon doesn't work with keystoneclient?

Given the ID of that token, I'm guessing you have PKI tokens enabled in Keystone. I just discovered a couple days ago that due to the length of the token the PKI tokens break Horizon's session storage. The bug is reported here: (

A fix is in the works but may take a little while because it will involve adding a new API route to Keystone.

For now, you can disable the PKI mechanisms in Keystone to continue using Horizon.

2012-10-05 18:18:37 -0500 answered a question Cannot disable Quantum in Horizon

That documentation is completely 100% wrong. Can you post a link to the offending documentation?

Quantum integration (as with any service-dependent component in Horizon) is controlled by the presence of that service in your Keystone service catalog. So if you're still seeing Quantum-related issues then your Keystone is misconfigured.

2012-10-04 17:24:53 -0500 answered a question Using Horizon for Keystone provisioning / management

That doesn't exist in OpenStack yet. It's part of the proposed Keystone V3 API but it has not been implemented. It's a tremendously high priority for Horizon, though, so as soon as it is the support will be there. I'm hoping it'll land in Grizzly, but it'll probably be towards the end of the release cycle.

2012-10-03 20:05:18 -0500 answered a question Using Horizon for Keystone provisioning / management

The only thing from that list which is not currently available in Horizon from that list is the creation of new roles. Those have to be added using the Keystone CLI.

All the user management and tenant management exists, you can grant users various roles on tenants, etc.

This is true in both Essex and Folsom, though the role/tenant/user management is improved in Folsom.

Role management CRUD in Horizon will be added in Grizzly.

2012-09-11 19:06:34 -0500 answered a question Dashboard EMAIL settings

If you've followed Django's instructions for configuring your email backend that should work (make sure you set EMAIL_BACKEND as well as the other standard options).

Is the problem that you get an error when attempting to send mail, or that you aren't receiving mail? If the former, what is the error? If the latter, what email are you expecting? The only emails I'd expect you to get are the 500 error notifications when DEBUG=False sent to the email addresses listed in the ADMINS setting. That's a pretty standard Django deployment setup.

2012-08-16 18:10:43 -0500 answered a question Quantum Integration

Aside from the obvious answer of "you need quantum installed, configured and running" the piece you probably don't have is that quantum's endpoints must be in keystone's service catalog with the service type "network".

2012-07-31 21:07:30 -0500 answered a question wordpress HELP

You'll want to assign the instance a floating IP (this implies that your openstack installation is configured to support floating IPs and that your network is routable from the outside world). Then make sure your apache config is listening on that IP and your security group rules allow traffic to port 80...

This isn't really a horizon question, but hopefully all that points you in the right direction. I'd recommend asking on the openstack mailing list if you need more help.

2012-07-16 19:01:22 -0500 answered a question Why cannot we add an image on horizon

There are various means available for adding images to the system currently, including adding an image that is accessible via a web URL. By and large the only method not supported is uploading an image directly to the dashboard to be added to Glance, and the reason for this is the difficulty of dealing with very large file uploads in a manner that both provides a good user experience and is secure. Flat out allowing multi-GB file uploads is a terrible idea (denial of service attacks become trivial at that point). The requisite piece is a rich upload connection directly the image store. When that gets worked out we'll push forward on this feature.

2012-07-13 20:51:25 -0500 answered a question Configure Horizon in Folsom with django_compressor

From what you've got in the logs there, it looks like the packaging probably places the static media in a slightly different location than where Horizon typically expects it. I'm not sure quite what the right path is, but it should be resolvable by tweaking the packaged settings file.

The other problem you may encounter if you've just installed django_compressor is that once it is able to find the LESS files, it will also want node.js installed. Since ubuntu packages node that's relatively painless. The lessc script that is executed using node.js is bundled with horizon. That will probably work out of the box (unless you're moving things around), in which case it is again just a settings tweak to make it execute the right lessc command.

I would also point out the existence of this ticket: ( I don't have a resolution for that yet, but if you have suggestions feel free to add them there.

Hopefully that helps.

2012-07-12 18:38:34 -0500 answered a question OpenStack Dashboard

I'm not going to go into exceptional detail on any of those topics, but to give you some general pointers:

  1. Adding new images (such as Ubuntu) can be done two ways: add it to Glance directly using Glance's CLI/client outside of the dashboard, or use the "create image" feature in the dashboard to add the image source using an externally available download URL. I warn you, though, that adding new images to OpenStack is not exactly "user-friendly" right now, so I'd consult OpenStack's documentation on how to go about it.

  2. The general "first time" things you'd want to do would be as folllows:

    • Log in
    • Add/create a keypair for yourself
    • Set up your security groups; at the very least adding a rule to allow SSH (TCP 22:22), and probably to allow ping (ICMP -1:-1)
    • Add floating IPs to your project
    • Launch an instance using an image of your choosing with your keypair and security groups
    • Associate a floating IP with your new instance

At that point you should be able to SSH to it, etc.

We're always working to make things easier, but this is the current state of things.

2012-07-05 22:00:34 -0500 answered a question horizon is not showing all nova services

Diablo and Essex are showing completely different things. Diablo was using a combination of (now) deprecated extensions and ping commands to do some really awful checking on those services. That entire mindset is dead and gone.

In Essex, what you're seeing is the service list reported by Keystone's Service Catalog. I agree that the data returned isn't very rich, but this is the data we have access to.

Patches to Keystone/Nova APIs are welcome to make the Services panel more useful.

2012-07-02 18:23:35 -0500 answered a question instances stuck in status = build and task = deleting

The dashboard is simply displaying the current state of the instances as Nova reports it; this is not a Horizon issue at all. Marking an item as "deleted" in the database pushes it out of the DB filter for things Nova reports back via the API, however it doesn't do the associated cleanup that should happen before it being marked as deleted.

That said, there are many ways to wedge Nova in a state that it will never clear out the instances. I would recommend asking on the OpenStack mailing list or on the Nova project.

2012-06-18 19:29:39 -0500 answered a question After adding containers/objects via Dashboard, swift client calls do not list them

Those bug reports are tremendously incomplete... we just did a revamp of the swift object/container code in Horizon about two weeks ago (looks like after those reports), but I can say that at least for me, running Horizon against Swift installed via devstack, container creation, object upload, etc. all worked correctly. The new code has been vetted by several Horizon developers.

The main question I would have is how did they install swift? It's certainly quite easy to misconfigure it if they didn't use a known-good configuration like devstack.

2012-03-15 18:29:07 -0500 answered a question Dashboard without nova-volume?

Your keystone service catalog would need to include a service with type "volume" and the appropriate endpoint (usually port 8776) on your nova volume host. Take a look at how DevStack handles it if you need an example: (

2012-03-07 02:34:42 -0500 answered a question Dashboard user interface for Swift

If you've gotten that far then you figured out how to add a swift "object-store" service to the keystone catalog. However, if you're getting connection refused errors that means there's something wrong with the end point being returned by keystone. This could be the result of invalid token interpolation in your endpointTemplate string, by a blocked port for that endpoint, a typo in the hostname/IP address, the swift server not running on that host, or any number of other things.

2012-03-05 17:32:48 -0500 answered a question Dashboard user interface for Swift

If you're using the E4 release of Keystone, you actually need to add Swift to the catalog template file as opposed to using the "endpointTemplate add" command. Take a look at how DevStack does it: (

2012-03-05 05:32:46 -0500 answered a question Dashboard without nova-volume?

Currently it is required. However, as of very late in the E4 cycle it actually no longer needs to be. I've opened a bug to document the requirement ( ( ) and a blueprint to make the volume components optional ( ( ).

2012-01-23 23:30:34 -0500 answered a question No localization info found

The Diablo release shipped with about a half-dozen (partial) translations. We will hopefully have equal or better translation support for the Essex release. As the translations are also a community effort it depends on community support.

That said, we have made huge strides in ensuring that all strings in Horizon are marked for translation, and we continue to improve our overall string-handling.

There will be an official string-freeze 1-2 weeks before the essex release so that translators have time to make the necessary changes.

2011-12-14 09:39:58 -0500 answered a question When logged in to openstack-dashboard got error "Unable to get service,usage info"

A second thought is that this could also be related to the openstackx nova extensions being configured. Despite openstackx being deprecated it is not completely excised from the horizon codebase yet (the nova API doesn't support everything openstackx did yet).

Off the top of my head, with devstack's directory structure as a reference, on diablo nova you needed to make sure --osapi_extensions_path=/opt/stack/openstackx/extensions in nova.conf.

I believe the flag name changed in essex nova, though. You should consult the current nova/devstack docs for what the right thing to set is.

Hopefully that helps this time!

2011-12-07 23:15:43 -0500 answered a question Openstack Dasboard login fails

Awesome fail on Launchpad's part to give me 500 error pages and still post the message 4 times. I win.

2011-12-07 23:14:59 -0500 answered a question Openstack Dasboard login fails

I took a look at the actual code packaged in the .rpm file you linked to... that code is nothing like the Diablo release version of openstack-dashboard/horizon. I'm not sure when that got branched off, but it's simply not the right code. That code is many months out of sync with the stable/diablo (2011.3) release series.

I suggest starting with a clean copy of the stable/diablo horizon code and working from there.

2011-12-07 21:25:44 -0500 answered a question Openstack Dasboard login fails

I took a look at the actual code packaged in the .rpm file you linked to... that code is nothing like the Diablo release version of openstack-dashboard/horizon. I'm not sure when that got branched off, but it's simply not the right code. That code is many months out of sync with the stable/diablo (2011.3) release series.

I suggest starting with a clean copy of the stable/diablo horizon code and working from there.

2011-12-07 21:19:53 -0500 answered a question Openstack Dasboard login fails

I took a look at the actual code packaged in the .rpm file you linked to... that code is nothing like the Diablo release version of openstack-dashboard/horizon. I'm not sure when that got branched off, but it's simply not the right code. That code is many months out of sync with the stable/diablo (2011.3) release series.

I suggest starting with a clean copy of the stable/diablo horizon code and working from there.

2011-12-07 21:18:00 -0500 answered a question Openstack Dasboard login fails

I took a look at the actual code packaged in the .rpm file you linked to... that code is nothing like the Diablo release version of openstack-dashboard/horizon. I'm not sure when that got branched off, but it's simply not the right code.

I suggest starting with a clean copy of the stable/diablo horizon code and working from there.

2011-12-07 19:02:47 -0500 answered a question Could not import dashboard.views. Error was: No module named keystoneclient

The current setup/installation process for horizon will clone python-keystoneclient from github and install it onto your path. Please make sure your environment is up-to-date. You could try running the script again (for openstack dashboard) or the bootstrap setup script (for horizon) to ensure you have the latest dependencies installed.

2011-12-07 19:00:18 -0500 answered a question When logged in to openstack-dashboard got error "Unable to get service,usage info"

This error is related to the rest of your openstack deployment. It is most often caused by mismatched service tokens between nova, keystone, etc. but similar errors can also be raised by failure to have the openstackx extensions properly installed with nova or bad service endpoint data in keystone causing connection errors.

My first suggestion, though, would be to check all your conf/proxy server files (nova, keystone, glance, etc.) and make sure they match the correct admin service token defined by keystone.

2011-12-01 21:35:58 -0500 answered a question Openstack Dasboard login fails

That indicates you don't have your services registered properly with Keystone. This is likely the result of using old sample data, or not loading any service data into keystone. You need a service registered with keystone that has the service type "identity" (which is what keystone identifies itself as).

However, the error message there could be improved in horizon.

2011-11-21 21:25:32 -0500 answered a question Can`t i deploy Horizon with Quantum ?

Quantum doesn't ship an API client separate from the core quantum package, and unfortunately Python package management doesn't allow for runtime (e.g. settings file) dependency management. Thereby it is currently included as a core dependency, as is Glance (which also doesn't ship a separate client).

I'm not saying this is entirely right, but this is the explanation for why it is the way it is. Hopefully that makes sense.

2011-11-18 00:20:38 -0500 answered a question Horizon from Github Source does not work because quantum is not getting installed.

This has come up twice now: (

There's definitely something wrong with quantum's packaging. Could you confirm what platform you're running on?

2011-11-17 19:48:04 -0500 answered a question Errors with Dashboard trunk and nova diablo

Trunk Horizon works perfectly with Diablo Nova as a general rule. That's what the Horizon developers are using for their own development.

However, not all Diablo Nova installations are configured equally. Particularly it's worth looking at nova.conf, which may be missing various necessary config options.

A clean install with the latest devstack works well at the moment. Obviously even this is a moving target as they update it, though.

2011-11-17 19:45:45 -0500 answered a question Dashboard cpu usage

I have not experienced this issue with the Diablo dashboard... If it says "no instances" then it means the nova API is either not communicating properly or nova thinks there aren't any instances.

The second error message "Instance type %(instance_type_id)s could not be found" doesn't come from Horizon (grep the codebase)... so that means the error is either being triggered by the client or being returned over the API as a 500 response with that error message. I couldn't tell you which.

It sounds like one way or another there's an incompatibility with the various components in play, and debugging that without specifics is basically impossible.

I would recommend either a clean devstack diablo install or making sure all your OpenStack components and their dependencies are up-to-date.

It might also be worth making sure that second error message isn't a known bug in nova.

2011-11-17 19:39:23 -0500 answered a question Unexpected error: 'Token' object has no attribute 'serviceCatalog'

This question is nearly impossible to answer without knowing what versions of things you're running and how you installed them. Particularly if your Horizon is cloned from github, it could be at any intermediate revision. A clean devstack Diablo install has never yielded this error for anyone I've heard from.

That said, I've gotten this error many times in the past. Transitioning from openstackx to novaclient to keystoneclient for auth over the past few months definitely had intermediate stages where there were potential failures like this.

I recommend using a current diablo devstack install with either the stable/diablo horizon release or (if you want to be bleeding-edge) the Essex E1 release.

2011-11-17 19:34:55 -0500 answered a question Error while running dashboard

This does look like a mismatch between the versions of dashboard, keystone and novaclient/keystoneclient that are being used. It's a bit hard to debug from the given information.

If you can't do a git clone, the essex-1 milestone tarball has just been released. Be warned, though, that it's the first of several milestones leading up to the Essex release. I don't believe there will be a new RPM until Essex is released next year. Overall the E1 tarball is stable, but there are certainly further bugs which will (and have already) been fixed.

2011-10-25 18:16:29 -0500 answered a question Dashboard error "ImproperlyConfigured"

That context processor was added/renamed in this commit to master: (

It sounds like somehow you got the updated from the reference openstack_dashboard half of the codebase without getting the updated django_openstack module half of the codebase...

Can you look in openstack-dashboard/django-openstack/django_openstack/ and see if your code there includes the updates "object_store" processor?

This also may be a PYTHONPATH problem.

Debugging any further would require knowing how you installed openstack, dashboard, etc.

All the best,

- Gabriel
2011-10-13 00:34:17 -0500 answered a question authorization dashboard problem

There are several possibilities here:

1. You've got the wrong host/port somewhere in one of your conf files.
2. You've got the wrong service/admin token in one of your conf files.
3. One of your services isn't running.
4. There is a firewall or some other problem preventing communication between the desired services on the intended ports.

Overall there isn't enough information here to diagnose. I would suggest using the latest (from from ) on a clean install of Ubuntu 11.04 and specifying your MYSQL_PASSWORD, SERVICE_TOKEN, etc. in a localrc file.

That method is confirmed working by multiple parties as of yesterday afternoon.