@@ -67,10 +67,16 @@ envlist =
6767 ; pypy3-test-instrumentation-boto
6868
6969 ; opentelemetry-instrumentation-elasticsearch
70- py3{8,9,10,11}-test-instrumentation-elasticsearch-{2,6}
71- pypy3-test-instrumentation-elasticsearch-{2,6}
72- py3{8,9}-test-instrumentation-elasticsearch-5
73- pypy3-test-instrumentation-elasticsearch-5
70+ ; FIXME: Elasticsearch >=7 causes CI workflow tests to hang, see open-telemetry/opentelemetry-python-contrib#620
71+ ; The numbers at the end of the environment names
72+ ; below mean these dependencies are being used:
73+ ; 0: elasticsearch-dsl>=2.0,<3.0 elasticsearch>=2.0,<3.0
74+ ; 1: elasticsearch-dsl>=5.0,<6.0 elasticsearch>=5.0,<6.0
75+ ; 2: elasticsearch-dsl>=6.0,<7.0 elasticsearch>=6.0,<7.0
76+ py3{8,9,10,11}-test-instrumentation-elasticsearch-{0,2}
77+ pypy3-test-instrumentation-elasticsearch-{0,2}
78+ py3{8,9}-test-instrumentation-elasticsearch-1
79+ pypy3-test-instrumentation-elasticsearch-1
7480
7581 ; opentelemetry-instrumentation-falcon
7682 ; py310 does not work with falcon 1
@@ -258,17 +264,6 @@ deps =
258264 django-2: django~=2.0
259265 django-3: django~=3.0
260266 django-4: django>=4.0b1,<5.0
261- elasticsearch-2: elasticsearch-dsl>=2.0,<3.0
262- elasticsearch-2: elasticsearch>=2.0,<3.0
263- elasticsearch-5: elasticsearch-dsl>=5.0,<6.0
264- elasticsearch-5: elasticsearch>=5.0,<6.0
265- elasticsearch-6: elasticsearch-dsl>=6.0,<7.0
266- elasticsearch-6: elasticsearch>=6.0,<7.0
267- ; FIXME: Elasticsearch >=7 causes CI workflow tests to hang, see open-telemetry/opentelemetry-python-contrib#620
268- ; elasticsearch-7: elasticsearch-dsl>=7.0,<8.0
269- ; elasticsearch-7: elasticsearch>=7.0,<8.0
270- ; elasticsearch-8: elasticsearch-dsl>=8.0,<9.0
271- ; elasticsearch-8: elasticsearch>=8.0,<9.0
272267 falcon-1: falcon ==1.4.1
273268 falcon-2: falcon >=2.0.0,<3.0.0
274269 falcon-3: falcon >=3.0.0,<4.0.0
@@ -308,64 +303,6 @@ setenv =
308303 CORE_REPO_SHA ={env:CORE_REPO_SHA:main}
309304 CORE_REPO =git+https://github.com/open-telemetry/opentelemetry-python.git@{env:CORE_REPO_SHA}
310305
311- changedir =
312- test-distro: opentelemetry-distro/tests
313- test-opentelemetry-instrumentation: opentelemetry-instrumentation/tests
314- test-instrumentation-aiohttp-client: instrumentation/opentelemetry-instrumentation-aiohttp-client/tests
315- test-instrumentation-aiohttp-server: instrumentation/opentelemetry-instrumentation-aiohttp-server/tests
316- test-instrumentation-aiopg: instrumentation/opentelemetry-instrumentation-aiopg/tests
317- test-instrumentation-asgi: instrumentation/opentelemetry-instrumentation-asgi/tests
318- test-instrumentation-asyncpg: instrumentation/opentelemetry-instrumentation-asyncpg/tests
319- test-instrumentation-aws-lambda: instrumentation/opentelemetry-instrumentation-aws-lambda/tests
320- test-instrumentation-boto: instrumentation/opentelemetry-instrumentation-boto/tests
321- test-instrumentation-botocore: instrumentation/opentelemetry-instrumentation-botocore/tests
322- test-instrumentation-boto3sqs: instrumentation/opentelemetry-instrumentation-boto3sqs/tests
323- test-instrumentation-cassandra: instrumentation/opentelemetry-instrumentation-cassandra/tests
324- test-instrumentation-celery: instrumentation/opentelemetry-instrumentation-celery/tests
325- test-instrumentation-dbapi: instrumentation/opentelemetry-instrumentation-dbapi/tests
326- test-instrumentation-django-{1,2,3,4}: instrumentation/opentelemetry-instrumentation-django/tests
327- test-instrumentation-elasticsearch-{2,5,6}: instrumentation/opentelemetry-instrumentation-elasticsearch/tests
328- test-instrumentation-falcon-{1,2,3}: instrumentation/opentelemetry-instrumentation-falcon/tests
329- test-instrumentation-fastapi: instrumentation/opentelemetry-instrumentation-fastapi/tests
330- test-instrumentation-flask-{213,220,300}: instrumentation/opentelemetry-instrumentation-flask/tests
331- test-instrumentation-urllib: instrumentation/opentelemetry-instrumentation-urllib/tests
332- test-instrumentation-urllib3v-{1,2}: instrumentation/opentelemetry-instrumentation-urllib3/tests
333- test-instrumentation-grpc: instrumentation/opentelemetry-instrumentation-grpc/tests
334- test-instrumentation-jinja2: instrumentation/opentelemetry-instrumentation-jinja2/tests
335- test-instrumentation-kafka-python: instrumentation/opentelemetry-instrumentation-kafka-python/tests
336- test-instrumentation-confluent-kafka: instrumentation/opentelemetry-instrumentation-confluent-kafka/tests
337- test-instrumentation-logging: instrumentation/opentelemetry-instrumentation-logging/tests
338- test-instrumentation-mysql: instrumentation/opentelemetry-instrumentation-mysql/tests
339- test-instrumentation-mysqlclient: instrumentation/opentelemetry-instrumentation-mysqlclient/tests
340- test-instrumentation-sio-pika-{0,1}: instrumentation/opentelemetry-instrumentation-pika/tests
341- test-instrumentation-aio-pika-{8,9}: instrumentation/opentelemetry-instrumentation-aio-pika/tests
342- test-instrumentation-psycopg: instrumentation/opentelemetry-instrumentation-psycopg/tests
343- test-instrumentation-psycopg2: instrumentation/opentelemetry-instrumentation-psycopg2/tests
344- test-instrumentation-pymemcache-{135,200,300,342,400}: instrumentation/opentelemetry-instrumentation-pymemcache/tests
345- test-instrumentation-pymongo: instrumentation/opentelemetry-instrumentation-pymongo/tests
346- test-instrumentation-pymysql: instrumentation/opentelemetry-instrumentation-pymysql/tests
347- test-instrumentation-pyramid: instrumentation/opentelemetry-instrumentation-pyramid/tests
348- test-instrumentation-redis: instrumentation/opentelemetry-instrumentation-redis/tests
349- test-instrumentation-remoulade: instrumentation/opentelemetry-instrumentation-remoulade/tests
350- test-instrumentation-requests: instrumentation/opentelemetry-instrumentation-requests/tests
351- test-instrumentation-sklearn: instrumentation/opentelemetry-instrumentation-sklearn/tests
352- test-instrumentation-sqlalchemy-{11,14}: instrumentation/opentelemetry-instrumentation-sqlalchemy/tests
353- test-instrumentation-sqlite3: instrumentation/opentelemetry-instrumentation-sqlite3/tests
354- test-instrumentation-starlette: instrumentation/opentelemetry-instrumentation-starlette/tests
355- test-instrumentation-system-metrics: instrumentation/opentelemetry-instrumentation-system-metrics/tests
356- test-instrumentation-tornado: instrumentation/opentelemetry-instrumentation-tornado/tests
357- test-instrumentation-tortoiseorm: instrumentation/opentelemetry-instrumentation-tortoiseorm/tests
358- test-instrumentation-wsgi: instrumentation/opentelemetry-instrumentation-wsgi/tests
359- test-instrumentation-httpx-{18,21}: instrumentation/opentelemetry-instrumentation-httpx/tests
360- test-instrumentation-asyncio: instrumentation/opentelemetry-instrumentation-asyncio/tests
361- test-util-http: util/opentelemetry-util-http/tests
362- test-sdkextension-aws: sdk-extension/opentelemetry-sdk-extension-aws/tests
363- test-resource-detector-container: resource/opentelemetry-resource-detector-container/tests
364- test-propagator-aws: propagator/opentelemetry-propagator-aws-xray/tests
365- test-propagator-ot-trace: propagator/opentelemetry-propagator-ot-trace/tests
366- test-exporter-richconsole: exporter/opentelemetry-exporter-richconsole/tests
367- test-exporter-prometheus-remote-write: exporter/opentelemetry-exporter-prometheus-remote-write/tests
368-
369306commands_pre =
370307; Install without -e to test the actual installation
371308 py3{8,9,10,11}: python -m pip install -U pip setuptools wheel
@@ -474,7 +411,9 @@ commands_pre =
474411
475412 sqlalchemy-{11,14}: pip install {toxinidir}/instrumentation/opentelemetry-instrumentation-sqlalchemy[test]
476413
477- elasticsearch-{2,5,6}: pip install {toxinidir}/opentelemetry-instrumentation[test] {toxinidir}/instrumentation/opentelemetry-instrumentation-elasticsearch[test]
414+ elasticsearch-0: pip install -r {toxinidir}/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-0.txt
415+ elasticsearch-1: pip install -r {toxinidir}/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-2.txt
416+ elasticsearch-2: pip install -r {toxinidir}/instrumentation/opentelemetry-instrumentation-elasticsearch/test-requirements-2.txt
478417
479418 asyncio: pip install {toxinidir}/instrumentation/opentelemetry-instrumentation-asyncio[test]
480419
@@ -494,7 +433,62 @@ commands_pre =
494433 coverage: python {toxinidir}/scripts/eachdist.py install --editable
495434
496435commands =
497- test: pytest {posargs}
436+ test-distro: pytest {toxinidir}/opentelemetry-distro/tests {posargs}
437+ test-opentelemetry-instrumentation: pytest {toxinidir}/opentelemetry-instrumentation/tests {posargs}
438+ test-instrumentation-aiohttp-client: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-aiohttp-client/tests {posargs}
439+ test-instrumentation-aiohttp-server: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-aiohttp-server/tests {posargs}
440+ test-instrumentation-aiopg: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-aiopg/tests {posargs}
441+ test-instrumentation-asgi: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-asgi/tests {posargs}
442+ test-instrumentation-asyncpg: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-asyncpg/tests {posargs}
443+ test-instrumentation-aws-lambda: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-aws-lambda/tests {posargs}
444+ test-instrumentation-boto: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-boto/tests {posargs}
445+ test-instrumentation-botocore: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-botocore/tests {posargs}
446+ test-instrumentation-boto3sqs: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-boto3sqs/tests {posargs}
447+ test-instrumentation-cassandra: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-cassandra/tests {posargs}
448+ test-instrumentation-celery: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-celery/tests {posargs}
449+ test-instrumentation-dbapi: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-dbapi/tests {posargs}
450+ test-instrumentation-django-{1,2,3,4}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-django/tests {posargs}
451+ test-instrumentation-elasticsearch-{2,5,6}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-elasticsearch/tests {posargs}
452+ test-instrumentation-falcon-{1,2,3}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-falcon/tests {posargs}
453+ test-instrumentation-fastapi: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-fastapi/tests {posargs}
454+ test-instrumentation-flask-{213,220,300}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-flask/tests {posargs}
455+ test-instrumentation-urllib: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-urllib/tests {posargs}
456+ test-instrumentation-urllib3v-{1,2}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-urllib3/tests {posargs}
457+ test-instrumentation-grpc: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-grpc/tests {posargs}
458+ test-instrumentation-jinja2: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-jinja2/tests {posargs}
459+ test-instrumentation-kafka-python: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-kafka-python/tests {posargs}
460+ test-instrumentation-confluent-kafka: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-confluent-kafka/tests {posargs}
461+ test-instrumentation-logging: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-logging/tests {posargs}
462+ test-instrumentation-mysql: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-mysql/tests {posargs}
463+ test-instrumentation-mysqlclient: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-mysqlclient/tests {posargs}
464+ test-instrumentation-sio-pika-{0,1}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-pika/tests {posargs}
465+ test-instrumentation-aio-pika-{8,9}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-aio-pika/tests {posargs}
466+ test-instrumentation-psycopg: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-psycopg/tests {posargs}
467+ test-instrumentation-psycopg2: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-psycopg2/tests {posargs}
468+ test-instrumentation-pymemcache-{135,200,300,342,400}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-pymemcache/tests {posargs}
469+ test-instrumentation-pymongo: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-pymongo/tests {posargs}
470+ test-instrumentation-pymysql: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-pymysql/tests {posargs}
471+ test-instrumentation-pyramid: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-pyramid/tests {posargs}
472+ test-instrumentation-redis: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-redis/tests {posargs}
473+ test-instrumentation-remoulade: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-remoulade/tests {posargs}
474+ test-instrumentation-requests: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-requests/tests {posargs}
475+ test-instrumentation-sklearn: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-sklearn/tests {posargs}
476+ test-instrumentation-sqlalchemy-{11,14}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-sqlalchemy/tests {posargs}
477+ test-instrumentation-sqlite3: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-sqlite3/tests {posargs}
478+ test-instrumentation-starlette: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-starlette/tests {posargs}
479+ test-instrumentation-system-metrics: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-system-metrics/tests {posargs}
480+ test-instrumentation-tornado: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-tornado/tests {posargs}
481+ test-instrumentation-tortoiseorm: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-tortoiseorm/tests {posargs}
482+ test-instrumentation-wsgi: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-wsgi/tests {posargs}
483+ test-instrumentation-httpx-{18,21}: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-httpx/tests {posargs}
484+ test-instrumentation-asyncio: pytest {toxinidir}/instrumentation/opentelemetry-instrumentation-asyncio/tests {posargs}
485+ test-util-http: pytest {toxinidir}/util/opentelemetry-util-http/tests {posargs}
486+ test-sdkextension-aws: pytest {toxinidir}/sdk-extension/opentelemetry-sdk-extension-aws/tests {posargs}
487+ test-resource-detector-container: pytest {toxinidir}/resource/opentelemetry-resource-detector-container/tests {posargs}
488+ test-propagator-aws: pytest {toxinidir}/propagator/opentelemetry-propagator-aws-xray/tests {posargs}
489+ test-propagator-ot-trace: pytest {toxinidir}/propagator/opentelemetry-propagator-ot-trace/tests {posargs}
490+ test-exporter-richconsole: pytest {toxinidir}/exporter/opentelemetry-exporter-richconsole/tests {posargs}
491+ test-exporter-prometheus-remote-write: pytest {toxinidir}/exporter/opentelemetry-exporter-prometheus-remote-write/tests {posargs}
498492 coverage: {toxinidir}/scripts/coverage.sh
499493
500494[testenv:docs]
@@ -577,7 +571,7 @@ commands_pre =
577571 # for your OS to install the required dependencies
578572 python -m pip install -e {toxinidir}/instrumentation/opentelemetry-instrumentation-mysqlclient[test]
579573 python -m pip install -e {toxinidir}/instrumentation/opentelemetry-instrumentation-pymongo[test]
580- python -m pip install -e {toxinidir}/instrumentation/opentelemetry-instrumentation-elasticsearch[ test]
574+ pip install -r {toxinidir}/instrumentation/opentelemetry-instrumentation-elasticsearch/ test-requirements-2.txt
581575 python -m pip install -e {toxinidir}/instrumentation/opentelemetry-instrumentation-asyncpg[test]
582576 python -m pip install -e {toxinidir}/instrumentation/opentelemetry-instrumentation-tornado[test]
583577 python -m pip install -e {toxinidir}/instrumentation/opentelemetry-instrumentation-tortoiseorm[test]
0 commit comments