4f9595f1130f6c45f8e3e08db55dddc31844be93
8273 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
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 |
||
|
Zuul
|
2be7dcd850 | Merge "Modify the version path URL of the configuration file" | ||
|
Zuul
|
854a72facf | Merge "S3Api: handle non-ASCII markers in v1 listings." | ||
|
Zuul
|
769c0fb7fb | Merge "Rework private-request-method interface" | ||
|
Zuul
|
657b022689 | Merge "py3: port diskfile" | ||
|
Zuul
|
5a42544bed | Merge "Clean up test_write_read_metadata" | ||
|
Zuul
|
36648cd2e2 | Merge "Add more tests for async expirer" | ||
|
Zuul
|
a4159b7501 | Merge "Add operator tool to async-delete some or all objects in a container" | ||
|
Zuul
|
f83072fd20 | Merge "Specify pickle protocol in REPLICATE()" | ||
|
zengjia
|
2c4f284055 |
Modify the version path URL of the configuration file
In the main branch, I think it is necessary to modify the configuration file path in the document as the main branch path, and to change the path to a stable version when the version is released. Change-Id: Ib1bc4c59ed4c7624782b8b1cdea20847c14c90bf |
||
|
Tim Burke
|
ff04ef05cd |
Rework private-request-method interface
Instead of taking a X-Backend-Allow-Method that *must match* the REQUEST_METHOD, take a truish X-Backend-Allow-Private-Methods and expand the set of allowed methods. This allows us to also expose the full list of available private methods when returning a 405. Drive-By: make async-delete tests a little more robust: * check that end_marker and prefix are preserved on subsequent listings * check that objects with a leading slash are correctly handled Change-Id: I5542623f16e0b5a0d728a6706343809e50743f73 |
||
|
Clay Gerrard
|
04c8015b88 |
Add more tests for async expirer
Related-Change-Id: Ia13ee5da3d1b5c536eccaadc7a6fdcd997374443 Change-Id: Ic70eb61b32b196d356c9a3b40a22807456c7b0f2 |
||
|
Zuul
|
1adde2fba5 | Merge "Controller install Debian missing proxy-server.conf configuration" | ||
|
Tim Burke
|
40bd9f16a3 |
py3: port diskfile
Change-Id: Ie73f9df460f9014014168d6e60767e66b24d30b0 |
||
|
Tim Burke
|
8868e2cd50 |
Clean up test_write_read_metadata
I'm pretty sure I botched the intent of the test when I touched it in https://github.com/openstack/swift/commit/36c4297 As a side-effect, clean up a warning on py2: UnicodeWarning: Unicode equal comparison failed to convert both arguments to Unicode - interpreting them as being unequal Change-Id: I4da8264f85e688bc5109016c197378ca6dfe06a5 |
||
|
Tim Burke
|
83d0161991 |
Add operator tool to async-delete some or all objects in a container
Adds a tool, swift-container-deleter, that takes an account/container and optional prefix, marker, and/or end-marker; spins up an internal client; makes listing requests against the container; and pushes the found objects into the object-expirer queue with a special application/async-deleted content-type. In order to do this enqueuing efficiently, a new internal-to-the-cluster container method is introduced: UPDATE. It takes a JSON list of object entries and runs them through merge_items. The object-expirer is updated to look for work items with this content-type and skip the X-If-Deleted-At check that it would normally do. Note that the target-container's listing will continue to show the objects until data is actually deleted, bypassing some of the concerns raised in the related change about clearing out a container entirely and then deleting it. Change-Id: Ia13ee5da3d1b5c536eccaadc7a6fdcd997374443 Related-Change: I50e403dee75585fc1ff2bb385d6b2d2f13653cf8 |
||
|
Alexandre Lécuyer
|
4927b1f29c |
Specify pickle protocol in REPLICATE()
The default pickle protocol in python3 is version 3. This is not readable by a python2 interpreter. Force the use of version 2 in the object server REPLICATE() function, for compatibility with python 2. Change-Id: I19d23570ff3a084d288de1308e059cfd8134d6ad |
||
|
zengjia
|
61a4567a8d |
Controller install Debian missing proxy-server.conf configuration
Missing proxy-server.conf configuration document for installing control nodes in Debian Change-Id: I174ba8841ed638732bcf933602c25aad8e62f0ca |
||
|
Zuul
|
b4c8cf192a | Merge "Fix quarantine when object path is not a directory" | ||
|
Zuul
|
720979e3f1 | Merge "py3: port expirer" | ||
|
Zuul
|
5be0e9ff09 | Merge "Start transition to boto3 in s3api tests." | ||
|
Zuul
|
aac771875b | Merge "Make test_read_write_acl_listings more robust" | ||
|
Alexandre Lécuyer
|
6008b0a83f |
Fix quarantine when object path is not a directory
In the diskfile module, there are a couple of cases where we would quarantine the suffix dir if a single object within is not a directory. Change the code so that we quarantine only the object. Change-Id: I35eb16f568c00d973eb089aedd0e5a5619c25a2f |
||
|
Timur Alperovich
|
d4e7940457 |
Start transition to boto3 in s3api tests.
Adds the scaffolding required for tests to use boto3 and converts the test_bucket.py tests to the new interface. Follow on patches will convert the other tests to use the boto3 library. Notable changes: we no longer try to reach for the equivalent of `boto.make_request()` and instead rely on the boto3/botocore event system to mutate requests as necessary (or to disable pre-flight validators). Partial-Bug: 1557260 Change-Id: I3d77ef4a6b878c49ebfa0c8b8647d7199d87601e |
||
|
Zuul
|
aa4bc848c1 | Merge "Add py37 func test job" | ||
|
Zuul
|
f17b9d2e24 | Merge "Be explicit that a code path is just for py2" | ||
|
Zuul
|
72a0115514 | Merge "Get functional/tests.py running under py3" | ||
|
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 |
||
|
Zuul
|
f1a0eccab9 | Merge "py3: bulk -- alternate approach" | ||
|
Zuul
|
f1e2a21efe | Merge "Wait longer for log lines in unit test" | ||
|
Tim Burke
|
ad034023f3 |
Be explicit that a code path is just for py2
Change-Id: I7d0345a712f71e76034910fa7bb2bbaf42b4d2ff |
||
|
Zuul
|
b38dd29a97 | Merge "Make build/upload/promote image jobs non-voting" | ||
|
Zuul
|
3b76c717aa | Merge "Set Content-Type with s3api metadata updates." | ||
|
Tim Burke
|
add5a411ac |
Make build/upload/promote image jobs non-voting
Change-Id: If284513ead5ff0d7f9e997ebf2a8820c9acf79e3 |
||
|
Tim Burke
|
bec2cccd43 |
py3: port expirer
Change-Id: Ib5aeda94fe9b165f54ad7412d68d71b62e427a40 |
||
|
Timur Alperovich
|
8b64381371 |
Set Content-Type with s3api metadata updates.
S3 supports two metadata operations on object copy: COPY and REPLACE. When using REPLACE, the Content-Type should be set to the one supplied by the caller. When using COPY, the existing object's Content-Type value is used. Change-Id: Ic7c6278dedef308c9219eb45751abfa5655f144f Closes-Bug: #1828907 |
||
|
Tim Burke
|
5cd2a2ac2f |
py3: bulk -- alternate approach
Related-Change: I3603247e0c36299de2107aa8e494a3f87647696f Change-Id: Iaf14c1ab3e236e6774492ed711fccef066a16fca |
||
|
Tim Burke
|
51e415b749 |
py3: port proxy/test_mem_server.py
This finishes the proxy unit tests. Change-Id: I2452e4e4dabef071bfbf376d03ec63211f7c2906 |
||
|
Tim Burke
|
8b3d0a6c64 |
py3: finish porting proxy/test_server.py
Change-Id: I8287db75b4f19581203360c646e72f64fe45f170 |
||
|
Tim Burke
|
4f4456561f |
Add py37 func test job
Make a new func-py3 tox env that will use whatever version of py3 is available, and set up a new check/gate job that runs it under py37. Change-Id: I1ef233276697be994494ed858e88ce97634f814e |
||
|
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 |
||
|
Tim Burke
|
259224f009 |
py3: port unit/proxy/test_server.py
All except the versioned_writes tests, which are hairy. Change-Id: Ieb54869f93a70c8887d33bd2ad46cf04a190d896 |
||
|
Timur Alperovich
|
dade632b0f |
S3Api: handle non-ASCII markers in v1 listings.
Added a test for S3 v1 listings that use URL encoding and have non-ASCII characters. In the process discovered that the XML schema for ListBucketResult had a small problem: Delimiter and EncodingType needed to be reordered. Change-Id: Ib3124ea079a73a577b86de97657603a64b16f965 |
||
|
Thiago da Silva
|
032cf3b3b4 |
Update docker secret.
Removed trailing newline Change-Id: I8b100b8213d6efde67b0452ce988bc47c830a2e2 |
||
|
Zuul
|
4343c253e4 | Merge "Add Dockerfile to build a SAIO container image" | ||
|
Zuul
|
e85dda286e | Merge "Require logger passed to broker in unit tests for account-reaper" | ||
|
Thiago da Silva
|
37e257913c |
Add Dockerfile to build a SAIO container image
Added Dockerfile and configuration files under the new `docker` directory to build a Swift All in One container image. The primary goal of this container image is to provide application developers with a Swift/S3 endpoint that can be tested against during the development cycle. Added Zuul jobs to build docker container Change-Id: Ib10975a1862a4fa8c4eeaba139837cf1f22b272a |
||
|
Zuul
|
4473fd9ba1 | Merge "py3: port unit/proxy/test_sysmeta.py" | ||
|
Zuul
|
f9898ec8f3 | Merge "[Trivial fix]Remove unnecessary slash" | ||
|
Takashi Kajinami
|
211cf3983c |
Require logger passed to broker in unit tests for account-reaper
This patch removes default value for logger passed to faked BrokerClass in some unit tests for account reaper, to make sure that a logger instance is properly passed when generation BrokerClass instance. This patch also removes unnecessory parameter, which is added to confirm logger passed to broker, but is not useful in fact. NOTE: This patch is a follow-up of my previous commit[1] [1] https://review.opendev.org/#/c/295875/ Change-Id: Ica10e3ac42375c2dc141478e647408df90028ae9 |