Skip to content
This repository has been archived by the owner on Sep 19, 2020. It is now read-only.

AkihiroSuda/kube-moby-integration

Repository files navigation

Moby Integration Test Runner for Kubernetes

Run test-integration of Moby (Docker daemon) in parallel using Kubernetes.

See ./src/entrypoints.d for the actual test scripts.

Usage

Build and push the image:

$ export DOCKER_BUILDKIT=1
$ IMAGE=example.com/kmi:t$(date +%s)
$ docker build -t docker-dev:master https://github.com/docker/docker.git
$ docker build -t $IMAGE .
$ docker push $IMAGE

Generate and apply the Kubernetes manifests:

$ ./kube-moby-integration.yaml.sh $IMAGE
$ kubectl apply -f kube-moby-integration.generated.yaml

Watch output:

$ kubectl get jobs -l jobgroup=kube-moby-integration
$ ./kubectl-logs-all.sh

Implementation Note

As of June 2019, Kubernetes still does not implement "Indexed Job": kubernetes/kubernetes#14188

The proper way to solve the issue would be to have a queue, but it seems kind of over-engineering: https://kubernetes.io/docs/tasks/job/fine-parallel-processing-work-queue/#starting-redis

So currently this project is implemented with "Job Group" pattern: https://kubernetes.io/docs/tasks/job/parallel-processing-expansion/

About

[POC] Moby Integration Test Runner for Kubernetes

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published