You can set your own webhooks in the se2-config.yaml file that subo created for you in your suborbital/config directory.
Configuration options
The webhooks stanza in se2-config.yaml consists of a top level webhooks object with a list of entries.
Each entry has an id referencing the builder.function.promoted hook point and a list of one or more HTTP targets, which consist of a url, method, and dictionary of headers (optional).
Examples
A simple inline example:
capabilities:
# ...
webhooks:
- id: builder.function.promoted
targets:
- url: http://example.com/promoted
method: POST
headers:
'X-Some-Header': 'some value'
An example with shared headers and multiple targets for a single hook point:
commonHeaders: &commonHeaders
'Authorization': 'Bearer d2UncmUgaGlyaW5nCg=='
webhooks:
- id: builder.function.promoted
targets:
- url: http://echo-server:1234/promoted
method: POST
headers: *commonHeaders
- url: https://postman-echo.com/post
method: POST
headers: *commonHeaders
Hook points
Devs at work
Stay tuned for more hook points!
builder.function.promoted
Description Runs when an end user successfully deploys a plugin.
Sample response(JSON):
{
"webhook_id": "builder.function.promoted",
"compute_context": {
"request_id": "ac1f5e84-5327-46a5-9d71-8ad766f39979",
"request_url": "/api/v1/draft/com.suborbital.demo/default/webhook/promote"
},
"response_body": {
"ident": "com.suborbital.demo",
"namespace": "default",
"fn": "webhook",
"version": "v1.0.0"
}
}