update hacking reference url

Signed-off-by: zhangchi <zhangchi@szzt.com.cn>
Co-Authored-by: tangzhuo <ztang@hnu.edu.cn>

Change-Id: Ic8dbe8d802dca8c6574292299e14e7fbbc045aab
This commit is contained in:
zhangchi 2021-12-22 05:09:37 +00:00
parent 4dad7184b0
commit b48ab53dab
9 changed files with 293 additions and 76 deletions

View File

@ -3,4 +3,4 @@ The Trio2o Style Commandments
================================
Please read the OpenStack Style Commandments
http://docs.openstack.org/developer/hacking/
http://docs.openstack.org/developer/hacking/latest

166
lower-constraints.txt Normal file
View File

@ -0,0 +1,166 @@
alembic==1.5.0
amqp==2.5.0
appdirs==1.4.3
asn1crypto==0.24.0
attrs==17.4.0
automaton==1.14.0
bandit==1.1.0
cachetools==2.0.1
castellan==0.16.0
cffi==1.14.0
cliff==2.11.0
cmd2==0.8.1
colorama==0.3.9
coverage==4.0
cryptography==2.7
cursive==0.2.1
dataclasses==0.7
ddt==1.2.1
debtcollector==1.19.0
decorator==4.1.0
deprecation==2.0
dogpile.cache==0.6.5
enum-compat==0.0.2
eventlet==0.30.1
extras==1.0.0
fasteners==0.14.1
fixtures==3.0.0
future==0.16.0
futurist==1.8.0
gabbi==1.35.0
gitdb2==2.0.3
GitPython==2.1.8
greenlet==0.4.15
idna==2.6
iso8601==0.1.11
Jinja2==2.10
jmespath==0.9.3
jsonpatch==1.21
jsonpath-rw==1.4.0
jsonpath-rw-ext==1.1.3
jsonpointer==2.0
jsonschema==3.2.0
keystoneauth1==3.16.0
keystonemiddleware==4.20.0
kombu==4.6.1
linecache2==1.0.0
lxml==4.5.0
Mako==1.0.7
MarkupSafe==1.1.1
microversion-parse==0.2.1
mock==3.0.0
msgpack==0.6.0
msgpack-python==0.5.6
munch==2.2.0
mypy==0.761
netaddr==0.7.18
netifaces==0.10.4
networkx==2.1.0
numpy==1.19.0
openstacksdk==0.35.0
os-brick==4.3.1
os-client-config==1.29.0
os-resource-classes==1.1.0
os-service-types==1.7.0
os-traits==2.5.0
os-vif==1.15.2
os-win==5.4.0
os-xenapi==0.3.4
osc-lib==1.10.0
oslo.cache==1.26.0
oslo.concurrency==4.4.0
oslo.config==8.6.0
oslo.context==3.1.1
oslo.db==10.0.0
oslo.i18n==5.0.1
oslo.log==4.4.0
oslo.messaging==10.3.0
oslo.middleware==3.31.0
oslo.policy==3.7.0
oslo.privsep==2.4.0
oslo.reports==1.18.0
oslo.rootwrap==5.8.0
oslo.serialization==4.1.0
oslo.service==2.5.0
oslo.upgradecheck==1.3.0
oslo.utils==4.8.0
oslo.versionedobjects==1.35.0
oslo.vmware==3.6.0
oslotest==3.8.0
osprofiler==1.4.0
ovs==2.10.0
ovsdbapp==0.15.0
packaging==20.4
paramiko==2.7.1
Paste==2.0.2
PasteDeploy==1.5.0
pbr==5.5.1
pluggy==0.6.0
ply==3.11
prettytable==0.7.1
psutil==3.2.2
psycopg2-binary==2.8
py==1.5.2
pyasn1==0.4.2
pyasn1-modules==0.2.1
pycadf==2.7.0
pycparser==2.18
pyinotify==0.9.6
pyroute2==0.5.4
PyJWT==1.7.0
PyMySQL==0.8.0
pyOpenSSL==17.5.0
pyparsing==2.2.0
pyperclip==1.6.0
pypowervm==1.1.15
pytest==3.4.2
python-barbicanclient==4.5.2
python-cinderclient==3.3.0
python-dateutil==2.7.0
python-editor==1.0.3
python-glanceclient==2.8.0
python-ironicclient==3.0.0
python-keystoneclient==3.15.0
python-mimeparse==1.6.0
python-neutronclient==7.1.0
python-subunit==1.4.0
pytz==2018.3
PyYAML==5.1
repoze.lru==0.7
requests==2.25.1
requests-mock==1.2.0
requestsexceptions==1.4.0
retrying==1.3.3
rfc3986==1.2.0
Routes==2.3.1
simplejson==3.13.2
six==1.15.0
smmap2==2.0.3
sortedcontainers==2.1.0
SQLAlchemy==1.4.13
sqlalchemy-migrate==0.13.0
sqlparse==0.2.4
statsd==3.2.2
stestr==2.0.0
stevedore==1.20.0
suds-jurko==0.6
taskflow==3.8.0
Tempita==0.5.2
tenacity==6.3.1
testrepository==0.0.20
testresources==2.0.0
testscenarios==0.4
testtools==2.2.0
tooz==1.58.0
traceback2==1.4.0
types-paramiko==0.1.3
unittest2==1.1.0
urllib3==1.22
vine==1.1.4
voluptuous==0.11.1
warlock==1.3.1
WebOb==1.8.2
websockify==0.9.0
wrapt==1.10.11
wsgi-intercept==1.7.0
zVMCloudConnector==1.3.0

