aboutsummaryrefslogtreecommitdiffstats
path: root/docker/healthcheck
diff options
context:
space:
mode:
Diffstat (limited to 'docker/healthcheck')
-rw-r--r--docker/healthcheck/Dockerfile17
-rw-r--r--docker/healthcheck/hooks/post_checkout6
-rw-r--r--docker/healthcheck/testcases.yaml24
3 files changed, 47 insertions, 0 deletions
diff --git a/docker/healthcheck/Dockerfile b/docker/healthcheck/Dockerfile
new file mode 100644
index 00000000..ce3f82ba
--- /dev/null
+++ b/docker/healthcheck/Dockerfile
@@ -0,0 +1,17 @@
+FROM opnfv/functest-kubernetes-core
+
+ARG K8S_TAG=v1.9.4
+
+RUN apk --no-cache add --update make py-pip bash git go \
+ grep rsync linux-headers musl-dev findutils \
+ libffi libssl1.0 libjpeg-turbo && \
+ apk --no-cache add --virtual .build-deps --update \
+ python-dev libffi-dev openssl-dev libjpeg-turbo-dev && \
+ git clone https://github.com/kubernetes/kubernetes /src/k8s.io/kubernetes && \
+ (cd /src/k8s.io/kubernetes && git checkout $K8S_TAG && \
+ make kubectl ginkgo && \
+ make WHAT=test/e2e/e2e.test && \
+ mv _output/bin/kubectl /usr/local/bin) && \
+ apk del .build-deps
+COPY testcases.yaml /usr/lib/python2.7/site-packages/xtesting/ci/testcases.yaml
+CMD ["run_tests", "-t", "all"]
diff --git a/docker/healthcheck/hooks/post_checkout b/docker/healthcheck/hooks/post_checkout
new file mode 100644
index 00000000..20f69500
--- /dev/null
+++ b/docker/healthcheck/hooks/post_checkout
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+from="${DOCKER_REPO%/*}/functest-kubernetes-core:${DOCKER_TAG}"
+sed -i "s|^FROM.*$|FROM ${from}|" Dockerfile
+
+exit $?
diff --git a/docker/healthcheck/testcases.yaml b/docker/healthcheck/testcases.yaml
new file mode 100644
index 00000000..5864755e
--- /dev/null
+++ b/docker/healthcheck/testcases.yaml
@@ -0,0 +1,24 @@
+---
+tiers:
+ -
+ name: healthcheck
+ order: 1
+ ci_loop: '(merge)|(verify)|(daily)|(weekly)'
+ description: >-
+ A set of e2e tests integrated from kubernetes project.
+ testcases:
+ -
+ case_name: k8s_smoke
+ project_name: functest
+ criteria: 100
+ blocking: false
+ description: >-
+ Smoke Tests a running Kubernetes cluster, which
+ validates the deployed cluster is accessible, and
+ at least satisfies minimal functional requirements.
+ dependencies:
+ installer: '(compass)|(joid)|(kubespray)'
+ scenario: 'k8-*'
+ run:
+ module: 'functest_kubernetes.k8stest'
+ class: 'K8sSmokeTest'