Class Policy's _build_conn_params method return wrong value, which result openstack driver connection failed.
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/network/v2/_proxy.py", line 703, in find_pool
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base ignore_missing=ignore_missing)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/proxy.py", line 93, in _find
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base ignore_missing=ignore_missing)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/resource.py", line 932, in find
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return cls.get_by_id(session, name_or_id, path_args=path_args)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/resource.py", line 629, in get_by_id
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base include_headers=include_headers)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/openstack/resource.py", line 596, in get_data_by_id
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base response = session.get(url, endpoint_filter=cls.service)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 518, in get
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return self.request(url, 'GET', **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/_utils.py", line 180, in inner
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return func(*args, **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 324, in request
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base auth_headers = self.get_auth_headers(auth)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 578, in get_auth_headers
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return auth.get_headers(self, **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/plugin.py", line 84, in get_headers
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base token = self.get_token(session)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/base.py", line 89, in get_token
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return self.get_access(session).auth_token
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/base.py", line 135, in get_access
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base self.auth_ref = self.get_auth_ref(session)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/generic/base.py", line 181, in get_auth_ref
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return self._plugin.get_auth_ref(session, **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/identity/v3/base.py", line 166, in get_auth_ref
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base authenticated=False, log=False, **rkwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 526, in post
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return self.request(url, 'POST', **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/_utils.py", line 180, in inner
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base return func(*args, **kwargs)
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base File "/usr/lib/python2.7/site-packages/keystoneauth1/session.py", line 421, in request
2016-01-02 03:38:46.390 TRACE senlin.engine.actions.base raise exceptions.from_response(resp, method, url)
*** InternalServerError: InternalServerError(u'An unexpected error prevented the server from fulfilling your request: (ProgrammingError) (1064, "You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near \') AND trust.deleted_at IS NULL \\n LIMIT 1\' at line 3") \'SELECT trust.id AS trust_id, trust.trustor_user_id AS trust_trustor_user_id, trust.trustee_user_id AS trust_trustee_user_id, trust.project_id AS trust_project_id, trust.impersonation AS trust_impersonation, trust.deleted_at AS trust_deleted_at, trust.expires_at AS trust_expires_at, trust.remaining_uses AS trust_remaining_uses, trust.extra AS trust_extra \\nFROM trust \\nWHERE trust.id = %s AND trust.deleted_at IS NULL \\n LIMIT %s\' ([u\'6f28ef25664b4f26b112722822bec949\'], 1) (Disable debug mode to suppress these details.) (HTTP 500) (Request-ID: req-96b248ca-d953-4a3f-a7a5-0b82bdbed7d1)',)
This is cause by _build_conn_params method of class Policy which return 'trust_id' item as a list.