View File

@ -1,45 +1,60 @@
# 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.
pbr>=2.0.0 # Apache-2.0
Babel!=2.4.0,>=2.3.4 # BSD
pbr>=4.0.0 # Apache-2.0
Paste # MIT
Paste>=2.0.2 # MIT
PasteDeploy>=1.5.0 # MIT
Routes!=2.0,!=2.1,!=2.3.0,>=1.12.3;python_version=='2.7' # MIT
Routes!=2.0,!=2.3.0,>=1.12.3;python_version!='2.7' # MIT
debtcollector>=1.2.0 # Apache-2.0
eventlet!=0.18.3,>=0.18.2 # MIT
pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2,>=1.0.0 # BSD
requests!=2.12.2,!=2.13.0,>=2.10.0 # Apache-2.0
Jinja2!=2.9.0,!=2.9.1,!=2.9.2,!=2.9.3,!=2.9.4,>=2.8 # BSD License (3 clause)
keystonemiddleware>=4.12.0 # Apache-2.0
netaddr!=0.7.16,>=0.7.13 # BSD
Routes>=2.3.1 # MIT
#debtcollector>=1.19.0 # Apache-2.0
decorator>=4.1.0 # BSD
eventlet>=0.26.1 # MIT
pecan>=1.3.2 # BSD
httplib2>=0.9.1 # MIT
requests>=2.18.0 # Apache-2.0
Jinja2>=2.10 # BSD License (3 clause)
keystonemiddleware>=5.1.0 # Apache-2.0
netaddr>=0.7.18 # BSD
netifaces>=0.10.4 # MIT
neutron-lib>=1.3.0 # Apache-2.0
retrying!=1.3.0,>=1.2.3 # Apache-2.0
SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8,>=1.0.10 # MIT
WebOb>=1.7.1 # MIT
python-cinderclient>=2.0.1 # Apache-2.0
python-glanceclient>=2.5.0 # Apache-2.0
python-keystoneclient>=3.8.0 # Apache-2.0
python-neutronclient>=5.1.0 # Apache-2.0
python-novaclient>=7.1.0 # Apache-2.0
alembic>=0.8.10 # MIT
six>=1.9.0 # MIT
#neutron-lib>=2.18.0 # Apache-2.0
python-neutronclient>=6.7.0 # Apache-2.0
tenacity>=6.0.0 # Apache-2.0
SQLAlchemy>=1.4.23 # MIT
WebOb>=1.8.2 # MIT
keystoneauth1>=3.14.0 # Apache-2.0
alembic>=1.6.5 # MIT
stevedore>=1.20.0 # Apache-2.0
oslo.concurrency>=3.8.0 # Apache-2.0
oslo.config>=3.22.0 # Apache-2.0
oslo.context>=2.12.0 # Apache-2.0
oslo.db>=4.19.0 # Apache-2.0
oslo.i18n>=2.1.0 # Apache-2.0
oslo.log>=3.22.0 # Apache-2.0
oslo.messaging>=5.19.0 # Apache-2.0
oslo.middleware>=3.10.0 # Apache-2.0
oslo.policy>=1.17.0 # Apache-2.0
oslo.rootwrap>=5.0.0 # Apache-2.0
oslo.serialization>=1.10.0 # Apache-2.0
oslo.service>=1.10.0 # Apache-2.0
oslo.utils>=3.20.0 # Apache-2.0
oslo.versionedobjects>=1.17.0 # Apache-2.0
sqlalchemy-migrate>=0.9.6 # Apache-2.0
oslo.cache>=1.26.0 # Apache-2.0
#oslo.concurrency>=3.26.0 # Apache-2.0
oslo.config>=8.0.0 # Apache-2.0
#oslo.context>=2.22.0 # Apache-2.0
oslo.db>=4.44.0 # Apache-2.0
#oslo.i18n>=3.20.0 # Apache-2.0
oslo.log>=4.5.0 # Apache-2.0
oslo.messaging>=7.0.0 # Apache-2.0
oslo.middleware>=3.31.0 # Apache-2.0
oslo.policy>=3.7.0 # Apache-2.0
oslo.privsep>=2.3.0 # Apache-2.0
oslo.reports>=1.18.0 # Apache-2.0
oslo.rootwrap>=5.8.0 # Apache-2.0
oslo.serialization>=2.25.0 # Apache-2.0
#oslo.service>=1.31.0 # Apache-2.0
oslo.upgradecheck>=1.3.0 # Apache-2.0
oslo.utils>=4.5.0 # Apache-2.0
oslo.versionedobjects>=1.35.1 # Apache-2.0
#osprofiler>=2.3.0 # Apache-2.0
os-ken>=2.2.0 # Apache-2.0
#os-resource-classes>=1.1.0 # Apache-2.0
ovs>=2.10.0 # Apache-2.0
ovsdbapp>=1.11.0 # Apache-2.0
packaging>=20.4 # Apache-2.0
psutil>=5.3.0 # BSD
pyroute2>=0.6.4;sys_platform!='win32' # Apache-2.0 (+ dual licensed GPL2)
#pyOpenSSL>=17.1.0 # Apache-2.0
python-novaclient>=9.1.0 # Apache-2.0
openstacksdk>=0.31.2 # Apache-2.0
python-designateclient>=2.7.0 # Apache-2.0
os-vif>=1.15.1 # Apache-2.0
futurist>=1.2.0 # Apache-2.0
tooz>=1.58.0 # Apache-2.0
wmi>=1.4.9;sys_platform=='win32' # MIT

