Define Do function for Gitlab net client
In future, we'll need to perform http requests for Geo related code area: !716 (merged)
We cannot use retryable requests because:
- It's not necessary for them to be retryable
- In order to retry, the whole request body is stored in RAM, while we need to stream large blobs of data
This MR:
- Extracts logging into a separate round tripper in order to reuse it for other http requests by default
- Defines Do function that accepts raw request as an argument
Edited by Igor Drozdov