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/grpc/jmeter.proto | |
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/grpc/jmeter.proto')
-rw-r--r-- | clover/tools/jmeter/jmeter-master/grpc/jmeter.proto | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/clover/tools/jmeter/jmeter-master/grpc/jmeter.proto b/clover/tools/jmeter/jmeter-master/grpc/jmeter.proto new file mode 100644 index 0000000..7213faa --- /dev/null +++ b/clover/tools/jmeter/jmeter-master/grpc/jmeter.proto @@ -0,0 +1,43 @@ +// 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 + +syntax = "proto3"; + +package jmeter; + +// The controller service definition. +service Controller { + + rpc GenTest (ConfigJmeter) returns (JmeterReply) {} + rpc StartTest (TestParams) returns (JmeterReply) {} + rpc GetResults (JResults) returns (JmeterReply) {} +} + +message TestParams { + string num_slaves = 1; + string test_plan = 2; + string slave_ips = 3; +} + +message ConfigJmeter { + string url_list = 1; + string num_threads = 2; + string url_names = 3; + string url_protocols = 4; + string url_methods = 5; + string loops = 6; + string ramp_time = 7; +} + +message JmeterReply { + string message = 1; +} + +message JResults { + string r_format = 1; + string r_file = 2; +} |