Create/Delete Software Deplopyment failed when signal_transport is "ZAQAR_SIGNAL"
Part of the template that I used is:
....
config:
type: OS::Heat::SoftwareConfig
properties:
group: puppet
inputs:
- name: foo
- name: bar
outputs:
- name: result
config:
get_file: example-puppet-manifest.pp
deployment:
type: OS::Heat::SoftwareDeployment
properties:
config:
get_resource: config
server:
get_resource: server
input_values:
foo: fooooo
bar: baaaaa
signal_transport: ZAQAR_SIGNAL
server:
type: OS::Nova::Server
properties:
image: {get_param: image}
flavor: {get_param: flavor}
key_name: {get_param: key_name}
security_groups:
- {get_resource: the_sg}
user_data_format: SOFTWARE_CONFIG
networks:
- network: private
....
The error message when executing heat stack-create is as follows:
2016-03-23 13:01:14.198 DEBUG heat.engine.scheduler [req-ad2ac779-b7b3-4192-8950-ca03366474ab None admin] Task create from SoftwareDeployment "deployment" Stack "stack-puppet-zaqar-keyston-backend" [c48c8b
16-3692-4530-adc4-b8a6dd2762a1] running from (pid=25071) step /opt/stack/heat/heat/engine/scheduler.py:216
2016-03-23 13:01:14.199 DEBUG oslo_messaging._drivers.amqpdriver [req-ad2ac779-b7b3-4192-8950-ca03366474ab None admin] CALL msg_id: b9a52a168f2e403b964352186011a85e exchange 'heat' topic 'engine' from (pid
=25071) _send /usr/local/lib/python2.7/dist-packages/oslo_messaging/_drivers/amqpdriver.py:454
2016-03-23 13:01:14.207 DEBUG oslo_messaging._drivers.amqpdriver [-] received message msg_id: b9a52a168f2e403b964352186011a85e reply to reply_4aa9b4c20f634540b65694a3ace25320 from (pid=24951) __call__ /usr
/local/lib/python2.7/dist-packages/oslo_messaging/_drivers/amqpdriver.py:201
2016-03-23 13:01:14.233 DEBUG heat.common.keystoneclient [req-ad2ac779-b7b3-4192-8950-ca03366474ab None admin] Using stack domain f63b535d59944258a04b26d720b14ef2 from (pid=24951) __init__ /opt/stack/heat/
heat/common/heat_keystoneclient.py:97
2016-03-23 13:01:14.233 DEBUG keystoneclient.auth.identity.v3.base [req-ad2ac779-b7b3-4192-8950-ca03366474ab None admin] Making authentication request to http://ip:35357/v3/auth/tokens?nocatalog
from (pid=24951) get_auth_ref /usr/local/lib/python2.7/dist-packages/keystoneclient/auth/identity/v3/base.py:188
2016-03-23 13:01:14.265 DEBUG keystoneclient.session [req-ad2ac779-b7b3-4192-8950-ca03366474ab None admin] Request returned failure status: 401 from (pid=24951) request /usr/local/lib/python2.7/dist-packag
es/keystoneclient/session.py:419
2016-03-23 13:01:14.265 ERROR oslo_messaging.rpc.dispatcher [req-ad2ac779-b7b3-4192-8950-ca03366474ab None admin] Exception during message handling: The request you have made requires authentication. (HTTP
401) (Request-ID: req-43826fbe-a7d3-41a9-9016-71780d07c06a) (HTTP 401)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher Traceback (most recent call last):
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 138, in _dispatch_and_reply
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher incoming.message))
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 183, in _dispatch
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher return self._do_dispatch(endpoint, method, ctxt, args)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/oslo_messaging/rpc/dispatcher.py", line 127, in _do_dispatch
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher result = func(ctxt, **new_args)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/osprofiler/profiler.py", line 117, in wrapper
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher return f(*args, **kwargs)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/opt/stack/heat/heat/common/context.py", line 329, in wrapped
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher return func(self, ctx, *args, **kwargs)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/opt/stack/heat/heat/engine/service.py", line 2012, in show_software_deployment
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher cnxt, deployment_id)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/opt/stack/heat/heat/engine/service_software_config.py", line 216, in show_software_deployment
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher cnxt, sd, input_values.get('deploy_queue_id'))
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/opt/stack/heat/heat/engine/service_software_config.py", line 191, in _refresh_zaqar_software_deployment
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher token = self._get_user_token(cnxt, rs, project)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/opt/stack/heat/heat/engine/service_software_config.py", line 186, in _get_user_token
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher user_id=user, project_id=project, password=password)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/opt/stack/heat/heat/common/heat_keystoneclient.py", line 298, in stack_domain_user_token
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher return auth.get_token(self.session)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/keystoneclient/auth/identity/base.py", line 216, in get_token
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher return self.get_access(session).auth_token
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/keystoneclient/auth/identity/base.py", line 262, in get_access
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher self.auth_ref = self.get_auth_ref(session)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/keystoneclient/auth/identity/v3/base.py", line 190, in get_auth_ref
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher authenticated=False, log=False, **rkwargs)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/keystoneclient/session.py", line 520, in post
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher return self.request(url, 'POST', **kwargs)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/positional/__init__.py", line 94, in inner
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher return func(*args, **kwargs)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher File "/usr/local/lib/python2.7/dist-packages/keystoneclient/session.py", line 420, in request
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher raise exceptions.from_response(resp, method, url)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher Unauthorized: The request you have made requires authentication. (HTTP 401) (Request-ID: req-43826fbe-a7d3-41a9-9016-71780d07c06a)
2016-03-23 13:01:14.265 TRACE oslo_messaging.rpc.dispatcher
2016-03-23 13:01:14.652 ERROR oslo_messaging._drivers.common [req-ad2ac779-b7b3-4192-8950-ca03366474ab None admin] Returning exception The request you have made requires authentication. (HTTP 401) (Request
-ID: req-43826fbe-a7d3-41a9-9016-71780d07c06a) to caller
I think the code assumes (somewhat wrongly) that the transport on the server will be set to zaqar too. Otherwise we need to use the credentials of the deployment itself, which are not created at the moment (but it should be fairly easy to do so).