Rewrite object versioning as middleware to simplify the PUT method in the object controller. The functionality remains basically the same with the only major difference being the ability to now version slo manifest files. dlo manifests are still not supported as part of this patch. Co-Authored-By: Clay Gerrard <clay.gerrard@gmail.com> DocImpact Change-Id: Ie899290b3312e201979eafefb253d1a60b65b837 Signed-off-by: Thiago da Silva <thiago@redhat.com> Signed-off-by: Prashanth Pai <ppai@redhat.com>
4.1 KiB
Middleware
Account Quotas
swift.common.middleware.account_quotas
Bulk Operations (Delete and Archive Auto Extraction)
swift.common.middleware.bulk
CatchErrors
swift.common.middleware.catch_errors
CNAME Lookup
swift.common.middleware.cname_lookup
Container Quotas
swift.common.middleware.container_quotas
Container Sync Middleware
swift.common.middleware.container_sync
Cross Domain Policies
swift.common.middleware.crossdomain
Discoverability
Swift will by default provide clients with an interface providing
details about the installation. Unless disabled (i.e
expose_info=false
in proxy-server-config
), a GET request to
/info
will return configuration data in JSON format. An
example response:
{"swift": {"version": "1.11.0"}, "staticweb": {}, "tempurl": {}}
This would signify to the client that swift version 1.11.0 is running and that staticweb and tempurl are available in this installation.
There may be administrator-only information available via
/info
. To retrieve it, one must use an HMAC-signed request,
similar to TempURL. The signature may be produced like so:
swift-temp-url GET 3600 /info secret 2>/dev/null | sed s/temp_url/swiftinfo/g
Domain Remap
swift.common.middleware.domain_remap
Dynamic Large Objects
swift.common.middleware.dlo
FormPost
swift.common.middleware.formpost
GateKeeper
swift.common.middleware.gatekeeper
Healthcheck
swift.common.middleware.healthcheck
KeystoneAuth
swift.common.middleware.keystoneauth
List Endpoints
swift.common.middleware.list_endpoints
Memcache
swift.common.middleware.memcache
Name Check (Forbidden Character Filter)
swift.common.middleware.name_check
Object Versioning
swift.common.middleware.versioned_writes
Proxy Logging
swift.common.middleware.proxy_logging
Ratelimit
swift.common.middleware.ratelimit
Recon
swift.common.middleware.recon
Static Large Objects
swift.common.middleware.slo
StaticWeb
swift.common.middleware.staticweb
TempAuth
swift.common.middleware.tempauth
TempURL
swift.common.middleware.tempurl
XProfile
swift.common.middleware.xprofile