From f84b684831887bf995496c599c117cac1666180d Mon Sep 17 00:00:00 2001 From: Andreas Jaeger Date: Tue, 28 Jun 2016 09:41:02 +0200 Subject: [PATCH] List system dependencies for running common tests Add an other-requirements.txt file containing a cross-platform list of dependencies needed for running included tox-based tests. Also include a tox environment for convenience calling the bindep[*] utility to list any missing system requirements. This change is needed since the infra team will not install standard packages in jobs anymore, projects should use other-requirements.txt instead. The macros xvfb-install, firefox-install, chrome-install which are used to run some jobs for this repository will be removed soon. This change is self-testing. For other-requirements.txt see also http://docs.openstack.org/infra/manual/drivers.html#package-requirements [*] http://docs.openstack.org/infra/bindep/ Change-Id: I936ff0e7c58df8ddfe5fbc6f4e387868ac16a0b0 --- other-requirements.txt | 48 ++++++++++++++++++++++++++++++++++++++++++ tox.ini | 8 +++++++ 2 files changed, 56 insertions(+) create mode 100644 other-requirements.txt diff --git a/other-requirements.txt b/other-requirements.txt new file mode 100644 index 00000000..f5fb3286 --- /dev/null +++ b/other-requirements.txt @@ -0,0 +1,48 @@ +# This is a cross-platform list tracking distribution packages needed by tests; +# see http://docs.openstack.org/infra/bindep/ for additional information. + +apt-transport-https +build-essential [platform:dpkg] +curl +cyrus-sasl-devel [platform:rpm] +dbus +firefox [!platform:debian] +gawk +gettext +iceweasel [platform:debian] +language-pack-en [platform:ubuntu] +libcurl-devel [platform:rpm] +libcurl4-gnutls-dev [platform:dpkg] +libmysqlclient-dev [platform:dpkg] +libpq-dev [platform:dpkg] +locales [platform:debian] +lsb-release +mariadb [platform:rpm] +mariadb-devel [platform:rpm] +mariadb-server [platform:rpm] +mysql-client [platform:dpkg] +mysql-server [platform:dpkg] +openldap-devel [platform:rpm] +pkg-config [platform:dpkg] +pkgconfig [platform:rpm] +postgresql +postgresql-client [platform:dpkg] +postgresql-devel [platform:rpm] +postgresql-server [platform:rpm] +python-dev [platform:dpkg] +python-devel [platform:rpm] +python-lxml +python-zmq +python3-all-dev [platform:ubuntu-trusty] +python3-dev [platform:dpkg] +python3-devel [platform:fedora] +python3.4 [platform:ubuntu-trusty] +python34-devel [platform:centos] +sqlite [platform:rpm] +sqlite-devel [platform:rpm] +sqlite3 [platform:dpkg] +uuid-dev [platform:dpkg] +xorg-x11-server-Xvfb [platform:rpm] +xvfb [platform:dpkg] +zlib-devel [platform:rpm] +zlib1g-dev [platform:dpkg] diff --git a/tox.ini b/tox.ini index 39f5c6ca..3989b86f 100644 --- a/tox.ini +++ b/tox.ini @@ -39,3 +39,11 @@ ignore = E125,E128,H803 builtins = _ show-source = True exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build + +[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. +deps = bindep +commands = bindep test