Browse Source

Add local bindep.txt and limit bandit version

As it was announced [1] global bindep-fallback.txt was removed and now
projects need to have a local bindep.txt to be able to install binary
dependencies for testing.

In test jobs the script tools/test-setup.sh is called which requires
mysql and postgres servers and clients to be installed.

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-June/007272.html

(cherry picked from commit d116b21696)

Note(elod.illes): patch was modified so that the test-requires files
are kept. An upper constraint was also added for bandit. This actually
freezes requirements (required by bandit) on stable branch.

Conflicts:
      tox.ini

Change-Id: If9befe4115c64c2fda52321002ba5fe1124eaf7c
(cherry picked from commit 916fd05627)
(cherry picked from commit ec50bb8fa4)
changes/46/669146/1
Elod Illes 2 months ago
parent
commit
478f752ee4
3 changed files with 54 additions and 1 deletions
  1. 41
    0
      bindep.txt
  2. 1
    1
      test-requirements.txt
  3. 12
    0
      tox.ini

+ 41
- 0
bindep.txt View File

@@ -0,0 +1,41 @@
1
+# This is a cross-platform list tracking distribution packages needed for install and tests;
2
+# see https://docs.openstack.org/infra/bindep/ for additional information.
3
+
4
+mysql-server [platform:dpkg]
5
+mariadb-server [platform:redhat]
6
+postgresql
7
+
8
+build-essential [platform:dpkg]
9
+python-dev [platform:dpkg]
10
+python3-all-dev [platform:dpkg]
11
+libxml2-dev [platform:dpkg]
12
+libxslt1-dev [platform:dpkg]
13
+libyaml-dev [platform:dpkg]
14
+libssl-dev [platform:dpkg]
15
+libffi-dev [platform:dpkg]
16
+libmysqlclient-dev [platform:dpkg]
17
+libpq-dev [platform:dpkg]
18
+mysql-client [platform:dpkg]
19
+postgresql-client [platform:dpkg]
20
+
21
+gcc [platform:rpm]
22
+python-devel [platform:rpm]
23
+python3-devel [platform:fedora platform:suse]
24
+python3 [platform:suse]
25
+libxml2-devel [platform:rpm]
26
+libxslt-devel [platform:rpm]
27
+libyaml-devel [platform:rpm]
28
+openssl-devel [platform:rpm]
29
+libffi-devel [platform:redhat platform:suse !platform:opensuse423]
30
+libffi48-devel [platform:opensuse423]
31
+mariadb-devel [platform:redhat]
32
+libmysqlclient-devel [platform:suse]
33
+postgresql-devel [platform:rpm]
34
+
35
+dev-libs/libxml2 [platform:gentoo]
36
+dev-libs/libxslt [platform:gentoo]
37
+dev-libs/libyaml [platform:gentoo]
38
+dev-libs/openssl [platform:gentoo]
39
+virtual/libffi [platform:gentoo]
40
+dev-db/mariadb [platform:gentoo]
41
+

+ 1
- 1
test-requirements.txt View File

@@ -4,7 +4,7 @@
4 4
 
5 5
 # Hacking already pins down pep8, pyflakes and flake8
6 6
 hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0
7
-bandit!=1.6.0,>=1.1.0 # Apache-2.0
7
+bandit<1.6.0,>=1.1.0 # Apache-2.0
8 8
 coverage!=4.4,>=4.0 # Apache-2.0
9 9
 fixtures>=3.0.0 # Apache-2.0/BSD
10 10
 kombu!=4.0.2,>=4.0.0 # BSD

+ 12
- 0
tox.ini View File

@@ -115,3 +115,15 @@ commands = oslo_debug_helper {posargs}
115 115
 
116 116
 [testenv:releasenotes]
117 117
 commands = sphinx-build -a -E -W -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
118
+
119
+[testenv:bindep]
120
+basepython = python3
121
+# Do not install any requirements. We want this to be fast and work even if
122
+# system dependencies are missing, since it's used to tell you what system
123
+# dependencies are missing! This also means that bindep must be installed
124
+# separately, outside of the requirements files, and develop mode disabled
125
+# explicitly to avoid unnecessarily installing the checked-out repo too (this
126
+# further relies on "tox.skipsdist = True" above).
127
+deps = bindep
128
+commands = bindep test
129
+usedevelop = False

Loading…
Cancel
Save