Skip to content
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

Add webhook for bob to notice new/changed resources #114

Open
Tracked by #115
lispyclouds opened this issue Oct 10, 2022 · 4 comments
Open
Tracked by #115

Add webhook for bob to notice new/changed resources #114

lispyclouds opened this issue Oct 10, 2022 · 4 comments

Comments

@lispyclouds
Copy link
Member

No description provided.

This was referenced Oct 10, 2022
@emgrasmeder
Copy link
Member

can you point vaguely to where this change would happen @lispyclouds? I never know where to start investigating.

@lispyclouds
Copy link
Member Author

So these would be the directions I'd take:

  • It order for something to listen for webhooks, we need a server which translates it to a start pipeline REST call.
  • I'm apprehensive to build this functionality into Bob core for the following reasons:
    • This is Bob caring about things more than just orchestration and specifics.
    • If this is built into Bob, how should we reconcile the existence of the pipeline in Bob? How would the POST call be made to Bob which creates the pipeline which could be started by the webhook?
    • Webhooks are specific to the thing sending it, meaning Bob needs to be aware of GitHub/lab etc schemas etc
  • If we don't build it into Bob, the following could be a thought process:
    • We create another small http service which receives the payload from the webhook.
    • Maybe optionally create the pipeline too? I'm not very sure of it.
    • It translates the webhook to a POST call to the start pipeline endpoint.

What's your thoughts?

@aldosolorzano
Copy link
Contributor

aldosolorzano commented Mar 4, 2023

From my little understanding so far about Bob and following the philosophy of it, this seems to relate to the UI problem. It is something that bob-cd can provide as an opinionated way of consuming the data from Bob and translate it to the UI, although it is optional and not part of the core of bob.
As you said, maybe a service that supports the most common code hosting paltforms (gihub, gitlab, bitbucket) and then it could:

  • receive a webhook and translate that into Bob domain
    • create a pipeline (why you are not sure about it?)
    • start a pipeline

A good benefit about it is that it provides a fast setup of bob with the git platform of choice and then if needed, it can be replaced for something that suits the needs of the particular user (this is one of the things I really like about bob).

Bob-cd could provide the whole package, but as user you are free to own some parts of it if it makes sense to do so, otherwise you can leverage the opinionated version of Bob.

The trade-off is that we would add something extra to maintain.

@lispyclouds
Copy link
Member Author

@aldosolorzano I think this makes sense. We can create a reference service like the artifact store and the resource provider which runs alongside the Bob cluster and listens for webhooks and interacts with Bob. Yes, it could even do the CRUD for the pipeline too.

Lemme know if you're interested and I can add you an repo here and you and use that 😄

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: prioritized to pick up
Development

No branches or pull requests

3 participants