argoproj / argoproj/argo-workflows
Workflows on server-mode shouldn't require "argo-workflows-webhook-clients" if not using specific webhooks
- Dominant language
- Go
- Stars
- 17k
- Forks
- 3.7k
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 138
Description
# Summary
Currently there's a requirement that, if you're running on server-mode you'll need to add the Secret `argo-workflows-webhook-clients` as per described here: https://argoproj.github.io/argo-workflows/webhooks/
Reading the GoLang code, I saw that secret only gets used if I have a `webhook` from Gitlab, Bitbucket and so forth, but not if I just want to use it as an API instead, sending events through Curl, for example.
My app is on server-mode because authentication will happen using SSO and Keycloak under the ingress level, so I won't need it at app level as much, but I ended up having to create this Secret with dummy values just to make the workflow be triggered correctly.
I think the requirement of that Secret should be removed for such cases, and only used if the Service Account is one of the types you guys check.
# Use Cases
- When creating event binding on a argo-workflows running in need server mode, without the request being from any of the specific webhook types (Gitlab, Bitbucket, etc).
---
**Message from the maintainers**:
Love this enhancement proposal? Give it a 👍. We prioritise the proposals with the most 👍.
Contributor guide
Research direction
Start by tracing the Go server-mode startup path and the handling of the argo-workflows-webhook-clients Secret when creating an event binding. Confirm the behavior for GitLab, Bitbucket, and other specific webhook types versus curl/API requests. Done means server-mode API event bindings work without dummy Secret values while supported webhooks retain their required configuration.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, kubernetes
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100