When deleting a deploy key or cred ref, the key string is parsed as unicode, throwing a 'TypeError: String or Integer object expected for key, unicode found\n' error.
The following places is where this is currently occurring:
https://github.com/stackforge/solum/blob/master/solum/worker/handlers/shell.py#L305 and https://github.com/stackforge/solum/blob/master/solum/api/handlers/plan_handler.py#L56
Stack trace example:
2014-10-10_17:43:54.02804 2014-10-10 17:43:54.027 26533 ERROR oslo.messaging._drivers.common [-] ['Traceback (most recent call last):\n', ' File "/usr/lib/python2.7/dist-packages/oslo/messaging/rpc/dispatcher.py", line 133, in _dispatch_and_reply\n incoming.message))\n', ' File "/usr/lib/python2.7/dist-packages/oslo/messaging/rpc/dispatcher.py", line 176, in _dispatch\n return self._do_dispatch(endpoint, method, ctxt, args)\n', ' File "/usr/lib/python2.7/dist-packages/oslo/messaging/rpc/dispatcher.py", line 122, in _do_dispatch\n result = getattr(endpoint, method)(ctxt, **new_args)\n', ' File "/opt/arbor-master/lib/python2.7/site-packages/solum/worker/handlers/shell_nobuild.py", line 49, in build\n source_creds_ref)\n', ' File "/opt/arbor-master/lib/python2.7/site-packages/solum/worker/handlers/shell.py", line 254, in _run_unittest\n source_creds_ref)\n', ' File "/opt/arbor-master/lib/python2.7/site-packages/solum/worker/handlers/shell.py", line 119, in _get_build_command\n source_uri)\n', ' File
"/opt/arbor-master/lib/python2.7/site-packages/solum/worker/handlers/shell.py", line 305, in _get_private_key\n deploy_keys_str = s[source_creds_ref]\n', ' File "/usr/lib/python2.7/shelve.py", line 121, in __getitem__\n f = StringIO(self.dict[key])\n', ' File "/usr/lib/python2.7/bsddb/__init__.py", line 270, in __getitem__\n return _DeadlockWrap(lambda: self.db[key]) # self.db[key]\n', ' File "/usr/lib/python2.7/bsddb/dbutils.py", line 68, in DeadlockWrap\n return function(*_args, **_kwargs)\n', ' File "/usr/lib/python2.7/bsddb/__init__.py", line 270, in <lambda>\n return _DeadlockWrap(lambda: self.db[key]) # self.db[key]\n', 'TypeError: String or Integer object expected for key, unicode found\n']
@dimalg So what is the solution for this? How are you getting around this issue currently?