From 4fd1d0cde3d2f5c4286d5b6a124c5c26c312da90 Mon Sep 17 00:00:00 2001 From: Ghanshyam Mann Date: Tue, 12 Oct 2021 12:33:15 -0500 Subject: [PATCH] Use 'functional-without-sample-db-tests' tox env for placement nova job NOTE(melwitt): This is a combination of 2 commits needed to fix the gate, a chicken and egg problem where each fix depends on the other. Nova defines (depends-on) a new tox env 'functional-without-sample-db-tests' to run the nova functional test by exlcuding the api|notification sample_tests, and db-related tests. We can use that to fix the error are facing currently for this job - https://zuul.openstack.org/build/a8c186b2c7124856ae32477f10e2b9a4 Depends-On: https://review.opendev.org/c/openstack/nova/+/840771 Drop lower-constraints.txt and its testing As discussed in TC PTG[1] and TC resolution[2], we are dropping the lower-constraints.txt file and its testing. We will keep lower bounds in the requirements.txt file but with a note that these are not tested lower bounds and we try our best to keep them updated. Conflicts: .zuul.yaml lower-constraints.txt NOTE(melwitt): conflict is due to branch specific settings (job template names, lower constraints changes). Another change in .zuul.yaml is due to requirements-check job runs now against ubuntu-focal, that breaks tools/test_setup.sh script (fix exists in victoria: I97b0dcbb88c6ef7c22e3c55970211bed792bbd0d). This patch pins the job locally for ubuntu-bionic nodeset. [1] https://etherpad.opendev.org/p/tc-zed-ptg#L326 [2] https://governance.openstack.org/tc/resolutions/20220414-drop-lower-constraints.html#proposal Change-Id: Ieba7daf39fa3323e8c9a7396747449f24189fcd5 (cherry picked from commit 03d567928e31d3dc85d4dd3f5617785e7380b6b1) (cherry picked from commit 4d3df47ee3e394e3178d58c15306620809ad2806) (cherry picked from commit f96984abd48f4d938d0fff0bab9b12ed933e320e) Change-Id: If7e6060c867df21360a1f588ca872d65d75eb3c1 (cherry picked from commit 6d49b6df1d3f62e2003c55509875380148281a79) (cherry picked from commit 7422ed4d7adb26868602a3f4652119ff0392d298) (cherry picked from commit 69dcdcb2b7df0a81addec55804ce91c724ca0f54) (cherry picked from commit 503b1f27cefeadf127d3f9f274901eba52f67c01) --- .zuul.yaml | 11 +++-- lower-constraints.txt | 96 ------------------------------------------- requirements.txt | 4 ++ tox.ini | 16 -------- 4 files changed, 11 insertions(+), 116 deletions(-) delete mode 100644 lower-constraints.txt diff --git a/.zuul.yaml b/.zuul.yaml index b5871df42..29056a260 100644 --- a/.zuul.yaml +++ b/.zuul.yaml @@ -6,10 +6,8 @@ # tempest-integrated-placement and grenade jobs. # tempest-integrated-placement runs a subset of tempest tests which are # relevant for placement, e.g. it does not run keystone tests. - - check-requirements - integrated-gate-placement - openstack-cover-jobs - - openstack-lower-constraints-jobs - openstack-python3-ussuri-jobs - publish-openstack-docs-pti - release-notes-jobs-python3 @@ -44,6 +42,8 @@ irrelevant-files: *gate-irrelevant-files - tempest-ipv6-only: irrelevant-files: *gate-irrelevant-files + - requirements-check: + nodeset: ubuntu-bionic gate: jobs: - openstack-tox-functional-py36 @@ -56,6 +56,8 @@ irrelevant-files: *gate-irrelevant-files - tempest-ipv6-only: irrelevant-files: *gate-irrelevant-files + - requirements-check: + nodeset: ubuntu-bionic - job: name: placement-nova-tox-functional-py37 @@ -64,8 +66,9 @@ Run the nova functional tests to confirm that we aren't breaking the PlacementFixture. vars: - # Skip the api and notification _sample_tests, and db-related tests - tox_extra_args: '^((?!(?:api|notification)_sample_tests|functional\.db\.).)*$' + # 'functional-without-sample-db-tests' tox env is defined in nova tox.ini + # to skip the api|notification _sample_tests and db-related tests. + tox_envlist: functional-without-sample-db-tests - job: name: placement-perfload diff --git a/lower-constraints.txt b/lower-constraints.txt deleted file mode 100644 index 41dcc6f1e..000000000 --- a/lower-constraints.txt +++ /dev/null @@ -1,96 +0,0 @@ -alembic==0.9.8 -appdirs==1.4.3 -attrs==17.4.0 -Babel==2.3.4 -bandit==1.1.0 -colorama==0.3.9 -coverage==4.0 -debtcollector==1.19.0 -decorator==3.4.0 -extras==1.0.0 -fasteners==0.14.1 -fixtures==3.0.0 -flake8==2.5.5 -future==0.16.0 -gabbi==1.35.0 -gitdb2==2.0.3 -GitPython==2.1.8 -hacking==0.12.0 -iso8601==0.1.11 -Jinja2==2.10 -jsonpath-rw==1.4.0 -jsonpath-rw-ext==1.1.3 -jsonschema==2.6.0 -keystoneauth1==3.9.0 -keystonemiddleware==4.18.0 -linecache2==1.0.0 -Mako==1.0.7 -MarkupSafe==1.0 -mccabe==0.2.1 -microversion-parse==0.2.1 -mock==2.0.0 -monotonic==1.4 -mox3==0.20.0 -msgpack-python==0.5.6 -netaddr==0.7.18 -netifaces==0.10.4 -os-client-config==1.29.0 -os-resource-classes==0.5.0 -os-service-types==1.2.0 -os-traits==2.2.0 -oslo.concurrency==3.26.0 -oslo.config==6.7.0 -oslo.context==2.19.2 -oslo.db==4.40.0 -oslo.i18n==3.15.3 -oslo.log==3.36.0 -oslo.middleware==3.31.0 -oslo.policy==1.35.0 -oslo.serialization==2.18.0 -oslo.upgradecheck==0.2.0 -oslo.utils==3.37.0 -oslotest==3.4.0 -osprofiler==1.4.0 -pbr==2.0.0 -pep8==1.5.7 -pluggy==0.6.0 -ply==3.11 -prettytable==0.7.1 -psycopg2==2.7 -py==1.5.2 -pycadf==2.7.0 -pyflakes==0.8.1 -PyMySQL==0.7.6 -pyparsing==2.2.0 -pytest==3.4.2 -python-dateutil==2.5.3 -python-editor==1.0.3 -python-keystoneclient==3.15.0 -python-mimeparse==1.6.0 -python-subunit==1.2.0 -pytz==2018.3 -PyYAML==3.12 -repoze.lru==0.7 -requests==2.14.2 -requestsexceptions==1.4.0 -rfc3986==0.3.1 -Routes==2.3.1 -six==1.10.0 -smmap2==2.0.3 -SQLAlchemy==1.2.19 -setuptools==21.0.0 -sqlparse==0.2.4 -statsd==3.2.2 -stestr==1.0.0 -stevedore==1.20.0 -Tempita==0.5.2 -testrepository==0.0.20 -testresources==2.0.0 -testscenarios==0.4 -testtools==2.2.0 -traceback2==1.4.0 -unittest2==1.1.0 -urllib3==1.22 -WebOb==1.8.2 -wrapt==1.10.11 -wsgi-intercept==1.7.0 diff --git a/requirements.txt b/requirements.txt index 9783ba95c..204ecbbfb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,7 @@ +# Requirements lower bounds listed here are our best effort to keep them up to +# date but we do not test them so no guarantee of having them all correct. If +# you find any incorrect lower bounds, let us know or propose a fix. + # The order of packages is significant, because pip processes them in the order # of appearance. Changing the order has an impact on the overall integration # process, which may cause wedges in the gate later. diff --git a/tox.ini b/tox.ini index f67b3f358..a05f50797 100644 --- a/tox.ini +++ b/tox.ini @@ -168,19 +168,3 @@ usedevelop = False deps = bindep commands = bindep test - -[testenv:lower-constraints] -# When using pbr and in a git repo, 'setup.py install' does not install -# packages. 'setup.py develop', used when usedevelop is True, does. -usedevelop = False -# Use our own install_command to turn off upper constraints, which conflicts -# with lower constraints. -install_command = pip install {opts} {packages} -deps = - -c{toxinidir}/lower-constraints.txt - -r{toxinidir}/test-requirements.txt - -r{toxinidir}/requirements.txt -# Test with both functional and unit tests. -commands = - {[testenv]commands} - stestr --test-path=./placement/tests run {posargs}