GeorgeJahad opened a new pull request #2482:
URL: https://github.com/apache/ozone/pull/2482


   ## What changes were proposed in this pull request?
   
   
   The current s3 compatibility script is incomplete, (it doesn't include all 
of the acceptance tests currently run against the s3 gateway.)
   
   This PR adds the rest of the s3 acceptance tests, except the s3/webui.robot 
test, (which is specific to our s3 gateway's webui).
   
   In addition, I fixed the tests failing on AWS.  The main problem was 
collisions with bucket names in AWS.  (AWS bucket names are global so names in 
one account can collide with ones in other accounts.)
   
   I fixed them by adding a random suffix to test-bucket names that were 
insufficiently random.
   
   One remaining discrepancy requires modification of our gateway code.  It 
will be fixed in a separate PR, described here:
   https://issues.apache.org/jira/browse/HDDS-5523
   
   **The other changes in this PR are:**
   
   1. I modified the Boto3-client-test to work outside of the docker 
environment, (so it can work with AWS.)
   
   2.  Fixed the create bucket test that checks the URI returned.
   
   **Relatve vs Absolute URI's/Jersey Config**
   It turns out there is a difference between the URI's returned by the 
CreateBucket command.  AWS returns the relative URI, while we return the 
absolute URI.  For example, AWS returns this: "/bucket-81253", while we return 
this: "http://s3g:9878/bucket-81253";.
   
   Our code does return relative URI's, but the Jersey servlet container that 
we use converts them to absolute.
   
   Jersey has a config option to disable that, but it is a global config 
option.  So that may change other things in addition to the create bucket 
command.  I was uncomfortable making such a potentially wide ranging change for 
a relatively minor problem.
   
   So instead I just modified the test to only look for the bucket and not both 
the bucket and the endpoint.  But that means the json returned by our 
create-bucket command will always be a different that that from AWS. 
   
   Let me know if you think I need to pursue this further.  This is the jersey 
option for future reference:
   
   jersey.config.server.headers.location.relative.resolution.disabled
   
   
   ## What is the link to the Apache JIRA
   
   https://issues.apache.org/jira/browse/HDDS-5458
   
   ## How was this patch tested?
   acceptance tests


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]



---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to