Skip to content

Add support to create containers using k8s API/kubectl#1

Closed
fgalind1 wants to merge 1 commit into
mainfrom
k8s-support
Closed

Add support to create containers using k8s API/kubectl#1
fgalind1 wants to merge 1 commit into
mainfrom
k8s-support

Conversation

@fgalind1

@fgalind1 fgalind1 commented Nov 3, 2021

Copy link
Copy Markdown
Owner

One pre-requisite on this option is a shared storage solution that can be shared as a persistent volume
between the runner pod and the container pod for externals, _work/_temp and _work/actions folders.

It adds a new container provider implementation KubernetesCommandManager besides DockerCommandManager

Container provider solution can be chosen via RUNNER_CONTAINER_PROVIDER environment variable.
If not provided it defaults to "docker". Options allowed: "docker" and "kubernetes"

Persistent volume used for the container pod is taken from RUNNER_PERSISTENT_VOLUME_CLAIM environment variable

Example:

kubectl get pods -n github-actions
NAME                                                              READY   STATUS    RESTARTS   AGE
...
github.runner-9cgfx-m49b2                            1/1     Running   0          7m1s
github.runner-9cgfx-m49b2-container                  1/1     Running   0          2m53s
github.runner-9cgfx-m49b2-service-1                  1/1     Running   0          2m50s
github.runner-9cgfx-m49b2-service-2                  1/1     Running   0          2m52s
...

One pre-requisite on this option is a shared storage solution that can be shared as a persistent volume
between the runner pod and the container pod for externals, _work/_temp and _work/actions folders.

Container provider solution can be chosen via RUNNER_CONTAINER_PROVIDER environment variable.
If not provided it defaults to "docker". Options allowed: "docker" and "kubernetes"
@fgalind1 fgalind1 closed this Nov 3, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant