On 05/26/2016 12:18 PM, Thomas Herve wrote:
On Thu, May 26, 2016 at 11:48 AM, Jiri Tomasek <jtoma...@redhat.com> wrote:
On 05/25/2016 08:08 PM, Thomas Herve wrote:
Sorry for not responding earlier, but I have some inputs. In Heat we
publish events on Zaqar queue, and we defined this format:

      {
              'timestamp': $timestamp,
              'version': '0.1',
              'type': 'os.heat.event',
              'id': $uuid,
              'payload': {
                  'XXX
              }
      }

Thanks, it totally makes sense. So when I convert my example to your usage
it looks like this:

{
     body: {
         'timestamp': $timestamp,
         'type': 'tripleo.validations.v1.run_validation',
         'id': $uuid,
         'payload': {
             execution_id: '123123123',
             validation_id: '123321'
             ...
          }
     }
}

I am not sure whether to separate the version from type as it would become
complicated to reconstruct the workflow name (at least for tripleo
workflows).
The most important is the 'type' as that is the key which we'd like to use
on client to identify what action to take.
Looks great to me, thanks!


So as the workflows start to shape up and we start to use Zaqar messages in clients, this is the mistral task we use to send a message:

send_message:
  action: zaqar.queue_post
  input:
  queue_name: <% $.queue_name %>
  messages:
    body:
      type: tripleo.baremetal.v1.register_or_update
      execution_id: <% execution().id %>
      payload:
        status: <% $.get('status', 'SUCCESS') %>
        message: <% $.get('message', '') %>
        registered_nodes: <% $.registered_nodes or [] %>

I am coming to a conclusion, that instead of passing just the execution ID, it would be much more beneficial to send the whole execution object, because 1. the client is going to have to fire up additional request to get the execution info 2. execution object itself often includes most of the information which this task explicitly includes in payload



__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to