forked from atlassian/dc-app-performance-toolkit
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcrowd.yml
95 lines (91 loc) · 3.61 KB
/
crowd.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
---
settings:
artifacts-dir: results/crowd/%Y-%m-%d_%H-%M-%S
aggregator: consolidator
verbose: false
env:
application_hostname: test_crowd_instance.atlassian.com # Crowd DC hostname without protocol and port e.g. test-crowd.atlassian.com or localhost
application_protocol: http # http or https
application_port: 80 # 80, 443, 8080, 4990, etc
secure: True # Set False to allow insecure connections, e.g. when using self-signed SSL certificate
application_postfix: # e.g. /crowd in case of url like http://localhost:4990/crowd
admin_login: admin
admin_password: admin
application_name: crowd
application_password: 1111
load_executor: jmeter
concurrency: 1000 # number of concurrent threads to authenticate random users
test_duration: 45m
# 1 node scenario parameters
ramp-up: 20s # time to spin all concurrent threads
total_actions_per_hour: 180000 # number of total JMeter actions per hour
# 2 nodes scenario parameters
# ramp-up: 10s # time to spin all concurrent threads
# total_actions_per_hour: 360000 # number of total JMeter actions per hour
# 4 nodes scenario parameters
# ramp-up: 5s # time to spin all concurrent threads
# total_actions_per_hour: 720000 # number of total JMeter actions per hour
JMETER_VERSION: 5.2.1
LANGUAGE: en_US.utf8
allow_analytics: Yes # Allow sending basic run analytics to Atlassian. These analytics help us to understand how the tool is being used and help us to continue to invest in this tooling. For more details please see our README.
services:
- module: shellexec
prepare:
- python util/pre_run/environment_checker.py
- python util/pre_run/check_for_updates.py
- python util/data_preparation/crowd_prepare_data.py
- python util/data_preparation/crowd_sync_check.py
shutdown:
- python util/post_run/jmeter_post_check.py
- python util/jtl_convertor/jtls-to-csv.py kpi.jtl
post-process:
- python util/analytics/analytics.py crowd
- python util/post_run/cleanup_results_dir.py
execution:
- scenario: ${load_executor}
executor: ${load_executor}
concurrency: ${concurrency}
hold-for: ${test_duration}
ramp-up: ${ramp-up}
scenarios:
jmeter:
script: jmeter/crowd.jmx
properties:
application_hostname: ${application_hostname}
application_protocol: ${application_protocol}
application_port: ${application_port}
application_postfix: ${application_postfix}
application_name: ${application_name}
application_password: ${application_password}
# Workload model
total_actions_per_hr: ${total_actions_per_hour}
modules:
consolidator:
rtimes-len: 0 # CONFSRVDEV-7631 reduce sampling
percentiles: [] # CONFSRVDEV-7631 disable all percentiles due to Taurus's excessive memory usage
jmeter:
version: ${JMETER_VERSION}
detect-plugins: true
memory-xmx: 8G # allow JMeter to use up to 8G of memory
plugins:
- bzm-parallel=0.4
- bzm-random-csv=0.6
- jpgc-casutg=2.5
- jpgc-dummy=0.2
- jpgc-ffw=2.0
- jpgc-fifo=0.2
- jpgc-functions=2.1
- jpgc-json=2.6
- jpgc-perfmon=2.1
- jpgc-prmctl=0.4
- jpgc-tst=2.4
- jpgc-wsc=0.3
- tilln-sshmon=1.0
- jpgc-synthesis=2.2
system-properties:
server.rmi.ssl.disable: true
java.rmi.server.hostname: localhost
httpsampler.ignore_failed_embedded_resources: "true"
reporting:
- data-source: sample-labels
module: junit-xml