New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix backup S3 API compatibility #914

Merged
merged 11 commits into from Nov 13, 2018

Conversation

Projects
None yet
2 participants
@satherton
Copy link
Contributor

satherton commented Nov 13, 2018

XML responses to blob HTTP requests are now supported and required (as indicated by the Accept: header). Date format in header is now ISO 8601 as per S3 documentation. Bucket used for backup data is now configurable via a URL parameter called "bucket".

This has been tested with minio.

satherton added some commits Nov 13, 2018

Blobstore client now sends HTTP requests with a header indicating tha…
…t only XML responses are accepted. JSON responses are no longer supported and xml2json has been removed. The request Date header format is now the standard ISO 8601 format indicated by the S3 documentation.
Compatibility fix. RapidXML's "find first node with a specific name" …
…functionality will not return a root node of a document which has the required name but also specifies an xmlns attribute. Minio specifies an xmlns attribute (of a defunct namespace at a dead link at Amazon) so its responses were not being parsed successfully.
BackupContainerBlobStore no longer uses a hardcoded bucket name. Blob…
…StoreEndpoint creating from a URL string now supports having additional parameters in the URL which it does not consume but rather returns to the caller, and BackupContainerBlobStore uses this to accept a "bucket" parameter.

@satherton satherton requested a review from bnamasivayam Nov 13, 2018

@satherton satherton referenced this pull request Nov 13, 2018

Closed

Backup to "blobstore" #255

@etschannen etschannen merged commit b6cac2a into apple:release-6.0 Nov 13, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment