diff --git a/bindep.txt b/bindep.txt new file mode 100644 index 0000000000..7071c188bc --- /dev/null +++ b/bindep.txt @@ -0,0 +1,41 @@ +# This is a cross-platform list tracking distribution packages needed for install and tests; +# see https://docs.openstack.org/infra/bindep/ for additional information. + +mysql-server [platform:dpkg] +mariadb-server [platform:redhat] +postgresql + +build-essential [platform:dpkg] +python-dev [platform:dpkg] +python3-all-dev [platform:dpkg] +libxml2-dev [platform:dpkg] +libxslt1-dev [platform:dpkg] +libyaml-dev [platform:dpkg] +libssl-dev [platform:dpkg] +libffi-dev [platform:dpkg] +libmysqlclient-dev [platform:dpkg] +libpq-dev [platform:dpkg] +mysql-client [platform:dpkg] +postgresql-client [platform:dpkg] + +gcc [platform:rpm] +python-devel [platform:rpm] +python3-devel [platform:fedora platform:suse] +python3 [platform:suse] +libxml2-devel [platform:rpm] +libxslt-devel [platform:rpm] +libyaml-devel [platform:rpm] +openssl-devel [platform:rpm] +libffi-devel [platform:redhat platform:suse !platform:opensuse423] +libffi48-devel [platform:opensuse423] +mariadb-devel [platform:redhat] +libmysqlclient-devel [platform:suse] +postgresql-devel [platform:rpm] + +dev-libs/libxml2 [platform:gentoo] +dev-libs/libxslt [platform:gentoo] +dev-libs/libyaml [platform:gentoo] +dev-libs/openssl [platform:gentoo] +virtual/libffi [platform:gentoo] +dev-db/mariadb [platform:gentoo] + diff --git a/tools/test-requires-deb b/tools/test-requires-deb deleted file mode 100644 index f170068167..0000000000 --- a/tools/test-requires-deb +++ /dev/null @@ -1,9 +0,0 @@ -build-essential -python-dev -libxml2-dev -libxslt1-dev -libyaml-dev -libssl-dev -libffi-dev -libmysqlclient-dev -libpq-dev diff --git a/tools/test-requires-rpm b/tools/test-requires-rpm deleted file mode 100644 index 07caafb4ca..0000000000 --- a/tools/test-requires-rpm +++ /dev/null @@ -1,9 +0,0 @@ -gcc -python-devel -libxml2-devel -libxslt-devel -libyaml-devel -openssl-devel -libffi-devel -mariadb-devel -postgresql-devel diff --git a/tox.ini b/tox.ini index 33e6751d8d..9ad149e0f0 100644 --- a/tox.ini +++ b/tox.ini @@ -133,6 +133,18 @@ basepython = python3 deps = -r{toxinidir}/doc/requirements.txt commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html +[testenv:bindep] +basepython = python3 +# Do not install any requirements. We want this to be fast and work even if +# system dependencies are missing, since it's used to tell you what system +# dependencies are missing! This also means that bindep must be installed +# separately, outside of the requirements files, and develop mode disabled +# explicitly to avoid unnecessarily installing the checked-out repo too (this +# further relies on "tox.skipsdist = True" above). +deps = bindep +commands = bindep test +usedevelop = False + [testenv:lower-constraints] basepython = python3 install_command = pip install {opts} {packages}