Following PyCQA/astroid@206d8a2 we sarted getting a whole bunch of
errors like
E:266,44: Value 'headers' doesn't support membership test
and
E:267,25: Value 'headers' is unsubscriptable
Digging around a bit, apparently astroid thinks the headers returned
from call_app will always be None -- I guess it doesn't like our use of
a list to work around py2's lack of `nonlocal`.
By using a proper object to encapsulate state, we can shut up those
"error"s.
Also, pin upper-constraints to pike for keystone-related jobs.
Change-Id: I5ff21260872f4089b030cd94e494dc346ae74b8e
...and pin us to stable/newton. (I wanted stable/mitaka so it'd match
Keystone, but apparently then pbr is too old for Keystone to install
a keystone-wsgi-admin script.)
This prevents various version conflicts; the most recent was from
oslo.service blocking too-new eventlet.
Change-Id: I115dc231a9156a5bceacaa21d6242bb934fbbd24
Related-Change: I3b2196fdef9936f1c7d468f9c7c9b9246d3d26fd
Related-Change: I6cbbfd7260571f42ea65c6622aa6b410a0e43b28
This prevents version conflicts when Keystone drags in a too-new
oslo.policy, which blackballs latest requests (but Sphinx would try to
pull it in anyway).
Change-Id: I3b2196fdef9936f1c7d468f9c7c9b9246d3d26fd
After running "tox -e s3tests_tempauth", there are python files from
ceph-tests in swift3/test/functional/scratch directory that fail flake8
so we should just ignore the scratch directory.
Change-Id: I7f0e89c4da7590d5929b2f65a81fc6ddeb0ffe37
Apparently long names cause issues when the job is running in the gate?
Change-Id: I4b9def2ce867580fb0f5b6b64818eef6d65b7a43
Related-Change: I80a7a32a415c27ac9de9d72591ed293ac8546cba
Add a bindep.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 self-testing.
For bindep.txt see also
http://docs.openstack.org/infra/manual/drivers.html#package-requirements
[*] http://docs.openstack.org/infra/bindep/
Change-Id: I736a4e68ab376e64b5f5adf8406c396a631799ee
The combination of select and ignore options doesn't do what we want,
anyway. Now, we won't regress on a number of issues, like H234, H235,
and E127.
Also added H237 to ignore list, as we currently trip
module multifile is removed in Python 3
... in test/functional/test_object.py
Change-Id: Id746552bc024e726e29105c077057e46e248a0a8
Related-Change: I41d63b9467083d7606ad18aaa398ca7738b27fae
The reason we need to support Mitaka release is to support
Amazon signature v4 staff. This includes a part of sig v4 patch
to enable recent keystone to work well.
Change-Id: I24c0c31f6b02f3832979f29539402f875e73f046
Python 2.6 support would be dropped by
Infra team from mitaka,CI would no longer be testing it,
so projects should drop it too.
Change-Id: Ifdf6a79c5ce4b7e2103daa3ffd3216fbf2a0d18e
...similar to what's been done but not released in stable/kilo Swift.
See also: I4314c31ae80364c3497b6d71f1a180a8cceba9d1 (requirements change)
See also: Ic09f5245b51e1aba2c4ea549126bdb51886ed36c (Swift change)
Change-Id: Iba35074c8f67a5bc41feccd794f30285ec5e7741
This is prep for making new testing environment with
master branch of Swift. Currently, we tests just for stable
version because Swift master branch doesn't care our third
party middleware. However, Swift3 seems being major stuff
for some companies.
In my consideration, I hope this tox will be just a notification
(i.e. non-voting) for Swift and Swift3 when making a new patch.
Change-Id: I4c667a56967f10d4c129fbd8165372b0976fa853
Previously, the gate tests used a version of keystone that didn't have a
cap on oslo.config. This led to gate checks failing because they pulled
in a version of oslo.config that broke backward compatibility. Even if
we updated within icehouse, the last oslo.messaging does not include a
cap on oslo.utils, which *also* broke backwards compatibility.
Now, we'll install the most recently released version of keystone,
updating some testing and example config along the way.
Change-Id: Id357975413094bab751c5b8549d9201e9232af7f
Currently, functional tests when s3acl is effective does not exist.
So, this patch add environment of functional tests for s3acl to tox.
Fix test_object.py because it is not pass the test for the following bug.
https://bugs.launchpad.net/swift3/+bug/1433391
Change-Id: I21e15d3cb74c5752daaeae2587c1123c46aa52d6
The Swift 2.1.0 includes the header capitalization patch
https://review.openstack.org/93780/, which is required for Swift3.
Let's use the version for development.
Change-Id: I2b49ca8362234e1d74f44cdb90ccb551fb31fc45
Swift3 doesn't support a non-ascii string because
the lxml library handles it as unicode, which Swift
doesn't expect. This patch introduces a wrapper Element
class which handles its text property as a utf8 string.
Change-Id: Ie4add6ca3d678400306d2404e2e1ee447ad54755
This removes unnecessary dependency from deps list because
all tests except keystone don't require keystone package.
Change-Id: I67cb4b74782e565082c1fc1ebab6f5fe6204a38b
There some features we can make use of in Swift 2.0:
- HEAD requests support if-modified and if-unmodified headers.
- PUT requests support if-none-match headers. It can be used for copy
requests.
Let's hack with the latest Swift!
Change-Id: I29c6c42513b4387919f954c478cdd8f35280fd83
This patch adds an xfstests-style functional test suite. Run "tox -e tempauth"
to test swift3 with TempAuth, and "tox -e keystone" to test with the Keystone
auth system. You don't need to prepare Swift and Keystone system for that.
They will be started with minimum configuration automatically.
If you already have a Swift cluster for the functional test, run "./check" in
the test directory directly. Individual tests can be run using "./check 003",
and various other options are also supported. Try "./check -h" for more
information.
I added some sample test cases but they are not enough at all obviously. More
tests will be added soon.
Change-Id: I75abce574768abbe88f60d8c1eee87757651e357