51a587ed8dd5700b558ad26d70dcb7facc0f91e4
Commit Graph

243 Commits

Author SHA1 Message Date
Thiago da Silva
20c6bdb71c Enable s3api and staticweb tests across all func tests
This patch removed the separate s3api, staticweb functional tests
gate jobs and added them across all other functional test jobs.
Change-Id: Ie1c606132a054defc2b3cc14a66031090e7b8449
2020年06月01日 19:16:48 -07:00
Tim Burke
0fd23ee546 Fix pep8 job
New flake8 came out with new & improved rules. Ignore E741; it would be
too much churn. Fix the rest.
Change-Id: I9125c8c53423232309a75cbcc5b695b378864c1b
2020年05月13日 00:24:13 -07:00
Sean McGinnis
0f2da2aee6 Use local py2 upper-constraints
The global upper constraints repo will no longer track py2 packages,
meaning upper constraints for the py2.7 runtime will need to be handled
locally.
This adds an in-repo file for upper constraints enforcement using the
last py27 constraints from openstack/requirements to validate
functionality.
Change-Id: I624f914c6155178cbe474f1eae2871e2aef721eb
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
2020年05月04日 07:03:53 -05:00
Tim Burke
668242c422 pep8: Turn on E305
Change-Id: Ia968ec7375ab346a2155769a46e74ce694a57fc2
2020年04月03日 21:22:38 +02:00
Andreas Jaeger
96b56519bf Update hacking for Python3
The repo is Python using both Python 2 and 3 now, so update hacking to
version 2.0 which supports Python 2 and 3. Note that latest hacking
release 3.0 only supports version 3.
Fix problems found.
Remove hacking and friends from lower-constraints, they are not needed
for installation.
Change-Id: I9bd913ee1b32ba1566c420973723296766d1812f
2020年04月03日 21:21:07 +02:00
Zuul
9fa0b211a9 Merge "Seamlessly reload servers with SIGUSR1" 2019年11月14日 20:34:48 +00:00
Darrell Bishop
1107f24179 Seamlessly reload servers with SIGUSR1
Swift servers can now be seamlessly reloaded by sending them a SIGUSR1
(instead of a SIGHUP). The server forks off a synchronized child to
wait to close the old listen socket(s) until the new server has started
up and bound its listen socket(s). The new server is exec'ed from the
old one so its PID doesn't change. This makes Systemd happier, so a
ReloadExec= stanza can now be used.
The seamless part means that incoming connections will alwyas get
accepted either by the old server or the new one. This eliminates
client-perceived "downtime" during server reloads, while allowing the
server to fully reload, re-reading configuration, becoming a fresh
Python interpreter instance, etc. The SO_REUSEPORT socket option has
already been getting used, so nothing had to change there.
This patch also includes a non-invasive fix for a current eventlet bug;
see https://github.com/eventlet/eventlet/pull/590
That bug prevents a SIGHUP "reload" from properly servicing existing
requests before old worker processes close sockets and exit. The
existing probtests missed this, but the new ones, in this patch, caught
it.
New probe tests cover both old SIGHUP "reload" behavior as well as the
new SIGUSR1 seamless reload behavior.
Change-Id: I3e5229d2fb04be67e53533ff65b0870038accbb7
2019年11月07日 10:15:26 -08:00
Zuul
23e1dba532 Merge "Make our py2 func tests more explicitly py2" 2019年11月05日 09:47:24 +00:00
Tim Burke
c512574e11 Make our py2 func tests more explicitly py2
...because otherwise, I think they might be running under py3 right now.
Change-Id: I96ad9e5ed87a7e08d06e889233730cec476d3af7
2019年11月05日 02:33:36 +00:00
Thiago da Silva
281ffab2a5 pin lower-constraints to run against python 2.7
Change-Id: I5c856012a04ef8f910c28b0248ea7bcda47e4816
2019年11月01日 19:08:01 +02:00
Zuul
52484bc7f9 Merge "PDF Documentation Build tox target" 2019年10月04日 06:47:08 +00:00
Matthew Oliver
0217b12b6d PDF Documentation Build tox target
This patch adds a `pdf-docs` tox target that will build
PDF versions of our docs. As per the Train community goal:
 https://governance.openstack.org/tc/goals/selected/train/pdf-doc-generation.html
