summaryrefslogtreecommitdiffstats
path: root/clover/tools/jmeter/jmeter-master/Dockerfile
diff options
context:
space:
mode:
authorEddie Arrage <eddie.arrage@huawei.com>2018-07-28 01:02:35 +0000
committerEddie Arrage <eddie.arrage@huawei.com>2018-07-28 01:16:26 +0000
commite904c8e2d35cb16f744a0de3b20466ad3befa36d (patch)
tree90442df97c69bbddf7125c553a777581b107afd8 /clover/tools/jmeter/jmeter-master/Dockerfile
parent0254cb223d2eace1eaf295eacf4cea4fc4fd9844 (diff)
Implement initial Jmeter master/slave containers
- Jmeter can be used for L4-7 functional and performance testing - Jmeter master has gRPC server for management - Generates Jmeter test plans from minimal yaml params file (sample to be added with cloverctl) using template - Optionally span tests across slave containers to allow greater loads to be generated - Specify loop/thread/slave count and URL list, which dictates target and number of connections that will be attempted - clover-controller will interface to gRPC interface on Jmeter master - Start tests on master and retrieve log/result files - Render master and slave k8s manifests files Change-Id: Id144c8f551b7d375ff252c8de0611f895b50387c Signed-off-by: Eddie Arrage <eddie.arrage@huawei.com>
Diffstat (limited to 'clover/tools/jmeter/jmeter-master/Dockerfile')
-rw-r--r--clover/tools/jmeter/jmeter-master/Dockerfile29
1 files changed, 29 insertions, 0 deletions
diff --git a/clover/tools/jmeter/jmeter-master/Dockerfile b/clover/tools/jmeter/jmeter-master/Dockerfile
new file mode 100644
index 0000000..da0e474
--- /dev/null
+++ b/clover/tools/jmeter/jmeter-master/Dockerfile
@@ -0,0 +1,29 @@
+# Copyright (c) Authors of Clover
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Apache License, Version 2.0
+# which accompanies this distribution, and is available at
+# http://www.apache.org/licenses/LICENSE-2.0
+
+FROM java:8
+
+RUN wget http://apache.mirrors.hoobly.com//jmeter/binaries/apache-jmeter-4.0.tgz
+RUN tar -xvzf apache-jmeter-4.0.tgz
+RUN rm apache-jmeter-4.0.tgz
+RUN mv apache-jmeter-4.0 /jmeter
+ENV JMETER_HOME /jmeter
+ENV PATH $JMETER_HOME/bin:$PATH
+COPY rmi_keystore.jks $JMETER_HOME/bin
+
+RUN apt update && apt install -y python-setuptools python-dev python-pip
+RUN python -m pip install --upgrade pip
+RUN python -m pip install enum34 futures cython
+RUN python -m pip install grpcio protobuf jinja2
+
+WORKDIR /jmeter/bin
+
+COPY jmeter-master/process process
+COPY jmeter-master/grpc grpc
+COPY jmeter-master/tests tests
+
+CMD ./process/grpc_process.sh no_init