k3s/cluster/images/conformance
Jeff Grafton 7a938eb541 Create work-around wrappers for pure attribute on go_binary and go_test
This enables cgo when cross-compiling certain tests and binaries to
Linux, while disabling cgo for Windows and Darwin.
2019-02-22 18:08:34 -08:00
..
BUILD Create work-around wrappers for pure attribute on go_binary and go_test 2019-02-22 18:08:34 -08:00
Dockerfile upstream heptio/kube-conformance 2018-10-12 15:33:15 -04:00
Makefile Bump debian-* base image versions to latest 2019-02-04 11:58:51 -08:00
OWNERS Updated OWNERS files to include link to docs 2019-02-04 22:33:12 +01:00
README.md upstream heptio/kube-conformance 2018-10-12 15:33:15 -04:00
run_e2e.sh Adding '/usr/bin/env bash' 2019-02-14 19:18:49 -08:00

README.md

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
$ build/run.sh make cross

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

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

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

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

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

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

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

How to setup RBAC needed

kubectl create clusterrolebinding add-on-cluster-admin --clusterrole=cluster-admin --serviceaccount=default:default

How to run a single test

apiVersion: v1
kind: Pod
metadata:
  name: e2e-producer-consumer-test
spec:
  containers:
  - name: conformance-container
    image: gcr.io/heptio-images/kube-conformance:latest
    image: staging-k8s.gcr.io/conformance-amd64:v1.12.1
    imagePullPolicy: IfNotPresent
    env:
    - name: E2E_FOCUS
      value: "Pods should be submitted and removed"
    volumeMounts:
    - name: output-volume
      mountPath: /tmp/results
  volumes:
  - name: output-volume
    hostPath:
      path: /tmp/results
  restartPolicy: Never

Analytics