From b34752245435e357be4f613f8c36c79666d22550 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Wed, 29 Oct 2025 16:29:16 +0100 Subject: [PATCH 1/5] Drop testing against ancient elasticsearch versions --- .ci/.matrix_framework.yml | 1 - .ci/.matrix_framework_full.yml | 3 -- tests/docker-compose.yml | 42 --------------------- tests/requirements/reqs-elasticsearch-2.txt | 2 - tests/requirements/reqs-elasticsearch-5.txt | 2 - tests/requirements/reqs-elasticsearch-6.txt | 2 - tests/scripts/envs/elasticsearch-2.sh | 5 --- tests/scripts/envs/elasticsearch-5.sh | 5 --- tests/scripts/envs/elasticsearch-6.sh | 5 --- 9 files changed, 67 deletions(-) delete mode 100644 tests/requirements/reqs-elasticsearch-2.txt delete mode 100644 tests/requirements/reqs-elasticsearch-5.txt delete mode 100644 tests/requirements/reqs-elasticsearch-6.txt delete mode 100644 tests/scripts/envs/elasticsearch-2.sh delete mode 100644 tests/scripts/envs/elasticsearch-5.sh delete mode 100644 tests/scripts/envs/elasticsearch-6.sh diff --git a/.ci/.matrix_framework.yml b/.ci/.matrix_framework.yml index 8c73d0810..193f9bd9e 100644 --- a/.ci/.matrix_framework.yml +++ b/.ci/.matrix_framework.yml @@ -29,7 +29,6 @@ FRAMEWORK: - pyodbc-newest - memcached-newest - pylibmc-newest - - elasticsearch-2 - elasticsearch-7 - elasticsearch-8 - cassandra-newest diff --git a/.ci/.matrix_framework_full.yml b/.ci/.matrix_framework_full.yml index 4adb9b25e..35771af86 100644 --- a/.ci/.matrix_framework_full.yml +++ b/.ci/.matrix_framework_full.yml @@ -63,9 +63,6 @@ FRAMEWORK: - psutil-5.0 - psutil-4.0 #- eventlet-newest - - elasticsearch-2 - - elasticsearch-5 - - elasticsearch-6 - elasticsearch-7 - elasticsearch-8 - gevent-newest diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index 9b8e06da4..68c89536e 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -59,19 +59,6 @@ services: redis: image: redis - elasticsearch6: - image: docker.elastic.co/elasticsearch/elasticsearch:6.8.0 - healthcheck: - test: ["CMD", "curl", "-f", "http://localhost:9200"] - environment: - - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - - "network.host=" - - "transport.host=127.0.0.1" - - "http.host=0.0.0.0" - - "xpack.security.enabled=false" - volumes: - - pyesdata6:/usr/share/elasticsearch/data - elasticsearch7: image: docker.elastic.co/elasticsearch/elasticsearch:7.17.0 healthcheck: @@ -101,32 +88,6 @@ services: volumes: - pyesdata8:/usr/share/elasticsearch/data - elasticsearch5: - image: docker.elastic.co/elasticsearch/elasticsearch:5.6.16 - healthcheck: - test: ["CMD", "curl", "-f", "http://localhost:9200"] - environment: - - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - - "network.host=" - - "transport.host=127.0.0.1" - - "http.host=0.0.0.0" - - "xpack.security.enabled=false" - volumes: - - pyesdata5:/usr/share/elasticsearch/data - - elasticsearch2: - image: elasticsearch:2 - healthcheck: - test: ["CMD", "curl", "-f", "http://localhost:9200"] - environment: - - "ES_JAVA_OPTS=-Xms512m -Xmx512m" - - "network.host=" - - "transport.host=127.0.0.1" - - "http.host=0.0.0.0" - - "xpack.security.enabled=false" - volumes: - - pyesdata2:/usr/share/elasticsearch/data - mssql: image: mcr.microsoft.com/mssql/server environment: @@ -187,9 +148,6 @@ services: environment: ES_8_URL: 'http://elasticsearch8:9200' ES_7_URL: 'http://elasticsearch7:9200' - ES_6_URL: 'http://elasticsearch6:9200' - ES_5_URL: 'http://elasticsearch5:9200' - ES_2_URL: 'http://elasticsearch2:9200' volumes: diff --git a/tests/requirements/reqs-elasticsearch-2.txt b/tests/requirements/reqs-elasticsearch-2.txt deleted file mode 100644 index e3f92c1db..000000000 --- a/tests/requirements/reqs-elasticsearch-2.txt +++ /dev/null @@ -1,2 +0,0 @@ -elasticsearch>=2.0,<3.0 --r reqs-base.txt diff --git a/tests/requirements/reqs-elasticsearch-5.txt b/tests/requirements/reqs-elasticsearch-5.txt deleted file mode 100644 index 27a0e10c0..000000000 --- a/tests/requirements/reqs-elasticsearch-5.txt +++ /dev/null @@ -1,2 +0,0 @@ -elasticsearch>=5.0,<6.0 --r reqs-base.txt diff --git a/tests/requirements/reqs-elasticsearch-6.txt b/tests/requirements/reqs-elasticsearch-6.txt deleted file mode 100644 index ad34285bc..000000000 --- a/tests/requirements/reqs-elasticsearch-6.txt +++ /dev/null @@ -1,2 +0,0 @@ -elasticsearch>=6.0,<7.0 --r reqs-base.txt diff --git a/tests/scripts/envs/elasticsearch-2.sh b/tests/scripts/envs/elasticsearch-2.sh deleted file mode 100644 index d9d68f99f..000000000 --- a/tests/scripts/envs/elasticsearch-2.sh +++ /dev/null @@ -1,5 +0,0 @@ -export PYTEST_MARKER="-m elasticsearch" -export ES_URL="http://elasticsearch2:9200" -export DOCKER_DEPS="elasticsearch2" -export WAIT_FOR_HOST="elasticsearch2" -export WAIT_FOR_PORT=9200 diff --git a/tests/scripts/envs/elasticsearch-5.sh b/tests/scripts/envs/elasticsearch-5.sh deleted file mode 100644 index 0ea3d5279..000000000 --- a/tests/scripts/envs/elasticsearch-5.sh +++ /dev/null @@ -1,5 +0,0 @@ -export PYTEST_MARKER="-m elasticsearch" -export ES_URL="http://elasticsearch5:9200" -export DOCKER_DEPS="elasticsearch5" -export WAIT_FOR_HOST="elasticsearch5" -export WAIT_FOR_PORT=9200 diff --git a/tests/scripts/envs/elasticsearch-6.sh b/tests/scripts/envs/elasticsearch-6.sh deleted file mode 100644 index fb4aa19b0..000000000 --- a/tests/scripts/envs/elasticsearch-6.sh +++ /dev/null @@ -1,5 +0,0 @@ -export PYTEST_MARKER="-m elasticsearch" -export ES_URL="http://elasticsearch6:9200" -export DOCKER_DEPS="elasticsearch6" -export WAIT_FOR_HOST="elasticsearch6" -export WAIT_FOR_PORT=9200 From 45798d8afb2badf77cabaf32ce58d129ebcf5e37 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Thu, 30 Oct 2025 09:55:03 +0100 Subject: [PATCH 2/5] Bump elasticsearch versions to latest of the major --- tests/docker-compose.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index 68c89536e..314474cf2 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -60,7 +60,7 @@ services: image: redis elasticsearch7: - image: docker.elastic.co/elasticsearch/elasticsearch:7.17.0 + image: docker.elastic.co/elasticsearch/elasticsearch:7.17.29 healthcheck: test: ["CMD", "curl", "-f", "http://localhost:9200"] environment: @@ -73,7 +73,7 @@ services: - pyesdata7:/usr/share/elasticsearch/data elasticsearch8: - image: docker.elastic.co/elasticsearch/elasticsearch:8.4.0 + image: docker.elastic.co/elasticsearch/elasticsearch:8.19.6 healthcheck: test: ["CMD", "curl", "-f", "http://localhost:9200"] ports: From 50885be3e07cefc2d9e2872ebafa646b92e626f3 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Thu, 30 Oct 2025 10:04:57 +0100 Subject: [PATCH 3/5] Drop docker-compose.yml version --- tests/docker-compose.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index 314474cf2..281e5a7fc 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -1,5 +1,3 @@ -version: '2.1' - services: postgres: user: postgres From 62fe7a069ae07ca875a793ebe28acfdb8dd75f23 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Thu, 30 Oct 2025 10:17:33 +0100 Subject: [PATCH 4/5] Drop unused volumes --- tests/docker-compose.yml | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index 281e5a7fc..129b9009e 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -165,12 +165,6 @@ volumes: driver: local pyesdata8: driver: local - pyesdata6: - driver: local - pyesdata5: - driver: local - pyesdata2: - driver: local pycassandradata3: driver: local pymssqldata: From 0c353351a06a82178b32786296399bd3796884c9 Mon Sep 17 00:00:00 2001 From: Riccardo Magliocchetti Date: Thu, 30 Oct 2025 14:41:44 +0100 Subject: [PATCH 5/5] Test against Elastic stack 9 --- .ci/.matrix_exclude.yml | 3 +++ .ci/.matrix_framework.yml | 1 + .ci/.matrix_framework_full.yml | 1 + tests/docker-compose.yml | 19 +++++++++++++++++++ tests/requirements/reqs-elasticsearch-9.txt | 3 +++ tests/scripts/envs/elasticsearch-9.sh | 5 +++++ 6 files changed, 32 insertions(+) create mode 100644 tests/requirements/reqs-elasticsearch-9.txt create mode 100644 tests/scripts/envs/elasticsearch-9.sh diff --git a/.ci/.matrix_exclude.yml b/.ci/.matrix_exclude.yml index db796ee34..309c6fb34 100644 --- a/.ci/.matrix_exclude.yml +++ b/.ci/.matrix_exclude.yml @@ -37,6 +37,9 @@ exclude: FRAMEWORK: celery-5-django-5 - VERSION: python-3.9 FRAMEWORK: celery-5-django-5 + # Elasticsearch + - VERSION: python-3.6 + FRAMEWORK: elasticsearch-9 # Flask - VERSION: pypy-3 FRAMEWORK: flask-0.11 # see https://github.com/pallets/flask/commit/6e46d0cd, 0.11.2 was never released diff --git a/.ci/.matrix_framework.yml b/.ci/.matrix_framework.yml index 193f9bd9e..64d1dc8ef 100644 --- a/.ci/.matrix_framework.yml +++ b/.ci/.matrix_framework.yml @@ -31,6 +31,7 @@ FRAMEWORK: - pylibmc-newest - elasticsearch-7 - elasticsearch-8 + - elasticsearch-9 - cassandra-newest - psutil-newest #- eventlet-newest diff --git a/.ci/.matrix_framework_full.yml b/.ci/.matrix_framework_full.yml index 35771af86..6b3a6ea08 100644 --- a/.ci/.matrix_framework_full.yml +++ b/.ci/.matrix_framework_full.yml @@ -65,6 +65,7 @@ FRAMEWORK: #- eventlet-newest - elasticsearch-7 - elasticsearch-8 + - elasticsearch-9 - gevent-newest - aiohttp-3.0 - aiohttp-newest diff --git a/tests/docker-compose.yml b/tests/docker-compose.yml index 129b9009e..0629a045e 100644 --- a/tests/docker-compose.yml +++ b/tests/docker-compose.yml @@ -86,6 +86,22 @@ services: volumes: - pyesdata8:/usr/share/elasticsearch/data + elasticsearch9: + image: docker.elastic.co/elasticsearch/elasticsearch:9.2.0 + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:9200"] + ports: + - "9200:9200" + environment: + - "ES_JAVA_OPTS=-Xms512m -Xmx512m" + - "network.host=_site_" + - "transport.host=127.0.0.1" + - "http.host=0.0.0.0" + - "xpack.security.enabled=false" + - "action.destructive_requires_name=false" # allow for easy cleanup by calling DELETE * + volumes: + - pyesdata9:/usr/share/elasticsearch/data + mssql: image: mcr.microsoft.com/mssql/server environment: @@ -144,6 +160,7 @@ services: run_tests: image: ${REGISTRY:-elasticobservability}/${IMAGE_NAME:-apm-agent-python-testing}:${PYTHON_VERSION} environment: + ES_9_URL: 'http://elasticsearch9:9200' ES_8_URL: 'http://elasticsearch8:9200' ES_7_URL: 'http://elasticsearch7:9200' @@ -165,6 +182,8 @@ volumes: driver: local pyesdata8: driver: local + pyesdata9: + driver: local pycassandradata3: driver: local pymssqldata: diff --git a/tests/requirements/reqs-elasticsearch-9.txt b/tests/requirements/reqs-elasticsearch-9.txt new file mode 100644 index 000000000..b310cbb47 --- /dev/null +++ b/tests/requirements/reqs-elasticsearch-9.txt @@ -0,0 +1,3 @@ +elasticsearch>=9.0,<10.0 +aiohttp +-r reqs-base.txt diff --git a/tests/scripts/envs/elasticsearch-9.sh b/tests/scripts/envs/elasticsearch-9.sh new file mode 100644 index 000000000..dc64a205b --- /dev/null +++ b/tests/scripts/envs/elasticsearch-9.sh @@ -0,0 +1,5 @@ +export PYTEST_MARKER="-m elasticsearch" +export ES_URL="http://elasticsearch9:9200" +export DOCKER_DEPS="elasticsearch9" +export WAIT_FOR_HOST="elasticsearch9" +export WAIT_FOR_PORT=9200