diff --git a/.zuul.d/project.yaml b/.zuul.d/project.yaml index bb83c1acbb..804c5cf77f 100644 --- a/.zuul.d/project.yaml +++ b/.zuul.d/project.yaml @@ -2,6 +2,15 @@ name: openstack/requirements check: jobs: + - build-wheel-mirror-centos-7: + files: + - bindep.txt + - build-wheel-mirror-ubuntu-trusty: + files: + - bindep.txt + - build-wheel-mirror-ubuntu-xenial: + files: + - bindep.txt - openstack-tox-validate - requirements-tox-babel - requirements-tox-py27-check-uc @@ -33,6 +42,15 @@ gate: queue: integrated jobs: + - build-wheel-mirror-centos-7: + files: + - bindep.txt + - build-wheel-mirror-ubuntu-trusty: + files: + - bindep.txt + - build-wheel-mirror-ubuntu-xenial: + files: + - bindep.txt - openstack-tox-validate - requirements-tox-babel - requirements-tox-py27-check-uc diff --git a/bindep.txt b/bindep.txt index 9b0b00d104..cec1be7af0 100644 --- a/bindep.txt +++ b/bindep.txt @@ -1,45 +1,65 @@ # These are needed to build all the things in global-requirements, which we do # for integration testing. (see tools/integration.sh) -python-all-dev -python3-all-dev -libvirt-dev -libxml2-dev -libxslt1-dev -libmysqlclient-dev -libpq-dev -pkg-config -libsqlite3-dev -libzmq-dev -libffi-dev -libldap2-dev -libkrb5-dev -libsasl2-dev -ccache -pypy -pypy-dev -# NOTE(flaper87): Temporarily needed for proton -uuid-dev + +krb5-devel [platform:redhat] +libffi-dev [platform:dpkg] +libffi-devel [platform:redhat] +libkrb5-dev [platform:dpkg] +libldap2-dev [platform:dpkg] +libmysqlclient-dev [platform:dpkg] +libnss3-dev [platform:dpkg] +libpq-dev [platform:dpkg] +libsasl2-dev [platform:dpkg] +libsqlite3-dev [platform:dpkg] +libuuid-devel [platform:rpm] +libvirt-dev [platform:dpkg] +libvirt-devel [platform:redhat] +libxml2-dev [platform:dpkg] +libxml2-devel [platform:rpm] +libxslt-devel [platform:rpm] +libxslt1-dev [platform:dpkg] +libzmq-dev [platform:dpkg] +mariadb-devel [platform:redhat] +mozilla-nss-devel [platform:suse] +nss-devel [platform:redhat] +openssl-devel [platform:redhat] +openldap-devel [platform:redhat] +pkg-config [platform:dkpg] +pkgconfig [platform:redhat] +postgresql-devel [platform:redhat] +pypy [platform:dpkg] +pypy-dev [platform:dpkg] +# Note that python3-all-dev includes python3-all, added +# both here for documentary purpose. +python3-all-dev [platform:dpkg] +python3-all [platform:dpkg] +python-all-dev [platform:dpkg] +python-devel [platform:rpm] swig +systemd-devel [platform:redhat] +uuid-dev [platform:dpkg] + # Python things that change rarely and we're willing to risk breakage vs latest python-numpy [python] python-yaml [python] + # NOTE(jaegerandi): Temporarily needed for running as part of # OpenStack gates: -mysql-client -mysql-server +# TODO(pabelanger): Remove in follow up patch. +mysql-client [platform:dpkg] +mysql-server [platform:dpkg] postgresql -postgresql-client -# NOTE(toabctl): libnss3-dev is needed for python-nss -# which is used by dogtag-pki -libnss3-dev [platform:dpkg] -mozilla-nss-devel [platform:rpm] -nss-devel [platform:rpm] +postgresql-client [platform:dpkg] + # NOTE(dirk) needed for PyECLib liberasurecode-dev [platform:dpkg] liberasurecode-devel [platform:rpm] dev-libs/liberasurecode [platform:gentoo] libsystemd-dev [platform:dpkg !platform:ubuntu-trusty] libsystemd-journal-dev [platform:ubuntu-trusty] + # NOTE(pabelanger): Needed for build-wheel-mirror jobs gawk [test] +# NOTE(pabelanger): You must first enable epel to install parallel RPM on +# centos-7. parallel [test] diff --git a/tox.ini b/tox.ini index de23033ae0..b128035fe5 100644 --- a/tox.ini +++ b/tox.ini @@ -53,6 +53,17 @@ commands = bash -c "find {toxinidir}/tools \ -name \*.sh \ -print0 | xargs -0 bashate -v -iE006,E010" +[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 + [testenv:docs] commands = python setup.py build_sphinx