argoproj / argoproj/argo-workflows

Endpoint plugin type

Open
#8,142 2 comments 13 reactions 0 assignees View on GitHub
area/plugins
Dominant language
Go
Stars
17k
Forks
3.7k
Avg merge
1d 15h
Merged PRs (30d)
138

Description

# Summary

Currently the only type of plugin is a `sidecar`, one which is started next to the agent. This has benefits:

* Fully managed start and stop.
* No need to worry too much about network problems.
* Blast raidius of workflow is just the plugin.
* Network packets are confined to localhost.

For other users they might want to run the plugin elsewhere.

* The plugin is heavy-weight, so running many copies is too expensive.
* The plugin takes a long time to start.
* Might not be Kubernetes services, run in different cluster, etc.

These plugins could be run as normal Kubernetes remote services on HTTPS with token authorisation.

It might be possible to implement these as a sidecar plugin which proxies the request

---

**Message from the maintainers**:

Love this enhancement proposal? Give it a 👍. We prioritise the proposals with the most 👍.

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are named. Start by tracing how sidecar plugins are started, stopped, and contacted, then review the Kubernetes service and HTTPS token-authorisation requirements described here. Done means a plugin can run as a remote service rather than only as a sidecar, with its lifecycle and authentication behavior defined.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
backend, cloud, distributed-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.