kubernetes/cluster/images/conformance/README.md
John Schnake b3f5a086ab Adds an optional golang runner to the conformance test image
Adds a go app which runs the e2e tests with ginkgo.

 - Supports all the existing env vars of the bash script
 - Improved flow control to avoid and better report issues
regarding the process PID
 - Adds flags for modifying where to find the test binary and
ginkgo binary so that you can run it locally
 - Adds 3 flags for specifying extra args before the double-dash,
extra args after the double-dash, and the seperator to use between
values in those env vars. This allows setting arbitrary, complex
values for use on the command such as flags which include spaces
or other characters.
2019-07-01 16:26:13 -05:00

1.3 KiB

conformance

conformance is a standalone container to launch Kubernetes end-to-end tests, for the purposes of conformance testing. conformance is built for multiple architectures and the image is pushed automatically on every release.

How to release by hand

# First, build the binaries by running make from the root directory
$ make WHAT="test/e2e/e2e.test vendor/github.com/onsi/ginkgo/ginkgo cmd/kubectl cluster/images/conformance/go-runner"

# Build for linux/amd64 (default)
# export REGISTRY=$HOST/$ORG to switch from k8s.gcr.io

$ make push VERSION={target_version} ARCH=amd64
# ---> k8s.gcr.io/conformance-amd64:VERSION
# ---> k8s.gcr.io/conformance:VERSION (image with backwards-compatible naming)

$ make push VERSION={target_version} ARCH=arm
# ---> k8s.gcr.io/conformance-arm:VERSION

$ make push VERSION={target_version} ARCH=arm64
# ---> k8s.gcr.io/conformance-arm64:VERSION

$ make push VERSION={target_version} ARCH=ppc64le
# ---> k8s.gcr.io/conformance-ppc64le:VERSION

$ make push VERSION={target_version} ARCH=s390x
# ---> k8s.gcr.io/conformance-s390x:VERSION

If you don't want to push the images, run make or make build instead

How to run tests

kubectl create -f conformance-e2e.yaml

Analytics