TT-12072 Configure Splunk client to use proxy from environment #818
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR resolves issue #816 by configuring the Splunk client to use proxy settings from the environment.
Description
I set the proxy to
http.ProxyFromEnvironment
when initializing the Splunk client transport.Related Issue
Motivation and Context
Support for HTTP_PROXY environment variables is required when running Tyk Pump in restricted environments that require all HTTP traffic to go through a proxy.
How This Has Been Tested
I included a unit test that verifies the proxy is not nil after initializing a Splunk client. I attempted to fully test the functionality by setting the HTTP_PROXY environment variable, but this caused other Splunk tests to fail. Since this fix leverages existing functionality from
http.ProxyFromEnvironment
, I don't think it's necessary to have end-to-end test coverage.Technically one could set Proxy to something other than ProxyFromEnvironment and the test would pass so this is a gap. It would be ideal to verify the function pointers are the same, but I couldn't get it to work. I'm open to feedback on how to better handle this test.
Screenshots (if appropriate)
Not applicable.
Types of changes
Checklist
fork, don't request your
master
!master
branch (left side). Also, you should startyour branch off our latest
master
.go mod tidy && go mod vendor
go fmt -s
go vet