1
- version : 2
1
+ version : 2.1
2
+
3
+ commands :
4
+ restore_benchmark_cache :
5
+ description : " Restore pip and protos directories"
6
+ steps :
7
+ - restore_cache :
8
+ key : benchmark-cache-{{ checksum "~/lightstep-benchmarks/requirements-dev.txt" }}
9
+
10
+ save_benchmark_cache :
11
+ description : " Save pip and protos directories into cache for faster installs next time"
12
+ steps :
13
+ - save_cache :
14
+ key : benchmark-cache-{{ checksum "~/lightstep-benchmarks/requirements-dev.txt" }}
15
+ paths :
16
+ - " /root/.cache/pip"
17
+ - " ~/protoc3"
18
+
2
19
jobs :
3
- test-python2.7 :
20
+ test-python27 :
4
21
working_directory : ~/lightstep/lightstep-tracer-python
5
22
shell : /bin/bash --login
6
23
environment :
20
37
- store_artifacts :
21
38
path : /tmp/circleci-test-results
22
39
23
- test-python3.4 :
40
+ test-python34 :
24
41
working_directory : ~/lightstep/lightstep-tracer-python
25
42
shell : /bin/bash --login
26
43
environment :
40
57
- store_artifacts :
41
58
path : /tmp/circleci-test-results
42
59
43
- test-python3.5 :
60
+ test-python35 :
44
61
working_directory : ~/lightstep/lightstep-tracer-python
45
62
shell : /bin/bash --login
46
63
environment :
60
77
- store_artifacts :
61
78
path : /tmp/circleci-test-results
62
79
63
- test-python3.6 :
80
+ test-python36 :
64
81
working_directory : ~/lightstep/lightstep-tracer-python
65
82
shell : /bin/bash --login
66
83
environment :
80
97
- store_artifacts :
81
98
path : /tmp/circleci-test-results
82
99
83
- test-python3.7 :
100
+ test-python37 :
84
101
working_directory : ~/lightstep/lightstep-tracer-python
85
102
shell : /bin/bash --login
86
103
environment :
@@ -100,19 +117,48 @@ jobs:
100
117
- store_artifacts :
101
118
path : /tmp/circleci-test-results
102
119
120
+ test-python38 :
121
+ working_directory : ~/lightstep/lightstep-tracer-python
122
+ shell : /bin/bash --login
123
+ environment :
124
+ CIRCLE_ARTIFACTS : /tmp/circleci-artifacts
125
+ CIRCLE_TEST_REPORTS : /tmp/circleci-test-results
126
+ docker :
127
+ - image : circleci/python:3.8
128
+ steps :
129
+ - checkout
130
+ - run : mkdir -p $CIRCLE_ARTIFACTS $CIRCLE_TEST_REPORTS
131
+ - run : sudo pip install tox
132
+ - run : make test38
133
+ - store_test_results :
134
+ path : /tmp/circleci-test-results
135
+ - store_artifacts :
136
+ path : /tmp/circleci-artifacts
137
+ - store_artifacts :
138
+ path : /tmp/circleci-test-results
139
+
103
140
regression_test :
104
141
resource_class : xlarge
105
142
docker :
106
- - image : circleci/python:3.7.4
143
+ - image : circleci/python:3.7.7
107
144
working_directory : ~/repo
108
145
steps :
109
146
- checkout
110
147
- run : cd ~; ~/repo/ci/clone_lightstep_benchmarks.sh
148
+ - restore_benchmark_cache
111
149
- run : ~/lightstep-benchmarks/scripts/ci_setup.sh
150
+ - save_benchmark_cache
112
151
- run : sudo pip install -e ~/repo
152
+ # FIXME: the regression tests are current not running the test_max_throughput
153
+ # as it is unable to handle running in a shared CI environment and the variability
154
+ # from the results is sometimes greater than a 33% drop in performance
155
+ #
156
+ # pytest -s --client_name python regression_tests.py::test_max_throughput
113
157
- run : |
114
158
cd ~/lightstep-benchmarks/
115
- pytest -s --client_name python regression_tests.py
159
+ pytest -s --client_name python regression_tests.py::test_memory
160
+ pytest -s --client_name python regression_tests.py::test_dropped_spans
161
+ pytest -s --client_name python regression_tests.py::test_cpu
116
162
- store_artifacts :
117
163
path : ~/lightstep-benchmarks/logs
118
164
destination : logs
@@ -193,23 +239,22 @@ workflows:
193
239
version : 2
194
240
test :
195
241
jobs :
196
- - test-python2.7
197
- - test-python3.4
198
- - test-python3.5
199
- - test-python3.6
200
- - test-python3.7
201
242
- regression_test
202
- - approve_make_graphs :
203
- type : approval
204
- - make_dropped_graphs :
243
+ - test-python27 :
244
+ requires :
245
+ - regression_test
246
+ - test-python34 :
247
+ requires :
248
+ - regression_test
249
+ - test-python35 :
205
250
requires :
206
- - approve_make_graphs
207
- - make_memory_graphs :
251
+ - regression_test
252
+ - test-python36 :
208
253
requires :
209
- - approve_make_graphs
210
- - make_disconnect_graphs :
254
+ - regression_test
255
+ - test-python37 :
211
256
requires :
212
- - approve_make_graphs
213
- - make_cpu_graphs :
257
+ - regression_test
258
+ - test-python38 :
214
259
requires :
215
- - approve_make_graphs
260
+ - regression_test
0 commit comments