@@ -103,73 +103,70 @@ deps =
103103 coverage: pytest
104104 coverage: pytest-cov
105105
106- allowlist_externals = sh
106+ mypy,mypyinstalled: -r {toxinidir}/mypy-requirements.txt
107107
108- setenv =
109- ; override CONTRIB_REPO_SHA via env variable when testing other branches/commits than main
110- ; i.e: CONTRIB_REPO_SHA=dde62cebffe519c35875af6d06fae053b3be65ec tox -e <env to test>
111- CONTRIB_REPO_SHA ={env:CONTRIB_REPO_SHA:main}
112- CONTRIB_REPO =git+https://github.com/open-telemetry/opentelemetry-python-contrib.git@{env:CONTRIB_REPO_SHA}
113- mypy: MYPYPATH ={toxinidir}/opentelemetry-api/src/:{toxinidir}/opentelemetry-semantic-conventions/src/:{toxinidir}/opentelemetry-sdk/src/:{toxinidir}/tests/opentelemetry-test-utils/src/
108+ api: -r {toxinidir}/opentelemetry-api/test-requirements.txt
114109
115- commands_pre =
110+ sdk: -r {toxinidir}/opentelemetry-sdk/test-requirements.txt
111+ benchmark-opentelemetry-sdk: -r {toxinidir}/opentelemetry-sdk/benchmark-requirements.txt
116112
117- mypy,mypyinstalled: pip install -r {toxinidir}/mypy -requirements.txt
113+ semantic-conventions: -r {toxinidir}/opentelemetry-semantic-conventions/test -requirements.txt
118114
119- api: pip install -r {toxinidir}/opentelemetry-api /test-requirements.txt
115+ test-utils: -r {toxinidir}/tests/ opentelemetry-test-utils /test-requirements.txt
120116
121- sdk: pip install -r {toxinidir}/opentelemetry-sdk/test-requirements.txt
122- benchmark-opentelemetry-sdk: pip install -r {toxinidir}/opentelemetry-sdk/benchmark-requirements.txt
117+ opentelemetry-proto-protobuf5: -r {toxinidir}/opentelemetry-proto/test-requirements.txt
123118
124- semantic-conventions: pip install -r {toxinidir}/opentelemetry-semantic-conventions /test-requirements.txt
119+ exporter-opencensus: -r {toxinidir}/exporter/ opentelemetry-exporter-opencensus /test-requirements.txt
125120
126- test-utils: pip install -r {toxinidir}/tests /opentelemetry-test-utils /test-requirements.txt
121+ exporter-otlp-proto-common: -r {toxinidir}/exporter /opentelemetry-exporter-otlp-proto-common /test-requirements.txt
127122
128- opentelemetry-proto-protobuf5: pip install -r {toxinidir}/opentelemetry-proto /test-requirements.txt
123+ exporter-otlp-combined: -r {toxinidir}/exporter/ opentelemetry-exporter-otlp /test-requirements.txt
129124
130- getting-started: pip install -r {toxinidir}/docs/getting_started/tests/requirements.txt
131- getting-started: pip install -e {env:CONTRIB_REPO}\# egg=opentelemetry-util-http&subdirectory=util/opentelemetry-util-http
132- getting-started: pip install -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation&subdirectory=opentelemetry-instrumentation
133- getting-started: pip install -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-requests&subdirectory=instrumentation/opentelemetry-instrumentation-requests
134- getting-started: pip install -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-wsgi&subdirectory=instrumentation/opentelemetry-instrumentation-wsgi
135- getting-started: pip install -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-flask&subdirectory=instrumentation/opentelemetry-instrumentation-flask
125+ opentelemetry-exporter-otlp-proto-grpc: -r {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-grpc/test-requirements.txt
126+ benchmark-exporter-otlp-proto-grpc: -r {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-grpc/benchmark-requirements.txt
136127
137- exporter-opencensus: pip install -r {toxinidir}/exporter/opentelemetry-exporter-opencensus /test-requirements.txt
128+ opentelemetry- exporter-otlp-proto-http: -r {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-http /test-requirements.txt
138129
139- exporter-otlp-proto-common: pip install -r {toxinidir}/exporter /opentelemetry-exporter-otlp-proto-common /test-requirements.txt
130+ opentracing-shim: -r {toxinidir}/shim /opentelemetry-opentracing-shim /test-requirements.txt
140131
141- exporter-otlp-combined: pip install -r {toxinidir}/exporter /opentelemetry-exporter-otlp /test-requirements.txt
132+ opencensus-shim: -r {toxinidir}/shim /opentelemetry-opencensus-shim /test-requirements.txt
142133
143- opentelemetry-exporter-otlp-proto-grpc: pip install -r {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-grpc/test-requirements.txt
144- benchmark-exporter-otlp-proto-grpc: pip install -r {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-grpc/benchmark-requirements.txt
134+ exporter-prometheus: -r {toxinidir}/exporter/opentelemetry-exporter-prometheus/test-requirements.txt
145135
146- opentelemetry- exporter-otlp-proto-http: pip install -r {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-http /test-requirements.txt
136+ exporter-zipkin-combined: -r {toxinidir}/exporter/opentelemetry-exporter-zipkin /test-requirements.txt
147137
148- opentracing-shim: pip install -r {toxinidir}/shim /opentelemetry-opentracing-shim /test-requirements.txt
138+ exporter-zipkin-proto-http: -r {toxinidir}/exporter /opentelemetry-exporter-zipkin-proto-http /test-requirements.txt
149139
150- opencensus-shim: pip install -r {toxinidir}/shim /opentelemetry-opencensus-shim /test-requirements.txt
140+ exporter-zipkin-json: -r {toxinidir}/exporter /opentelemetry-exporter-zipkin-json /test-requirements.txt
151141
152- exporter-prometheus: pip install -r {toxinidir}/exporter/opentelemetry-exporter-prometheus/test-requirements.txt
142+ propagator-b3: -r {toxinidir}/propagator/opentelemetry-propagator-b3/test-requirements.txt
143+ benchmark-opentelemetry-propagator-b3: -r {toxinidir}/propagator/opentelemetry-propagator-b3/benchmark-requirements.txt
153144
154- exporter-zipkin-combined: pip install -r {toxinidir}/exporter /opentelemetry-exporter-zipkin /test-requirements.txt
145+ propagator-jaeger: -r {toxinidir}/propagator /opentelemetry-propagator-jaeger /test-requirements.txt
155146
156- exporter-zipkin-proto-http: pip install -r {toxinidir}/exporter/ opentelemetry-exporter-zipkin-proto-http/test-requirements.txt
147+ mypyinstalled: -e {toxinidir}/opentelemetry-api
157148
158- exporter-zipkin-json: pip install -r {toxinidir}/exporter/opentelemetry-exporter-zipkin-json/test-requirements.txt
149+ getting-started: -r {toxinidir}/docs/getting_started/tests/requirements.txt
150+ getting-started: {env:CONTRIB_REPO}\# egg=opentelemetry-util-http&subdirectory=util/opentelemetry-util-http
151+ getting-started: {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation&subdirectory=opentelemetry-instrumentation
152+ getting-started: {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-requests&subdirectory=instrumentation/opentelemetry-instrumentation-requests
153+ getting-started: {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-wsgi&subdirectory=instrumentation/opentelemetry-instrumentation-wsgi
154+ getting-started: {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-flask&subdirectory=instrumentation/opentelemetry-instrumentation-flask
159155
160- propagator-b3: pip install -r {toxinidir}/propagator/opentelemetry-propagator-b3/test-requirements.txt
161- benchmark-opentelemetry-propagator-b3: pip install -r {toxinidir}/propagator/opentelemetry-propagator-b3/benchmark-requirements.txt
156+ allowlist_externals = sh
162157
163- propagator-jaeger: pip install -r {toxinidir}/propagator/opentelemetry-propagator-jaeger/test-requirements.txt
158+ setenv =
159+ ; override CONTRIB_REPO_SHA via env variable when testing other branches/commits than main
160+ ; i.e: CONTRIB_REPO_SHA=dde62cebffe519c35875af6d06fae053b3be65ec tox -e <env to test>
161+ CONTRIB_REPO_SHA ={env:CONTRIB_REPO_SHA:main}
162+ CONTRIB_REPO =git+https://github.com/open-telemetry/opentelemetry-python-contrib.git@{env:CONTRIB_REPO_SHA}
163+ mypy: MYPYPATH ={toxinidir}/opentelemetry-api/src/:{toxinidir}/opentelemetry-semantic-conventions/src/:{toxinidir}/opentelemetry-sdk/src/:{toxinidir}/tests/opentelemetry-test-utils/src/
164164
165- ; In order to get a healthy coverage report,
166- ; we have to install packages in editable mode.
165+ commands_pre =
166+ ; In order to get a healthy coverage report,
167+ ; we have to install packages in editable mode.
167168 coverage: python {toxinidir}/scripts/eachdist.py install --editable
168169
169- ; Using file:// here because otherwise tox invokes just "pip install
170- ; opentelemetry-api", leading to an error
171- mypyinstalled: pip install file://{toxinidir}/opentelemetry-api/
172-
173170commands =
174171 test-opentelemetry-api: pytest {toxinidir}/opentelemetry-api/tests {posargs}
175172 lint-opentelemetry-api: pylint {toxinidir}/opentelemetry-api
@@ -278,19 +275,17 @@ deps =
278275 flask~=2.3
279276 requests~=2.7
280277 markupsafe~=2.1
278+ -e {toxinidir}/opentelemetry-api
279+ -e {toxinidir}/opentelemetry-semantic-conventions
280+ -e {toxinidir}/opentelemetry-sdk
281+ -e {env:CONTRIB_REPO}\# egg=opentelemetry-util-http&subdirectory=util/opentelemetry-util-http
282+ -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation&subdirectory=opentelemetry-instrumentation
283+ -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-requests&subdirectory=instrumentation/opentelemetry-instrumentation-requests
284+ -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-wsgi&subdirectory=instrumentation/opentelemetry-instrumentation-wsgi
281285
282286allowlist_externals =
283287 {toxinidir}/scripts/tracecontext-integration-test.sh
284288
285- commands_pre =
286- pip install -e {toxinidir}/opentelemetry-api \
287- -e {toxinidir}/opentelemetry-semantic-conventions \
288- -e {toxinidir}/opentelemetry-sdk \
289- -e {env:CONTRIB_REPO}\# egg=opentelemetry-util-http&subdirectory=util/opentelemetry-util-http \
290- -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation&subdirectory=opentelemetry-instrumentation \
291- -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-requests&subdirectory=instrumentation/opentelemetry-instrumentation-requests \
292- -e {env:CONTRIB_REPO}\# egg=opentelemetry-instrumentation-wsgi&subdirectory=instrumentation/opentelemetry-instrumentation-wsgi
293-
294289commands =
295290 {toxinidir}/scripts/tracecontext-integration-test.sh
296291
@@ -303,25 +298,25 @@ deps =
303298 docker<7
304299 docker-compose ==1.29.2
305300 requests ==2.28.2
301+ ; core packages
302+ -e {toxinidir}/opentelemetry-api
303+ -e {toxinidir}/opentelemetry-semantic-conventions
304+ -e {toxinidir}/opentelemetry-sdk
305+ -e {toxinidir}/tests/opentelemetry-test-utils
306+ ; OTLP packages
307+ otlpexporter: -e {toxinidir}/opentelemetry-proto
308+ otlpexporter: -e {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-common
309+ otlpexporter: -e {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-grpc
310+ otlpexporter: -e {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-http
311+ otlpexporter: -e {toxinidir}/exporter/opentelemetry-exporter-otlp
312+
313+ opencensus: -e {toxinidir}/exporter/opentelemetry-exporter-opencensus
306314
307315changedir =
308316 tests/opentelemetry-docker-tests/tests
309317
310318commands_pre =
311319 pip freeze
312- pip install -e {toxinidir}/opentelemetry-api \
313- -e {toxinidir}/opentelemetry-semantic-conventions \
314- -e {toxinidir}/opentelemetry-sdk \
315- -e {toxinidir}/tests/opentelemetry-test-utils
316-
317- otlpexporter: pip install -e {toxinidir}/opentelemetry-proto
318- otlpexporter: pip install -e {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-common
319- otlpexporter: pip install -e {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-grpc
320- otlpexporter: pip install -e {toxinidir}/exporter/opentelemetry-exporter-otlp-proto-http
321- otlpexporter: pip install -e {toxinidir}/exporter/opentelemetry-exporter-otlp
322-
323- opencensus: pip install -e {toxinidir}/exporter/opentelemetry-exporter-opencensus
324-
325320 docker-compose up -d
326321commands =
327322 otlpexporter: pytest otlpexporter {posargs}
@@ -339,32 +334,24 @@ commands =
339334 python {toxinidir}/scripts/public_symbols_checker.py
340335
341336[testenv:generate-workflows]
342-
343- commands_pre =
344- pip install -e {env:CONTRIB_REPO}\# egg=generate_workflows_lib&subdirectory=.github/workflows/generate_workflows_lib
345-
337+ deps =
338+ {env:CONTRIB_REPO}\# egg=generate_workflows_lib&subdirectory=.github/workflows/generate_workflows_lib
346339commands =
347340 python {toxinidir}/.github/workflows/generate_workflows.py
348341
349342[testenv:shellcheck]
350-
351343commands_pre =
352344 sh -c " sudo apt update -y && sudo apt install --assume-yes shellcheck"
353-
354345commands =
355346 sh -c " find {toxinidir} -name \*.sh | xargs shellcheck --severity=warning"
356347
357348[testenv:pyright]
358349basepython: python3
359-
360- allowlist_externals = pyright
361-
362- commands_pre =
363- pip install -r {toxinidir}/pyright-requirements.txt \
364- -e {toxinidir}/opentelemetry-api \
365- -e {toxinidir}/opentelemetry-semantic-conventions \
366- -e {toxinidir}/opentelemetry-sdk
367-
350+ deps =
351+ -r {toxinidir}/pyright-requirements.txt
352+ -e {toxinidir}/opentelemetry-api
353+ -e {toxinidir}/opentelemetry-semantic-conventions
354+ -e {toxinidir}/opentelemetry-sdk
368355commands =
369356 pyright --version
370357 pyright
0 commit comments