<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; color: rgb(0, 0, 0); font-size: 14px; font-family: Calibri, sans-serif; ">
<div>Sean,</div>
<div><br>
</div>
<div>It appears that the curl interface works just fine:</div>
<div>
<div># brutus1 /root > curl -X POST -H "X-Auth-Token: 49c056f8688540fcb933cf7335537676" -H "Content-type: application/json" --data '{"OS-KSADM:service": {"name":"Test","type":"test","extra":"{}"}}' http://0.0.0.0:35357/v2.0/OS-KSADM/services</div>
<div>{"OS-KSADM:service": {"type": "test", "name": "Test", "id": "6d54ea4d2752435aba19893a9de24695"}}</div>
<div># brutus1 /root > curl -X GET -H "X-Auth-Token: 49c056f8688540fcb933cf7335537676" http://0.0.0.0:35357/v2.0/OS-KSADM/services</div>
<div>{"OS-KSADM:services": [{"type": "test", "name": "Test", "id": "6d54ea4d2752435aba19893a9de24695"}]}</div>
</div>
<div><br>
</div>
<div>I also verified directly in the mysql database:</div>
<div>
<div>mysql> use keystone;</div>
<div>Reading table information for completion of table and column names</div>
<div>You can turn off this feature to get a quicker startup with -A</div>
<div><br>
</div>
<div>Database changed</div>
<div>mysql> select * from service;</div>
<div>+----------------------------------+------+------------------+</div>
<div>| id                               | type | extra            |</div>
<div>+----------------------------------+------+------------------+</div>
<div>| 6d54ea4d2752435aba19893a9de24695 | test | {"name": "Test"} |</div>
<div>+----------------------------------+------+------------------+</div>
<div>1 row in set (0.00 sec)</div>
<div><br>
</div>
<div>mysql></div>
</div>
<div><br>
</div>
<div>But access via the keystone client still fails with the same error:</div>
<div>
<div># brutus1 /root > keystone service-list</div>
<div>'NoneType' object is unsubscriptable</div>
</div>
<div><br>
</div>
<div>-Robin</div>
<div><br>
</div>
<span id="OLK_SRC_BODY_SECTION">
<div style="font-family:Calibri; font-size:11pt; text-align:left; color:black; BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: 0in; PADDING-LEFT: 0in; PADDING-RIGHT: 0in; BORDER-TOP: #b5c4df 1pt solid; BORDER-RIGHT: medium none; PADDING-TOP: 3pt">
<span style="font-weight:bold">From: </span>Sean McCully <<a href="mailto:sean_mccully@yahoo.com">sean_mccully@yahoo.com</a>><br>
<span style="font-weight:bold">Reply-To: </span>"<a href="mailto:sean_mccully@yahoo.com">sean_mccully@yahoo.com</a>" <<a href="mailto:sean_mccully@yahoo.com">sean_mccully@yahoo.com</a>><br>
<span style="font-weight:bold">Date: </span>Wednesday, September 4, 2013 6:27 PM<br>
<span style="font-weight:bold">To: </span>"Robin J. Goldstone" <<a href="mailto:goldstone1@llnl.gov">goldstone1@llnl.gov</a>><br>
<span style="font-weight:bold">Cc: </span>"<a href="mailto:openstack@lists.openstack.org">openstack@lists.openstack.org</a>" <<a href="mailto:openstack@lists.openstack.org">openstack@lists.openstack.org</a>><br>
<span style="font-weight:bold">Subject: </span>Re: [Openstack] Keystone 'NoneType' object is unsubscriptable error<br>
</div>
<div><br>
</div>
<div>
<meta name="GENERATOR" content="GtkHTML/4.6.6">
<div>What happens after you add a service,<br>
<br>
curl -X POST -H "X-Auth-Token: <auth-token>" -H "Content-type: application/json" --data '{"OS-KSADM:service": {"name":"Test","type":"test","extra":"{}"}}'
<a href="http://0.0.0.0:35357/v2.0/OS-KSADM/services">http://0.0.0.0:35357/v2.0/OS-KSADM/services</a><br>
<br>
<br>
<br>
Sean<br>
<br>
<br>
On Thu, 2013-09-05 at 00:39 +0000, Goldstone, Robin J. wrote:
<blockquote type="CITE">I am trying to install the RDO OpenStack distribution on a RHEL 6.4 system.  The install is failing during keystone configuration as follows:
</blockquote>
<blockquote type="CITE">^[[1;35merr: /Stage[main]/Cinder::Keystone::Auth/Keystone_service[cinder]: Could not evaluate: Execution of '/usr/bin/keystone --endpoint
<a href="http://127.0.0.1:35357/v2.0/">http://127.0.0.1:35357/v2.0/</a> service-list' returned 1: 'NoneType' object is unsubscriptable
</blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE">If I run the command interactively I get the same error: </blockquote>
<blockquote type="CITE"># brutus1 /etc/keystone > export OS_SERVICE_TOKEN=49c056f8688540fcb933cf7335537676
</blockquote>
<blockquote type="CITE"># brutus1 /etc/keystone > export OS_SERVICE_ENDPOINT=<a href="http://127.0.0.1:35357/v2.0">http://127.0.0.1:35357/v2.0</a> 
</blockquote>
<blockquote type="CITE"># brutus1 /etc/keystone > keystone service-list </blockquote>
<blockquote type="CITE">'NoneType' object is unsubscriptable </blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE">The keystone service appears to be running and connected to the mysql database:
</blockquote>
<blockquote type="CITE"># brutus1 /root > ps -ef|grep keystone </blockquote>
<blockquote type="CITE">keystone  8451     1  0 17:20 ?        00:00:00 /usr/bin/python /usr/bin/keystone-all --config-file /etc/keystone/keystone.conf
</blockquote>
<blockquote type="CITE"># brutus1 /root > lsof -i|grep keystone </blockquote>
<blockquote type="CITE">keystone- 8451 keystone    4u  IPv4  21614      0t0  TCP *:35357 (LISTEN)
</blockquote>
<blockquote type="CITE">keystone- 8451 keystone    6u  IPv4  21616      0t0  TCP *:commplex-main (LISTEN)
</blockquote>
<blockquote type="CITE">keystone- 8451 keystone    8u  IPv4  21961      0t0  TCP ebrutus1:54531->ebrutus1:mysql (ESTABLISHED)
</blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE">The mysql database appears to have been properly initialized though hardly any of the tables have anything in them.
</blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE">mysql> use keystone; </blockquote>
<blockquote type="CITE">Reading table information for completion of table and column names
</blockquote>
<blockquote type="CITE">You can turn off this feature to get a quicker startup with -A
</blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE">Database changed </blockquote>
<blockquote type="CITE">mysql> show tables; </blockquote>
<blockquote type="CITE">+------------------------+ </blockquote>
<blockquote type="CITE">| Tables_in_keystone     | </blockquote>
<blockquote type="CITE">+------------------------+ </blockquote>
<blockquote type="CITE">| credential             | </blockquote>
<blockquote type="CITE">| domain                 | </blockquote>
<blockquote type="CITE">| ec2_credential         | </blockquote>
<blockquote type="CITE">| endpoint               | </blockquote>
<blockquote type="CITE">| group                  | </blockquote>
<blockquote type="CITE">| group_domain_metadata  | </blockquote>
<blockquote type="CITE">| group_project_metadata | </blockquote>
<blockquote type="CITE">| migrate_version        | </blockquote>
<blockquote type="CITE">| policy                 | </blockquote>
<blockquote type="CITE">| project                | </blockquote>
<blockquote type="CITE">| role                   | </blockquote>
<blockquote type="CITE">| service                | </blockquote>
<blockquote type="CITE">| token                  | </blockquote>
<blockquote type="CITE">| trust                  | </blockquote>
<blockquote type="CITE">| trust_role             | </blockquote>
<blockquote type="CITE">| user                   | </blockquote>
<blockquote type="CITE">| user_domain_metadata   | </blockquote>
<blockquote type="CITE">| user_group_membership  | </blockquote>
<blockquote type="CITE">| user_project_metadata  | </blockquote>
<blockquote type="CITE">+------------------------+ </blockquote>
<blockquote type="CITE">19 rows in set (0.00 sec) </blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE">mysql> select * from service; </blockquote>
<blockquote type="CITE">Empty set (0.00 sec) </blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE">I cranked up the debug level in the keystone log file and here is what I see:
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] ******************** REQUEST ENVIRON ********************
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] SCRIPT_NAME = /v2.0
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] webob.adhoc_attrs = {'response': <Response at 0x2373510 200 OK>}
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] REQUEST_METHOD = GET
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] PATH_INFO = /OS-KSADM/services
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] SERVER_PROTOCOL = HTTP/1.0
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] HTTP_X_AUTH_TOKEN = 49c056f8688540fcb933cf7335537676
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] HTTP_USER_AGENT = python-keystoneclient
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] eventlet.posthooks = []
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] SERVER_NAME = 127.0.0.1
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] REMOTE_ADDR = 127.0.0.1
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] eventlet.input = <eventlet.wsgi.Input object at 0x236b8d0>
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] wsgi.url_scheme = http
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] SERVER_PORT = 35357
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] wsgi.input = <eventlet.wsgi.Input object at 0x236b8d0>
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] HTTP_HOST = 127.0.0.1:35357
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] wsgi.multithread = True
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] HTTP_ACCEPT = */*
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] wsgi.version = (1, 0)
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] openstack.context = {'token_id': '49c056f8688540fcb933cf7335537676', 'is_admin': True}
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] GATEWAY_INTERFACE = CGI/1.1
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] wsgi.run_once = False
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] wsgi.errors = <open file '<stderr>', mode 'w' at 0x2aaaaaae81e0>
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] wsgi.multiprocess = False
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] CONTENT_TYPE = text/plain
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] HTTP_ACCEPT_ENCODING = identity, deflate, compress, gzip
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] </blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] ******************** REQUEST BODY ********************
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] </blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] arg_dict: {}
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48     INFO [sqlalchemy.engine.base.Engine] SELECT service.id AS service_id, service.type AS service_type, service.extra AS service_extra
</blockquote>
<blockquote type="CITE">FROM service </blockquote>
<blockquote type="CITE">2013-09-04 17:37:48     INFO [sqlalchemy.engine.base.Engine] ()
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] ******************** RESPONSE HEADERS ********************
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] Vary = X-Auth-Token
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] Content-Type = application/json
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] Content-Length = 25
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] </blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] ******************** RESPONSE BODY ********************
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [keystone.common.wsgi] {"OS-KSADM:services": []}
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48     INFO [access] 127.0.0.1 - - [05/Sep/2013:00:37:48 +0000] "GET
<a href="http://127.0.0.1:35357/v2.0/OS-KSADM/services">http://127.0.0.1:35357/v2.0/OS-KSADM/services</a> HTTP/1.0" 200 25
</blockquote>
<blockquote type="CITE">2013-09-04 17:37:48    DEBUG [eventlet.wsgi.server] 127.0.0.1 - - [04/Sep/2013 17:37:48] "GET /v2.0/OS-KSADM/services HTTP/1.1" 200 153 0.008193
</blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE">I have tried completely wiping out and reinstalling RDO but it chokes at the same point.   Myself, along with several other people, have reported this error on the RDO forum but no one over there has responded so I thought I would try
 my luck over here.  If anyone has an idea of what my problem is, or can offer advice on further troubleshooting, please let me know.  
</blockquote>
<blockquote type="CITE"><br>
<br>
</blockquote>
<blockquote type="CITE">Thank you in advance. </blockquote>
<blockquote type="CITE">Robin Goldstone, LLNL </blockquote>
<blockquote type="CITE">
<pre>_______________________________________________
Mailing list: <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a>
Post to     : <a href="mailto:openstack@lists.openstack.org">openstack@lists.openstack.org</a>
Unsubscribe : <a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack</a></pre>
</blockquote>
<br>
</div>
</div>
</span>
</body>
</html>