View File

@ -1,22 +1,16 @@
# 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.
hacking!=0.13.0,<0.14,>=0.12.0 # Apache-2.0
coverage>=4.0 # Apache-2.0
hacking # Apache-2.0
coverage!=4.4,>=4.0 # Apache-2.0
fixtures>=3.0.0 # Apache-2.0/BSD
mock>=2.0 # BSD
python-subunit>=0.0.18 # Apache-2.0/BSD
requests-mock>=1.1 # Apache-2.0
docutils>=0.11 # OSI-Approved Open Source, Public Domain
sphinx>=1.5.1 # BSD
oslosphinx>=4.7.0 # Apache-2.0
testrepository>=0.0.18 # Apache-2.0/BSD
testtools>=1.4.0 # MIT
testresources>=0.2.4 # Apache-2.0/BSD
python-subunit>=1.0.0 # Apache-2.0/BSD
testtools>=2.2.0 # MIT
testresources>=2.0.0 # Apache-2.0/BSD
testscenarios>=0.4 # Apache-2.0/BSD
oslotest>=1.10.0 # Apache-2.0
os-testr>=0.8.0 # Apache-2.0
tempest-lib>=0.14.0 # Apache-2.0
WebTest>=2.0.27 # MIT
oslotest>=3.2.0 # Apache-2.0
stestr>=1.0.0 # Apache-2.0
ddt>=1.0.1 # MIT
reno>=1.8.0 # Apache-2.0
# Needed to run DB commands in virtualenvs
PyMySQL>=0.7.6 # MIT License

55
tox.ini
View File

