* Job object can now control the output and generate K:V output for
notification types that can support it
* Notifications store the body as json/dict now to encode more
information
* Notification Type can further compose the message based on what is
sensible for the notification type
* This will also allow customizing the message template in the future
* All notification types use sane defaults for the level of detail now
* Implement concrete Notification model for notification runs
* Implement NotificationTemplate and Notification serializers and views
* Implement ancillary views
* Implement NotificationTemplate trigger m2m fields on all job templates
via a fields mixin
* Link NotificationTemplates with an org
* Link notifications with the activity stream
* Implement Notification celery tasks
* Extend Backend field parameters to identify sender and receiver as
parameters needed by the message and not the backend itself
* Updates to backends to better fit the django email backend model as it
relates to Messages
* Implement success job chain task + notifications
* Implement notifications in error job chain task
Linking in a success callback that will be invoked by our UnifiedJobs in
the case they terminate normally. This is where we'll hook in the
success notification type.
* A basic NotificationTemplate model class with early notification type
definitions
* Initial implementations of the Email, Slack, and Twilio Notification
backends using the Django email backend system
* Some dependencies thereof
- form and perspective next scheduler runs are in single list form view for projects and job templates
- submit/cancel/x at top of form project panel work
-tags (like admin on users) are now correctly centered
-buttons on certain forms do not create header centering issues
-added lockup css for use with panel header titles
updating test imports, again
relocate base and make tests a module
added pytest config for awx/lib/site-packages
restrucuting more test imports
more test refactoring
refactoring commands tests