Write HTTP Tape REST compliance tests for CI
HTTP is in production at CERN and we need to catch EOS regressions in our CI before we push an EOS version that contains a regression for HTTP in main branch.
We do not want to deploy this at CERN, nor do we want external sites to break their production because of a regression.
Notably this regression in EOS: HTTP REST TAPE API public urls not accessible anymore without authentication EOS-5557.
http:///.well-known/wlcg-tape-rest-api must be accessed without any authentication as defined in the Tape REST API specs.
Basically this affects recent eos versions and we need to check that the eos version in CI has no issue like that.
Proposed test
- Get the well-known without authentication using curl, extract the Tape REST API URL out of this and various information that should be there according to Tape REST API specs: https://github.com/wlcg-storage/wlcg-tape-rest-api
- archive, then retrieve a file using token with curl?
This second part can be done with GFAL maybe? Having something more verbose than just GFAL (based on curl?) would be useful so that from a CI run we can immediately report the exact regression to EOS.