This is an automated email from the ASF dual-hosted git repository. Cole-Greer pushed a commit to branch 3.8-test-CI-fix in repository https://gitbox.apache.org/repos/asf/tinkerpop.git
commit 33bd7fd10e8db440ccb5bb1faced0a1188e127ff Merge: 1c7cf6e8a8 cd39f23caf Author: Cole Greer <[email protected]> AuthorDate: Tue Sep 15 15:20:24 2026 -0700 Merge branch '3.7-dev' into 3.8-dev Assisted-by: Kiro:auto gremlin-console/src/test/python/docker/Dockerfile | 21 ++++++++++++++++++--- gremlin-console/src/test/python/setup.cfg | 3 --- gremlin-console/src/test/python/setup.py | 17 +++++------------ 3 files changed, 23 insertions(+), 18 deletions(-) diff --cc gremlin-console/src/test/python/docker/Dockerfile index e20de5991b,5d36960764..957bf917b4 --- a/gremlin-console/src/test/python/docker/Dockerfile +++ b/gremlin-console/src/test/python/docker/Dockerfile @@@ -16,12 -16,18 +16,27 @@@ # under the License. # Image used for running integration tests for gremlin-console. - FROM python:3.10-bullseye + FROM eclipse-temurin:11-jre AS jre + -FROM python:3.9.20-bookworm ++FROM python:3.10-bookworm LABEL maintainer="[email protected]" - RUN apt-get update && apt-get install -y --no-install-recommends openjdk-11-jre && apt-get install dos2unix + COPY --from=jre /opt/java/openjdk /opt/java/openjdk + ENV JAVA_HOME=/opt/java/openjdk + ENV PATH="${JAVA_HOME}/bin:${PATH}" + + RUN apt-get update && apt-get install -y --no-install-recommends dos2unix && rm -rf /var/lib/apt/lists/* + ++# Test dependencies were previously pulled in via setup.py's tests_require and run ++# through pytest-runner (setup.py test). That path was removed from modern setuptools, ++# so the tests are now driven by pytest directly with the dependencies installed here. ++RUN pip install --no-cache-dir \ ++ 'pytest>=6.2.5,<8.0.0' \ ++ 'mock>=3.0.5,<4.0.0' \ ++ 'more-itertools<11.0.0' \ ++ 'pexpect==4.8.0' + WORKDIR /console_app --CMD dos2unix ./gremlin-console/bin/gremlin.sh && python3 setup.py build && python3 setup.py test; \ ++CMD dos2unix ./gremlin-console/bin/gremlin.sh && python3 -m pytest; \ EXIT_CODE=$?; chown -R `stat -c '%u:%g' .` .; exit $EXIT_CODE diff --cc gremlin-console/src/test/python/setup.cfg index caaea18ff5,caaea18ff5..2ddccd6179 --- a/gremlin-console/src/test/python/setup.cfg +++ b/gremlin-console/src/test/python/setup.cfg @@@ -14,9 -14,9 +14,6 @@@ # KIND, either express or implied. See the License for the # specific language governing permissions and limitations # under the License. --[aliases] --test=pytest -- [tool:pytest] addopts = --junitxml=./python-reports/TEST-native-python.xml norecursedirs = '.*', 'build', 'dist', 'CVS', '_darcs', '{arch}', '*.egg' lib lib64 diff --cc gremlin-console/src/test/python/setup.py index 71fd31a52b,163e0d773c..ee856e1621 --- a/gremlin-console/src/test/python/setup.py +++ b/gremlin-console/src/test/python/setup.py @@@ -22,17 -22,17 +22,10 @@@ import sy import time from setuptools import setup ++# Test dependencies are installed in the test image and the suite is run with ++# pytest directly (see src/test/python/docker/Dockerfile). The deprecated ++# setup.py test / pytest-runner mechanism was removed as it is incompatible with ++# modern setuptools. setup( -- name='gremlinconsoletest', -- test_suite="tests", -- setup_requires=[ -- 'pytest-runner==5.2', -- 'importlib-metadata<3.0.0' -- ], -- tests_require=[ - 'pytest>=6.2.5,<8.0.0', - 'pytest>=4.6.4,<5.0.0', -- 'mock>=3.0.5,<4.0.0', -- 'more-itertools<11.0.0', -- 'pexpect==4.8.0' -- ] ++ name='gremlinconsoletest' )
