microsoft / azure-pipelines-agent

Azure Pipelines Agent 🚀
MIT License
1.7k stars 855 forks source link

[enhancement]: Kubernetes Operator / Executor #4828

Open Breee opened 3 weeks ago

Breee commented 3 weeks ago

Describe your feature request here

Greetings,

I would like to create a concept fot a Kubernetes Operator/Controller/Executor that is able to:

Conceptionally it would be similar to the gitlab runner kubernetes executor: https://docs.gitlab.com/runner/executors/kubernetes/

  1. Do you guys/gals have plans to work on something similar?
vmapetr commented 3 weeks ago

Hi @Breee thank you for your question!
We don't have plans for the this yet, but you are welcome to create PR with the concept if you think that the following changes will be useful to the agent. Thanks!

Breee commented 3 weeks ago

Some guidance would be good on components that would be involved in this. (Or at least some architecture docs)

I think you have some similar functionality when defining container Images in yaml pipelines which could be reused in parts https://learn.microsoft.com/en-us/azure/devops/pipelines/process/container-phases?view=azure-devops

For k8s we could just use https://github.com/kubernetes-client/csharp to spawn pods and do whatever is necessary to get back what we need to send back to azure devops (logs, artifacts, etc)