mirror of
https://github.com/ansible/awx.git
synced 2026-01-13 11:00:03 -03:30
Merge pull request #917 from ryanpetrello/more-stdout-event-polish
more stdout event polish
This commit is contained in:
commit
4707b5e020
@ -43,44 +43,35 @@ def get_current_user_or_none():
|
||||
return u
|
||||
|
||||
|
||||
def emit_job_event_detail(sender, **kwargs):
|
||||
def emit_event_detail(serializer, relation, **kwargs):
|
||||
instance = kwargs['instance']
|
||||
created = kwargs['created']
|
||||
if created:
|
||||
event_serialized = JobEventWebSocketSerializer(instance).data
|
||||
consumers.emit_channel_notification('job_events-' + str(instance.job.id), event_serialized)
|
||||
event_serializer = serializer(instance)
|
||||
consumers.emit_channel_notification(
|
||||
'-'.join([event_serializer.get_group_name(instance), str(getattr(instance, relation))]),
|
||||
event_serializer.data
|
||||
)
|
||||
|
||||
|
||||
def emit_job_event_detail(sender, **kwargs):
|
||||
emit_event_detail(JobEventWebSocketSerializer, 'job_id', **kwargs)
|
||||
|
||||
|
||||
def emit_ad_hoc_command_event_detail(sender, **kwargs):
|
||||
instance = kwargs['instance']
|
||||
created = kwargs['created']
|
||||
if created:
|
||||
event_serialized = AdHocCommandEventWebSocketSerializer(instance).data
|
||||
consumers.emit_channel_notification('ad_hoc_command_events-' + str(instance.ad_hoc_command_id), event_serialized)
|
||||
emit_event_detail(AdHocCommandEventWebSocketSerializer, 'ad_hoc_command_id', **kwargs)
|
||||
|
||||
|
||||
def emit_project_update_event_detail(sender, **kwargs):
|
||||
instance = kwargs['instance']
|
||||
created = kwargs['created']
|
||||
if created:
|
||||
event_serialized = ProjectUpdateEventWebSocketSerializer(instance).data
|
||||
consumers.emit_channel_notification('project_update_events-' + str(instance.project_update_id), event_serialized)
|
||||
emit_event_detail(ProjectUpdateEventWebSocketSerializer, 'project_update_id', **kwargs)
|
||||
|
||||
|
||||
def emit_inventory_update_event_detail(sender, **kwargs):
|
||||
instance = kwargs['instance']
|
||||
created = kwargs['created']
|
||||
if created:
|
||||
event_serialized = InventoryUpdateEventWebSocketSerializer(instance).data
|
||||
consumers.emit_channel_notification('inventory_update_events-' + str(instance.inventory_update_id), event_serialized)
|
||||
emit_event_detail(InventoryUpdateEventWebSocketSerializer, 'inventory_update_id', **kwargs)
|
||||
|
||||
|
||||
def emit_system_job_event_detail(sender, **kwargs):
|
||||
instance = kwargs['instance']
|
||||
created = kwargs['created']
|
||||
if created:
|
||||
event_serialized = SystemJobEventWebSocketSerializer(instance).data
|
||||
consumers.emit_channel_notification('system_job_events-' + str(instance.system_job_id), event_serialized)
|
||||
emit_event_detail(SystemJobEventWebSocketSerializer, 'system_job_id', **kwargs)
|
||||
|
||||
|
||||
def emit_update_inventory_computed_fields(sender, **kwargs):
|
||||
|
||||
@ -16,19 +16,22 @@ event group and event type which we later use in our wire protocol to control me
|
||||
You can connect to the Tower channels implementation using any standard websocket library but pointing it to `/websocket`. You must
|
||||
provide a valid Auth Token in the request URL.
|
||||
|
||||
Once you''ve connected you are not subscribed to any event groups. You subscribe by sending a json request that looks like the following:
|
||||
Once you've connected, you are not subscribed to any event groups. You subscribe by sending a json request that looks like the following:
|
||||
|
||||
'groups': {
|
||||
'jobs': ['status_changed', 'summary'],
|
||||
'schedules': ['changed'],
|
||||
'ad_hoc_command_events': [ids...],
|
||||
'job_events': [ids...],
|
||||
'workflow_events': [ids...]
|
||||
'workflow_events': [ids...],
|
||||
'project_update_events': [ids...],
|
||||
'inventory_update_events': [ids...],
|
||||
'system_job_events': [ids...],
|
||||
'control': ['limit_reached'],
|
||||
}
|
||||
|
||||
These map to the event group and event type you are interested in. Sending in a new groups dictionary will clear all of your previously
|
||||
subscribed groups before subscribing to the newly requested ones. This is intentional makes the single page navigation much easier since
|
||||
subscribed groups before subscribing to the newly requested ones. This is intentional, and makes the single page navigation much easier since
|
||||
you only need to care about current subscriptions.
|
||||
|
||||
## Deployment
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user