Add sphinxcontrib-svg2pdfconverter to doc/requirements.txt
to convert our SVGs.
Story: 2006122
Task: 35515
Change-Id: I26cefda80d3234df68d7152b404e0a71da74ab90
2019年10月01日 15:47:11 -07:00
Zuul
d103de57a2 Merge "Update the constraints url" 2019年09月20日 01:50:18 +00:00
Tim Burke
74db367060 py3: Finish porting func tests
We were (indirectly) importing swiftclient (and therefore requests and
urllib3) before doing our eventlet monkey-patching. This would lead
boto3 (which digs an SSLContext out of urllib3) to trip RecursionErrors
on py3 similar to
 >>> from ssl import SSLContext, PROTOCOL_SSLv23
 >>> import eventlet
 >>> eventlet.monkey_patch(socket=True)
 >>> SSLContext(PROTOCOL_SSLv23).options |= 0
 Traceback (most recent call last):
 File "<stdin>", line 1, in <module>
 File "/usr/lib/python3.6/ssl.py", line 465, in options
 super(SSLContext, SSLContext).options.__set__(self, value)
 File "/usr/lib/python3.6/ssl.py", line 465, in options
 super(SSLContext, SSLContext).options.__set__(self, value)
 File "/usr/lib/python3.6/ssl.py", line 465, in options
 super(SSLContext, SSLContext).options.__set__(self, value)
 [Previous line repeated 330 more times]
 RecursionError: maximum recursion depth exceeded while calling a Python object
