
The lxml XML toolkit is a binding for the C libraries libxml2 and libxslt. It is compatible with ElementTree API, which is more pythonic than the DOM interface. In addition, lxml has attractive features like XML validation and namespace mapping. Replacing the current DOM interface with the lxml API will simplify Swift3 code a lot and improve maintainability, I believe. Change-Id: Ie2291f180421559ed3320a173d2f7eea81f459d9
Swift3
Swift3 Middleware for OpenStack Swift, allowing access to OpenStack swift via the Amazon S3 API.
Install
-
Install Swift3 with
sudo python setup.py install
orsudo python setup.py develop
or via whatever packaging system you may be using. -
Alter your proxy-server.conf pipeline to have swift3:
If you use tempauth:
Was::
[pipeline:main]
pipeline = catch_errors cache tempauth proxy-server
Change To::
[pipeline:main]
pipeline = catch_errors cache swift3 tempauth proxy-server
If you use keystone:
Was::
[pipeline:main]
pipeline = catch_errors cache authtoken keystone proxy-server
Change To::
[pipeline:main]
pipeline = catch_errors cache swift3 s3token authtoken keystone proxy-server
-
Add to your proxy-server.conf the section for the Swift3 WSGI filter::
[filter:swift3] use = egg:swift3#swift3
You also need to add the following if you use keystone (adjust port, host, protocol configurations for your environment):
[filter:s3token]
paste.filter_factory = keystone.middleware.s3_token:filter_factory
auth_port = 35357
auth_host = 127.0.0.1
auth_protocol = http
Description
Swift3 Middleware for OpenStack Swift, allowing access to OpenStack swift via the Amazon S3 API.
Languages
Python
99.3%
Shell
0.7%