Support different executors
Overview
Right now the helm chart only supports the Kubernetes executor, but this means that we can't use the helm chart for any other type of executor, for example docker+machine
. The helm chart is still very useful when you want to deploy the Runner manager on Kubernetes. For GitLab.com shared Runners we can't use kubernetes executor because we are running untrusted code, especially if we don't run gVisor like suggested in https://gitlab.com/gitlab-com/gl-infra/infrastructure/issues/6846. As part of Continues Delivery for GitLab Runner we have identified that deploying the Runner managers on a Kubernetes cluster is the optional solution for quick deploys whilst still using the docker+machine
executor as the first iteration.
Proposal
- The default executor should stay
kubernetes
but allow the user to specify another executor such asdocker+machine
. - If some other executor apart from
kubernetes
is choosen we should not config specific things about kubernetes, for example, stop setting the node selectors