Change-Id: I4bb59edd87336597791416c4f2a096efe0e72fe3
2019年08月16日 20:34:16 -07:00
Zuul
9b4b57a880 Merge "py3: port SLO func tests" 2019年08月17日 03:19:22 +00:00
Tim Burke
7f42309a33 py3: Cover account/container func tests
Change-Id: I9a754f1eb06debbe16800a05fc8e969af2f89043
2019年08月16日 10:51:55 -07:00
Zuul
2a54619609 Merge "py3: port dlo func tests" 2019年08月16日 13:48:41 +00:00
Zuul
8083255e34 Merge "py3: mostly port s3 func tests" 2019年08月15日 01:10:29 +00:00
Tim Burke
227fe30251 py3: port test/functional/test_versioned_writes.py
Change-Id: I8c2517599a6d1cdf68050dc7acb039f09875fd53
2019年08月09日 22:04:55 -05:00
Tim Burke
f05119c16f py3: mostly port s3 func tests
test_bucket.py is proving somewhat problematic.
Change-Id: I5b337ef66a23fc989762801dd6a5ba1ed903f57b
2019年08月09日 16:09:55 -07:00
Zuul
96ece6e18e Merge "py3: Add swift-tox-func-encryption-py37 gate job" 2019年08月09日 08:19:36 +00:00
Tim Burke
7c74dbd255 py3: port dlo func tests
Drive-by: fix an issue where tf.config wasn't initialized when we decide
whether to skip test_dlo_referer_on_segment_container.
Change-Id: Iad8b3ab40dccb23847cde5c09f55627da0963fe0
2019年08月07日 16:23:59 -07:00
Tim Burke
2c727f65ff py3: Add swift-tox-func-encryption-py37 gate job
Change-Id: Ia9ae0fc226dfc9b40157faebac100c10a9180c62
2019年08月06日 13:56:47 -07:00
Tim Burke
2e4c8a924e py3: port RBAC func tests
Yes, it really is just the import.
Change-Id: Id7e2891b6600af102176eaa2e87f81b528adde8d
2019年08月05日 14:47:51 -07:00
Andreas Jaeger
73ec8f15df Update api-ref location
The api documentation is now published on docs.openstack.org instead
of developer.openstack.org. Update all links that are changed to the
new location.
Note that the Swift API lives at /object-store and not /object-storage.
Note that redirects will be set up as well but let's point now to the
new location.
For details, see:
http://lists.openstack.org/pipermail/openstack-discuss/2019-July/007828.html
Change-Id: Ie38357e4c278335c35d186708573bb6bdabaa012
2019年07月22日 19:17:55 +02:00
Tim Burke
a48104c545 py3: port SLO func tests
Drive-by: remove some py2/py3 code branches where encoding/decoding
should always succeed.
Change-Id: Iabfa157f2b20e6fd650a441e9c0f6163478ce147
2019年07月22日 15:02:37 +01:00
Tim Burke
2926fc96a3 py3: Bring functional/test_object.py under test; add func-ec-py37 job
Change-Id: I2929ce1f8e08ae5b4059605d09189c8521852423
2019年07月18日 14:04:39 -07:00
Tim Burke
9d1b749740 py3: port staticweb and domain_remap func tests
Drive-by: Tighten domain_remap assertions on listings, which required
that we fix proxy pipeline placement. Add a note about it to the sample
config.
Change-Id: I41835148051294088a2c0fb4ed4e7a7b61273e5f
2019年07月10日 09:51:38 -07:00
pengyuesheng
03512e001d Update the constraints url
For more detail, see http://lists.openstack.org/pipermail/openstack-discuss/2019-May/006478.html
Change-Id: I95114c4aa670c07491d5a15db2341f65cb0d1344
2019年07月03日 15:06:34 +08:00
Matthew Oliver
9f1ef35630 py3: Port the tempurl middleware
This patch ports the tempurl middleware over to PY3. We use
an "all-native" string model, where we convert WSGI strings
as soon as we see them. It helps to deal with HMAC.
Aaand, we fix formpost along the way. It _clearly_ was
doing a wrong thing, encoding the same body several times
if we had several keys. On py2 it wasn't noticeable, but
on py3 this breaks, because the bytes type cannot be encoded
again.
Change-Id: I69974cc8a39731c980b54137b799a36b2e63a44a
2019年06月20日 12:41:50 -07:00
Zuul
d44a581cdd Merge "py3: port the test of locale" 2019年06月20日 19:19:57 +00:00
Zuul
38e79890d1 Merge "Stop manually installing eventlet for our py3 tests" 2019年06月20日 19:19:46 +00:00
Pete Zaitcev
a57085edc9 py3: port the test of locale
We needed to change the sample translation a little, because
Python 3 requires encoding metadata.
We also remove workarounds for a specific bug in the subprocess
module, which were needed on Python 2.6 only.
Change-Id: Ie7791297cab16a649880088fa9eae6b4f95855f7
2019年06月19日 09:54:14 -07:00
Tim Burke
6374734d7d Stop manually installing eventlet for our py3 tests
0.25.0 is now included in upper-constraints.txt
Related-Change: I04be480829eaf67ce328b2e7f7d7e2f70aaed90e
Change-Id: I5b8ecd82d6915d0e1cb216c423bbcc75c50a6f3d
2019年06月17日 13:22:11 -07:00
Tim Burke
e8e7106d14 py3: port obj/reconstructor tests
All of the swift changes we needed for this were already done elsewhere.
Change-Id: Ib2c26fdf7bd36ed1cccd5dbd1fa208f912f4d8d5
2019年06月10日 08:31:41 -07:00
Zuul
05bfaf7ae1 Merge "py3: port ssync" 2019年06月06日 06:02:12 +00:00
Tim Burke
d9cafca246 py3: port ssync
Change-Id: I63a502be13f5dcda2a457d38f2fc5f1ca469d562
2019年06月05日 13:26:18 -07:00
Tim Burke
2e35376c6d py3: symlink follow-up
- Have the unit tests use WSGI strings, like a real system.
- Port the func tests.
Change-Id: I3a6f409208de45ebf9f55f7f59e4fe6ac6fbe163
2019年05月30日 16:25:17 -07:00
Matthew Oliver
4f9595f113 py3: port symlink middleware
This patch ports the symlink middleware to py3.
The middleware itself seems to be mostly fine and most changes
are in the symlink unit tests.
Change-Id: I973c2e1bb8969cf6bffece8ce68881c393efbaef
2019年05月30日 11:44:42 -07:00
Tim Burke
40bd9f16a3 py3: port diskfile
Change-Id: Ie73f9df460f9014014168d6e60767e66b24d30b0
2019年05月22日 13:25:54 -07:00
Zuul
720979e3f1 Merge "py3: port expirer" 2019年05月22日 05:59:41 +00:00
Zuul
72a0115514 Merge "Get functional/tests.py running under py3" 2019年05月18日 07:33:03 +00:00
Pete Zaitcev
bd8c3067b4 py3: slo
This adds wsgi_to_str(self.path_info) everywhere we forgot it,
not only in the slo module itself.
Dropping the body=''.join(body) after call_slo() is obvious:
the latter only returns strings of bytes, not lists of such.
Change-Id: I6b4d87e4cda4945bc128dbc9c1edd39e736a59d2
2019年05月17日 17:57:23 -05:00
Zuul
f1a0eccab9 Merge "py3: bulk -- alternate approach" 2019年05月17日 22:49:10 +00:00
Tim Burke
bec2cccd43 py3: port expirer
Change-Id: Ib5aeda94fe9b165f54ad7412d68d71b62e427a40
2019年05月14日 17:10:54 -07:00
Tim Burke
5cd2a2ac2f py3: bulk -- alternate approach
Related-Change: I3603247e0c36299de2107aa8e494a3f87647696f
Change-Id: Iaf14c1ab3e236e6774492ed711fccef066a16fca
2019年05月13日 20:08:50 -05:00
Tim Burke
51e415b749 py3: port proxy/test_mem_server.py
This finishes the proxy unit tests.
Change-Id: I2452e4e4dabef071bfbf376d03ec63211f7c2906
2019年05月08日 17:47:40 -07:00
Tim Burke
8b3d0a6c64 py3: finish porting proxy/test_server.py
Change-Id: I8287db75b4f19581203360c646e72f64fe45f170
2019年05月08日 17:47:40 -07:00
Tim Burke
506279235d Get functional/tests.py running under py3
Note that you need a pretty recent eventlet to pick up
https://github.com/eventlet/eventlet/commit/f0bc79e
Change-Id: I6b006b972e7431c406039f4e0f6890a8f74a4432
2019年05月08日 17:44:03 -07:00
Tim Burke
767872210f py3: port unit/proxy/test_sysmeta.py
Change-Id: I378705a8d9ad51dbfa85287d44e6313aa7680c23
2019年05月05日 05:06:54 +00:00