Minimalistic event-driven message oriented middleware GitHub automation for bigger/small organisations or individuals
Cosmic river has been designed with the aim of ensuring that it satisfies the requirements of both application developers as well as toolmakers for Github based events. Cosmic-river will collect all the GitHub events and dispatch them to specific clients. The clients can react by the events with specific handlers.
Also tool/application developers will have an universal API on events, where they can bind their application without any development cost.
Note that by by its universality, cosmic-river can be applied in different domains. It can be applied in all domains where event-driven automation based on GitHub make sense.
As example consider this use-case:
you can watch a specific issue beeing closed, cosmic-river server will notify the cosmic-river clients, which will perform custom actions.
consider the https://github.com/kubernetes/kubernetes publish a new release, cosmic-river can trigger automatically the needed automation for making a new package for your distro, testing it with your tool
Testing, CI, Automation:
- automation on Pull-Requests, etc.
- get notified with an Issue is closed, or any other particular event occurs.
- you could trigger specific actions/workflows, or simply gather data thanks to specifics events
Layout of repo:
This repository contains basically two clojure projects.
- cosmic-river (server)
Cosmic-river server aims to distribute the GitHub events to the message-brokers.
The criver-clients will consume these events, filtering them and triggering the automation needed.
You can join #cosmic-river at https://clojurians.slack.com/
or open a thread at http://clojureverse.org/,
or feel free to open an issue here for technical details.
Copyright © 2019 Dario Maiocchi