Fill out the template below. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.
The pull request must only fix one issue at the time.
The pull request must update the test suite to demonstrate the changed functionality.
After you create the pull request, all status checks must be pass before a maintainer reviews your contribution. For more details, please see CONTRIBUTING.
What does this PR do?
Updates org.datadog.jenkins.plugins.datadog.clients.HttpClient to properly support runtime changes of Jenkins proxy settings.
Previous version of the client updated the list of proxies but did not stop already opened connections that were pooled.
As the result, after the settings changed, existing pooled connections continued to work with the old settings.
The new version stops the client completely and starts a new instance with a new connection pool whenever changes in the proxy settings are detected.
There is no need to include this in the changelog, since it fixes code that has not been released yet.
Description of the Change
Alternate Designs
Possible Drawbacks
Verification Process
Issue reproduced and fix verified manually with a dockerized Jenkins instance.
Additional Notes
Release Notes
Review checklist (to be filled by reviewers)
[ ] Feature or bug fix MUST have appropriate tests (unit, integration, etc...)
[ ] PR title must be written as a CHANGELOG entry (see why)
[ ] Files changes must correspond to the primary purpose of the PR as described in the title (small unrelated changes should have their own PR)
[ ] PR must have one changelog/ label attached. If applicable it should have the backward-incompatible label attached.
[ ] PR should not have do-not-merge/ label attached.
[ ] If Applicable, issue must have kind/ and severity/ labels attached at least.
Requirements for Contributing to this repository
What does this PR do?
Updates
org.datadog.jenkins.plugins.datadog.clients.HttpClient
to properly support runtime changes of Jenkins proxy settings.Previous version of the client updated the list of proxies but did not stop already opened connections that were pooled. As the result, after the settings changed, existing pooled connections continued to work with the old settings.
The new version stops the client completely and starts a new instance with a new connection pool whenever changes in the proxy settings are detected.
There is no need to include this in the changelog, since it fixes code that has not been released yet.
Description of the Change
Alternate Designs
Possible Drawbacks
Verification Process
Issue reproduced and fix verified manually with a dockerized Jenkins instance.
Additional Notes
Release Notes
Review checklist (to be filled by reviewers)
changelog/
label attached. If applicable it should have thebackward-incompatible
label attached.do-not-merge/
label attached.kind/
andseverity/
labels attached at least.