Updated dockerfiles and min toolset image
- toolset divided to min and full
- new qa-daemonset.yaml to work with node's networks and run checks
Related-PROD: PROD-36128
Change-Id: I0acd5281c3ce7c3577f507110c29984bcec01053
diff --git a/k8s/docker-ubuntu-2004 b/k8s/docker-mos-toolset-full
similarity index 100%
rename from k8s/docker-ubuntu-2004
rename to k8s/docker-mos-toolset-full
diff --git a/k8s/docker-mos-toolset-min b/k8s/docker-mos-toolset-min
new file mode 100644
index 0000000..4df71b4
--- /dev/null
+++ b/k8s/docker-mos-toolset-min
@@ -0,0 +1,33 @@
+FROM ubuntu:20.04
+
+MAINTAINER Alex Savatieiev (a.savex@gmail.com)
+
+WORKDIR /opt
+RUN export TZ="America/Chicago" && \
+ ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone && \
+ apt-get update && \
+ apt-get install -y make gcc g++ git libaio-dev libaio1 zlib1g-dev && \
+ apt-get install -y python3-pip python3-venv vim iperf3 mtr htop iputils-ping traceroute tcpdump wget iproute2 curl screen && \
+ git clone --depth 1 --branch fio-3.26 https://github.com/axboe/fio.git && \
+ cd /opt/fio && \
+ ./configure && \
+ make && \
+ make install && \
+ cd /opt && \
+ rm -rf /opt/fio && \
+ apt --yes remove gcc g++ && \
+ apt autoremove --yes && \
+ rm -rf /var/lib/apt/lists/*
+
+RUN pip3 install --no-cache-dir python-openstackclient python-neutronclient python-heatclient pyghmi python-octaviaclient tempestparser python-ironicclient aodhclient gnocchiclient
+
+RUN mkdir /opt/packages/ && \
+ cd /opt/packages && \
+ apt-get download $(apt-cache depends --recurse --no-recommends --no-suggests --no-conflicts --no-breaks --no-replaces --no-enhances iperf3 | grep "^\w" | sort -u) || true
+
+RUN curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl" && \
+ install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl && \
+ rm kubectl
+
+ENTRYPOINT ["sleep infinite"]
+
diff --git a/k8s/qa-daemonset.yaml b/k8s/qa-daemonset.yaml
new file mode 100644
index 0000000..b6696e4
--- /dev/null
+++ b/k8s/qa-daemonset.yaml
@@ -0,0 +1,28 @@
+apiVersion: apps/v1
+kind: DaemonSet
+metadata:
+ name: nodeinfo
+ namespace: qa-space
+spec:
+ selector:
+ matchLabels:
+ name: nodeinfo
+ template:
+ metadata:
+ labels:
+ name: nodeinfo
+ spec:
+ tolerations:
+ # this toleration is to have the daemonset runnable on master nodes
+ # remove it if your masters can't run pods
+ - key: node-role.kubernetes.io/master
+ operator: Exists
+ effect: NoSchedule
+ containers:
+ - command:
+ - /bin/sleep
+ - infinity
+ name: nodeinfo-pod
+ imagePullPolicy: IfNotPresent
+ image: savex13/toolset-min:0.2
+ hostNetwork: true
diff --git a/k8s/si-tests.tgz b/k8s/si-tests.tgz
index 1bb61de..31e6d42 100644
--- a/k8s/si-tests.tgz
+++ b/k8s/si-tests.tgz
Binary files differ
diff --git a/k8s/toolset.yaml b/k8s/toolset.yaml
new file mode 100644
index 0000000..b005269
--- /dev/null
+++ b/k8s/toolset.yaml
@@ -0,0 +1,78 @@
+apiVersion: v1
+kind: Pod
+metadata:
+ name: toolset
+ namespace: qa-space
+spec:
+ containers:
+ - command:
+ - /bin/sleep
+ - infinity
+ env:
+ - name: LANG
+ value: C.UTF-8
+ - name: OS_IDENTITY_API_VERSION
+ value: "3"
+ - name: OS_AUTH_URL
+ valueFrom:
+ secretKeyRef:
+ key: OS_AUTH_URL
+ name: keystone-keystone-admin
+ - name: OS_REGION_NAME
+ valueFrom:
+ secretKeyRef:
+ key: OS_REGION_NAME
+ name: keystone-keystone-admin
+ - name: OS_INTERFACE
+ valueFrom:
+ secretKeyRef:
+ key: OS_INTERFACE
+ name: keystone-keystone-admin
+ - name: OS_ENDPOINT_TYPE
+ valueFrom:
+ secretKeyRef:
+ key: OS_INTERFACE
+ name: keystone-keystone-admin
+ - name: OS_PROJECT_DOMAIN_NAME
+ valueFrom:
+ secretKeyRef:
+ key: OS_PROJECT_DOMAIN_NAME
+ name: keystone-keystone-admin
+ - name: OS_PROJECT_NAME
+ valueFrom:
+ secretKeyRef:
+ key: OS_PROJECT_NAME
+ name: keystone-keystone-admin
+ - name: OS_USER_DOMAIN_NAME
+ valueFrom:
+ secretKeyRef:
+ key: OS_USER_DOMAIN_NAME
+ name: keystone-keystone-admin
+ - name: OS_USERNAME
+ valueFrom:
+ secretKeyRef:
+ key: OS_USERNAME
+ name: keystone-keystone-admin
+ - name: OS_PASSWORD
+ valueFrom:
+ secretKeyRef:
+ key: OS_PASSWORD
+ name: keystone-keystone-admin
+ - name: OS_DEFAULT_DOMAIN
+ valueFrom:
+ secretKeyRef:
+ key: OS_DEFAULT_DOMAIN
+ name: keystone-keystone-admin
+ imagePullPolicy: IfNotPresent
+ name: toolset
+ image: savex13/toolset:0.2
+ volumeMounts:
+ - mountPath: /artifacts
+ name: qa-pv-a
+ dnsPolicy: ClusterFirst
+ volumes:
+ - emptyDir: {}
+ name: pod-tmp
+ - name: qa-pv-a
+ persistentVolumeClaim:
+ claimName: qa-pvc-a