-
Notifications
You must be signed in to change notification settings - Fork 246
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open call for new gateways #1817
Comments
Hello, I was thinking of working on this issue for GSOC 2022. I have gone through the gateway page of docs. |
@AnuragThePathak I've been told that this is the official place for discussing this.... I'll copy your question over to there and answer there also. |
Oh sorry I can ask there again if you want. |
I'm sorry, I didn't mean to imply that the discussions boards are the official, or only, place to discuss the projects or ask questions. I'm very happy for questions to be asked and answered on these upstream issues as well! I opened the discussion boards as another avenue, perhaps more central, but no more official. I thought a central spot may help with common questions, or to help folks find similar projects. |
Ah. Thanks for the clarification @nate-double-u. If it's all the same, I'm going to keep directing people there regardless because it's easier for me to keep the discussions consolidated instead of fragmented. |
This issue is an open invitation to our community to create (and possibly donate) new Brigade v2-compatible event gateways (or other event sources). A brief overview follows:
Brigade is an event-driven scripting platform built on top of Kubernetes. Brigade projects subscribe to different types of events from different sources and define, through script, how to handle those events. This could be used for anything event-driven, really. Implementing CI/CD workflows that are triggered by various events (webhooks) originating from GitHub is, for instance, a popular use for Brigade, but the only limitation is your imagination.
Brigade itself is not pre-integrated with any event sources. Event gateways are peripheral components that are installed alongside Brigade to receive events from external systems, transform those events into Brigade events, and use the Brigade API to enqueue those events on Brigade's internal event bus.
This diagram summarizes succinctly:
Most gateways are small, simple programs. On the more sophisticated end of the spectrum, however, gateways could go so far as to utilize the Brigade API to monitor the status of events they have created and report those statuses "upstream" to the original source of the event.
Contributions of "other event sources" are also welcome. This is our catch-all term for software that, unlike a gateway, emits original events into Brigade that did not originate from some external/upstream system. Good examples of these would be our cron event source or the noisy neighbor.
Gateways and other event sources that already exist (at various stages of maturity):
Azure Container Registry(Likely to be archived before GA because the CloudEvents Gateway can also work with ACR)@jorgearteiro and some of his colleagues might have already begun work on Teams and Discord gateways.
Further reading:
A modest degree of Brigade foreknowledge would be an asset to a successful candidate, although intimate familiarity with its codebase is not required since you would be engaging in green field development of a component with a relatively narrow scope. Strong Go, TypeScript or JavaScript skills are a must since those are the languages for which the Brigade SDK (API language bindings) are readily available. Go is preferred. Prior experience with Kubernetes and experience developing Helm charts would also be strongly preferred, as there is an expectation that gateways are hosted on Kubernetes and are installed via Helm. Strong written communication skills will also be essential, as your new gateway will require thorough documentation and is incomplete without it.
The expected outcome of your GSoC project would be the GA release of a new gateway that you will donate to the Brigade project.
Green field development of an average gateway is a medium difficulty project that a qualified candidate can complete with roughly 175 hours of effort.
The text was updated successfully, but these errors were encountered: