When a transport key is not found when creating a Secret, a not found transport key should return a 400 Bad Request for the POST on Secrets.
vagrant@vagrant-ubuntu-ype:application/json" -H "X-Auth-Token: $TOKEN" -d '{"payload": "my-secret-here", "payload_content_type": "text/plain",
"transport_key_needed": "true", "transport_key_id": "http://10.0.2.15:9311/v1/transport_keys/fa97878e-c2e9-4a3b-9895-b653a5997da5"}' http://localhost:9311/v1/secrets
{"code": 500, "description": "Secret creation failure seen - please contact site administrator.", "title": "Internal Server Error"}vagrant@vagrant-ubuntu-trustyype:application/json" -H "X-Auth-Token: $TOKEN" -d '{"payload": "my-secret-here", "payload_content_type": "text/plain",
"transport_key_needed": "true", "transport_key_id": "http://10.0.2.15:9311/v1/transport_keys/fa97878e-c2e9-4a3b-9895-b653a5997da5"}' http://localhost:9311/v1/secrets
{"code": 500, "description": "Secret creation failure seen - please contact site administrator.", "title": "Internal Server Error"}
LOG:
2016-03-07 18:35:39.528 ERROR barbican.model.repositories [req-47ae5cb6-9763-47f7-9336-8841d86ee48d 7c9b51838c5f4841a09c80843baa8148 316fc8a5d7e9454f854ddd20db74c0e9] Not found for http://10.0.2.15:9311/v1/transport_keys/fa97878e-c2e9-4a3b-9895-b653a5997da5
2016-03-07 18:35:39.528 TRACE barbican.model.repositories Traceback (most recent call last):
2016-03-07 18:35:39.528 TRACE barbican.model.repositories File "/opt/stack/barbican/barbican/model/repositories.py", line 358, in get
2016-03-07 18:35:39.528 TRACE barbican.model.repositories entity = query.one()
2016-03-07 18:35:39.528 TRACE barbican.model.repositories File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/query.py", line 2699, in one
2016-03-07 18:35:39.528 TRACE barbican.model.repositories raise orm_exc.NoResultFound("No row was found for one()")
2016-03-07 18:35:39.528 TRACE barbican.model.repositories NoResultFound: No row was found for one()
2016-03-07 18:35:39.528 TRACE barbican.model.repositories
2016-03-07 18:35:39.533 ERROR barbican.api.controllers [req-47ae5cb6-9763-47f7-9336-8841d86ee48d 7c9b51838c5f4841a09c80843baa8148 316fc8a5d7e9454f854ddd20db74c0e9] Secret creation failure seen - please contact site administrator.
2016-03-07 18:35:39.533 TRACE barbican.api.controllers Traceback (most recent call last):
2016-03-07 18:35:39.533 TRACE barbican.api.controllers File "/opt/stack/barbican/barbican/api/controllers/__init__.py", line 104, in handler
2016-03-07 18:35:39.533 TRACE barbican.api.controllers return fn(inst, *args, **kwargs)
2016-03-07 18:35:39.533 TRACE barbican.api.controllers File "/opt/stack/barbican/barbican/api/controllers/__init__.py", line 90, in enforcer
2016-03-07 18:35:39.533 TRACE barbican.api.controllers return fn(inst, *args, **kwargs)
2016-03-07 18:35:39.533 TRACE barbican.api.controllers File "/opt/stack/barbican/barbican/api/controllers/__init__.py", line 146, in content_types_enforcer
2016-03-07 18:35:39.533 TRACE barbican.api.controllers return fn(inst, *args, **kwargs)
2016-03-07 18:35:39.533 TRACE barbican.api.controllers File "/opt/stack/barbican/barbican/api/controllers/secrets.py", line 348, in on_post
2016-03-07 18:35:39.533 TRACE barbican.api.controllers transport_key_id=data.get('transport_key_id'))
2016-03-07 18:35:39.533 TRACE barbican.api.controllers File "/opt/stack/barbican/barbican/plugin/resources.py", line 87, in store_secret
2016-03-07 18:35:39.533 TRACE barbican.api.controllers transport_key_id)
2016-03-07 18:35:39.533 TRACE barbican.api.controllers File "/opt/stack/barbican/barbican/plugin/resources.py", line 51, in _get_plugin_name_and_transport_key
2016-03-07 18:35:39.533 TRACE barbican.api.controllers entity_id=transport_key_id)
2016-03-07 18:35:39.533 TRACE barbican.api.controllers File "/opt/stack/barbican/barbican/model/repositories.py", line 364, in get
2016-03-07 18:35:39.533 TRACE barbican.api.controllers _raise_entity_not_found(self._do_entity_name(), entity_id)
2016-03-07 18:35:39.533 TRACE barbican.api.controllers File "/opt/stack/barbican/barbican/model/repositories.py", line 2250, in _raise_entity_not_found
2016-03-07 18:35:39.533 TRACE barbican.api.controllers id=entity_id))
2016-03-07 18:35:39.533 TRACE barbican.api.controllers NotFound: No TransportKey found with ID http://10.0.2.15:9311/v1/transport_keys/fa97878e-c2e9-4a3b-9895-b653a5997da5
2016-03-07 18:35:39.533 TRACE barbican.api.controllers
2016-03-07 18:35:39.541 INFO barbican.api.middleware.context [req-47ae5cb6-9763-47f7-9336-8841d86ee48d 7c9b51838c5f4841a09c80843baa8148 316fc8a5d7e9454f854ddd20db74c0e9] Processed request: 500 Internal Server Error - POST http://localhost:9311/v1/secrets
Fix proposed to branch: master /review. openstack. org/290577
Review: https:/