- Notifications
You must be signed in to change notification settings - Fork28
An example Event-Driven application in Go built with Watermill library.
License
ThreeDotsLabs/event-driven-example
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
This is an example Event-Driven application written in Go, usingWatermill.
The projects aims to integrate incoming GitHub webhooks with Grafana and Slack, essentially adding annotations andsending messages when a new commit is pushed. There are also simulated deployment messages sent over RabbitMQ todemonstrate working with multiple event streams.
An example result can look like this:
If you'd like to integrate the example with your Slack workspace, copy.env-example to.env and fill in thewebhook URL inSLACK_WEBHOOK_URL variable.
In addition to the application, the docker-compose environment consists of:
- Kafka andZooKeeper
- RabbitMQ
- Grafana
- Prometheus
The whole environment can be run with:
docker-compose up
You can now configure your GitHub repository to send webhooks to the application (you need to expose port8080 to theexternal network first).
Alternatively, you can run./scripts/send-stub-webhook.sh to send some stub webhooks.
Visitlocalhost:3000/d/webhooks to see annotations added in Grafana. Useadmin:secret as credentials.
You can access the Watermill dashboard atlocalhost:3000/d/watermill. See whatchanges when you send more webhooks over time.
SeeWatermill's documentation to learn more.
About
An example Event-Driven application in Go built with Watermill library.
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.