@ -1,20 +1,26 @@
[tox]
minversion = 1.6
envlist = py35,py27,pypy,pep8
minversion = 3.1.1
envlist = py37,pypy,pep8
skipsdist = True
ignore_basepython_conflict = True
[testenv]
sitepackages = True
basepython = python3
setenv = VIRTUAL_ENV={envdir}
PYTHONWARNINGS=default::DeprecationWarning
passenv = OS_DEBUG GENERATE_HASHES
usedevelop = True
install_command = pip install -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} {opts} {packages}
setenv =
VIRTUAL_ENV={envdir}
PYTHONWARNINGS=default::DeprecationWarning
TRIO2O_TEST_DIRECTORY=trio2o/tests
deps =
-r{toxinidir}/test-requirements.txt
commands = python setup.py testr --slowest --testr-args='{posargs}'
whitelist_externals = rm
deps = -c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
whitelist_externals =
sh
stestr
commands =
stestr run {posargs}
stestr slowest
ignore_basepython_conflict = True
[testenv:releasenotes]
commands = sphinx-build -a -W -E -d releasenotes/build/doctrees -b html releasenotes/source releasenotes/build/html
@ -22,7 +28,8 @@ commands = sphinx-build -a -W -E -d releasenotes/build/doctrees -b html releasen
[testenv:pep8]
deps =
-r{toxinidir}/test-requirements.txt
commands = flake8
commands =
flake8
[testenv:venv]
commands = {posargs}
@ -52,6 +59,28 @@ commands = oslo_debug_helper {posargs}
show-source = True
builtins = _
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build
ignore=F401,F632,F821,F841,W291,W503,W504,W605,E123,E117,E265,E266,E305,E402,E501,504,506,E722,E741,
H101,H104,H201,H216,H238,H30
[hacking]
import_exceptions = trio2o.common.i18n
[testenv:dev]
# run locally (not in the gate) using editable mode
# https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs
# note that order is important to ensure dependencies don't override
commands =
pip install -q -e "git+https://opendev.org/openstack/networking-sfc#egg=networking_sfc"
pip install -q -e "git+https://opendev.org/openstack/neutron#egg=neutron"
[testenv:py3-dev]
basepython = python3
commands =
{[testenv:dev]commands}
{[testenv]commands}
[testenv:pep8-dev]
basepython = python3
deps = {[testenv]deps}
-r{toxinidir}/test-requirements.txt
commands = flake

View File

@ -500,13 +500,19 @@ class DbQuotaDriver(object):
"""
# Filter resources
if has_sync:
sync_filt = lambda x: hasattr(x, 'sync')
else:
sync_filt = lambda x: not hasattr(x, 'sync')
#if has_sync:
# sync_filt = lambda x: hasattr(x, 'sync')
#else:
# sync_filt = lambda x: not hasattr(x, 'sync')
def _sync_filter(self, x):
if has_sync:
return hasattr(x, 'sync')
else:
return not hasattr(x, 'sync')
desired = set(keys)
sub_resources = {k: v for k, v in resources.items()
if k in desired and sync_filt(v)}
if k in desired and _sync_filter(v)}
# Make sure we accounted for all of them...
if len(keys) != len(sub_resources):

View File

@ -1069,13 +1069,19 @@ def volume_type_delete(context, id, session):
:param context: The request context, for access checks.
:param id: The id of volume type to be deleted.
"""
model_query(context, models.VolumeTypes, session=session, read_deleted="no").\
model_query(context,
models.VolumeTypes,
session=session,
read_deleted="no"). \
filter_by(id=id). \
update({'deleted': True,
'deleted_at': timeutils.utcnow(),
'updated_at': literal_column('updated_at')})
model_query(context, models.VolumeTypeExtraSpecs, session=session, read_deleted="no"). \
model_query(context,
models.VolumeTypeExtraSpecs,
session=session,
read_deleted="no"). \
filter_by(volume_type_id=id). \
update({'deleted': True,
'deleted_at': timeutils.utcnow(),

View File

@ -34,7 +34,7 @@ SUPPORTED_FILTERS = {
'created': 'created_at',
'updated': 'updated_at',
'visibility': 'visibility',
'tags': 'tags',
'tags': 'tags',
}

1
upper-constraints.txt Normal file
View File

@ -0,0 +1 @@
oslotest===3.8.1