diff --git a/Dockerfile b/Dockerfile index 13704db8..02b59bb8 100644 --- a/Dockerfile +++ b/Dockerfile @@ -33,7 +33,7 @@ RUN apt-get update -y && \ python3.8 \ python3.8-dev \ vim-tiny && \ - pip install --no-cache-dir --upgrade pip setuptools && \ + pip install --no-cache-dir --upgrade pip 'setuptools<71' && \ pip install --no-cache-dir -r /code/requirements.txt && \ apt-get remove -y \ gcc \ diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 00000000..3eb6dd50 --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,9 @@ +# This file is part of REANA. +# Copyright (C) 2024 CERN. +# +# REANA is free software; you can redistribute it and/or modify it +# under the terms of the MIT License; see LICENSE file for more details. + +[build-system] +requires = ["setuptools"] +build-backend = "setuptools.build_meta" diff --git a/run-tests.sh b/run-tests.sh index 3396e016..b6ab3190 100755 --- a/run-tests.sh +++ b/run-tests.sh @@ -104,7 +104,7 @@ check_pytest () { clean_old_db_container start_db_container trap clean_old_db_container SIGINT SIGTERM SIGSEGV ERR - python setup.py test + pytest stop_db_container } diff --git a/setup.cfg b/setup.cfg index eabef9db..181db28c 100644 --- a/setup.cfg +++ b/setup.cfg @@ -4,9 +4,6 @@ # REANA is free software; you can redistribute it and/or modify it # under the terms of the MIT License; see LICENSE file for more details. -[aliases] -test = pytest - [build_sphinx] source-dir = docs/ build-dir = docs/_build diff --git a/setup.py b/setup.py index 8b3141a6..7f6ee3e6 100644 --- a/setup.py +++ b/setup.py @@ -18,10 +18,6 @@ readme = open("README.md").read() history = open("CHANGELOG.md").read() -tests_require = [ - "pytest-reana>=0.95.0a2,<0.96.0", -] - extras_require = { "debug": [ "wdb", @@ -37,7 +33,9 @@ "sphinxcontrib-redoc>=1.5.1", "sphinx-click>=1.0.4", ], - "tests": tests_require, + "tests": [ + "pytest-reana>=0.95.0a2,<0.96.0", + ], } extras_require["all"] = [] @@ -46,10 +44,6 @@ continue extras_require["all"].extend(reqs) -setup_requires = [ - "pytest-runner>=2.7", -] - install_requires = [ # These bounds on Flask/Werkzeug are needed because Werkzeug v2.1 removes `safe_str_cmp`, # which is needed by Flask-Login. This was fixed in Flask-Login v0.6.0 (see the issue @@ -142,8 +136,6 @@ python_requires=">=3.8", extras_require=extras_require, install_requires=install_requires, - setup_requires=setup_requires, - tests_require=tests_require, classifiers=[ "Development Status :: 3 - Alpha", "Environment :: Web Environment",