Notifications center

From Nasqueron Agora
Revision as of 21:47, 24 October 2024 by Dereckson (talk | contribs) (+cat)

The notifications center is an intelligent bus to accept payloads from services like GitHub, Phabricator, Jenkins, DockerHub and fire standardized notifications to an AMQP broker.

Quickstart

To run it on Docker, fire two containers, one for RabbitMQ, one for the Notifications center:

   $ mkdir -p /srv/notifications/rabbitmq/lib /srv/notifications/storage
   $ docker network create -d bridge notifications
   $ docker run -dt --network=notifications --name notifications-mq -v /srv/notifications/rabbitmq/lib:/var/lib/rabbitmq nasqueron/rabbitmq
   $ docker run -dt --network=notifications -e BROKER_HOST=notifications-mq -e BROKER_USERNAME=... -e BROKER_PASSWORD=... -e BROKER_VHOST=... -v /srv/notifications/storage:/var/wwwroot/default/storage nasqueron/notifications

Then, you can populate the configuration in /srv/notifications/storage/app and create your user on RabbitMQ matching credentials set in BROKER_* environment variables.

Repositories and useful links

Consume from the notifications center

Extend the notifications center

You can extend the main intelligent bus with microservices:

  • /Delivery API — AMQP to HTTP gateway: allow to consume messages from an AMQP broker in HTTP (under development)
  • /Web client — Show a notifications stream in real-time in a JS UI (under development)