diff --git a/bindep.txt b/bindep.txt new file mode 100644 index 0000000000..490ad5e581 --- /dev/null +++ b/bindep.txt @@ -0,0 +1,22 @@ +# This is a cross-platform list tracking distribution packages needed for install and tests; # see http://docs.openstack.org/infra/bindep/ for additional information. + +build-essential [platform:dpkg test] +gcc [platform:rpm test] +gettext [!platform:suse] +gettext-runtime [platform:suse] +libffi-dev [platform:dpkg] +libffi-devel [platform:redhat] +libffi48-devel [platform:suse] +virtual/libffi [platform:gentoo] +locales [platform:debian] +mariadb [platform:rpm] +mariadb-server [platform:redhat] +mariadb-devel [platform:redhat] +libmysqlclient-dev [platform:dpkg] +libmysqlclient-devel [platform:suse] +mysql-client [platform:dpkg] +mysql-server [platform:dpkg] +postgresql +postgresql-client [platform:dpkg] +postgresql-devel [platform:rpm] +postgresql-server [platform:rpm] diff --git a/tox.ini b/tox.ini index 279d2264cd..7e2f5424b2 100644 --- a/tox.ini +++ b/tox.ini @@ -99,6 +99,17 @@ commands = rm -rf api-ref/build sphinx-build -W -b html -d api-ref/build/doctrees api-ref/source api-ref/build/html +[testenv:bindep] +# 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 + [flake8] # TODO(dmllr): Analyze or fix the warnings blacklisted below # E711 comparison to None should be 'if cond is not None:'