I use mistral but get Unauthorized
here is the output from mistral client: [pvtest@SEED-SERVER media-workflows]$ mistral run-action heat.stacks_list {"result": "Failed to run action [action_ex_id=None, action_cls='<class 'mistral.actions.action_factory.heataction'="">', attributes='{u'client_method_name': u'stacks.list'}', params='{}']\n HeatAction.stacks.list failed: <class 'mistral.exceptions.unauthorizedexception'="">: Unauthorized"}
here is the output from mistral server: [mistral@mistralserver mistral(keystone_admin)]$ 2017-01-13 15:13:41.161 10352 INFO mistral.api.controllers.v2.action_execution [-] Create action_execution [action_execution=ActionExecution [id='Unset', workflow_name='Unset', task_name='Unset', task_execution_id='Unset', state='Unset', state_info='Unset', tags='Unset', name='heat.stacks_list', description='Unset', accepted='Unset', input='Unset', output='Unset', created_at='Unset', updated_at='Unset', params='Unset']] 2017-01-13 15:13:41.165 10329 INFO mistral.engine.engine_server [-] Received RPC request 'start_action'[rpc_ctx=MistralContext {u'is_target': False, u'project_name': None, u'user_id': u'de6bdbc7841f48a3bba438f041882fea', u'region_name': None, u'roles': [u''], u'auth_uri': u'http://135.251.148.222:5000/v2', u'auth_cacert': None, u'auth_token': u'f4b6d48a459b4ec8a71299cdd509a56f', u'expires_at': None, u'is_trust_scoped': False, u'is_admin': False, u'service_catalog': {}, u'project_id': u'3cc682c4c2d84567bbadc5332fe8f668', u'user_name': None}, name=heat.stacks_list, input={}, description=None, params={}] 2017-01-13 15:13:41.178 10330 INFO mistral.engine.executor_server [-] Received RPC request 'run_action'[rpc_ctx=MistralContext {u'is_target': False, u'project_name': None, u'user_id': u'de6bdbc7841f48a3bba438f041882fea', u'region_name': None, u'roles': [u''], u'auth_uri': u'http://135.251.148.222:5000/v2', u'auth_cacert': None, u'auth_token': u'f4b6d48a459b4ec8a71299cdd509a56f', u'expires_at': None, u'is_trust_scoped': False, u'is_admin': False, u'service_catalog': {}, u'project_id': u'3cc682c4c2d84567bbadc5332fe8f668', u'user_name': None}, action_ex_id=None, action_class=mistral.actions.openstack.actions.HeatAction, attributes={u'client_method_name': u'stacks.list'}, params={}] 2017-01-13 15:13:41.179 10330 WARNING mistral.actions.openstack.base [-] Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/mistral/actions/openstack/base.py", line 125, in run method = self._get_client_method(self._get_client()) File "/usr/local/lib/python2.7/dist-packages/mistral/actions/openstack/base.py", line 92, in _get_client return self._create_client() File "/usr/local/lib/python2.7/dist-packages/mistral/actions/openstack/actions.py", line 210, in _create_client heat_endpoint = keystone_utils.get_endpoint_for_project('heat') File "/usr/local/lib/python2.7/dist-packages/mistral/utils/openstack/keystone.py", line 79, in get_endpoint_for_project service_catalog = obtain_service_catalog(ctx) File "/usr/local/lib/python2.7/dist-packages/mistral/utils/openstack/keystone.py", line 148, in obtain_service_catalog raise exceptions.UnauthorizedException() UnauthorizedException: Unauthorized
2017-01-13 15:13:41.179 10330 ERROR mistral.engine.default_executor [-] Failed to run action [action_ex_id=None, action_cls='<class 'mistral.actions.action_factory.heataction'="">', attributes='{u'client_method_name': u'stacks.list'}', params='{}'] HeatAction.stacks.list failed: <class 'mistral.exceptions.unauthorizedexception'="">: Unauthorized 2017-01-13 15:13:41.179 10330 ERROR mistral.engine.default_executor Traceback (most recent call last): 2017-01-13 15:13:41.179 10330 ERROR mistral.engine.default_executor File "/usr/local/lib/python2.7/dist-packages/mistral/engine/default_executor.py", line 89, in run_action 2017-01-13 15:13:41.179 10330 ERROR mistral.engine.default_executor result = action.run() 2017-01-13 15:13:41.179 10330 ERROR mistral.engine.default_executor File "/usr/local/lib/python2.7/dist-packages/mistral/actions/openstack/base.py", line 142, in run 2017-01-13 15:13:41.179 10330 ERROR mistral.engine ...
So Mistral tries to get Heat endpoint from Keystone catalog. It uses data [keystone_authtoken] in mistral.conf for authentication. Try to verify whatever is configured there. You can try to use 'curl' and try to get Heat endpoint data using configuration you defined in mistral.conf