diff options
author | Eddie Arrage <eddie.arrage@huawei.com> | 2018-07-28 01:02:35 +0000 |
---|---|---|
committer | Eddie Arrage <eddie.arrage@huawei.com> | 2018-07-28 01:16:26 +0000 |
commit | e904c8e2d35cb16f744a0de3b20466ad3befa36d (patch) | |
tree | 90442df97c69bbddf7125c553a777581b107afd8 /clover/tools/jmeter/jmeter-master/Dockerfile | |
parent | 0254cb223d2eace1eaf295eacf4cea4fc4fd9844 (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/Dockerfile | 29 |
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 |