ਪਲੱਗਇਨ ਵਿੱਚ Jenkins ਦਾ ਪ੍ਰੌਕਸੀ-ਜਾਣੂ HTTP ਕਲਾਇੰਟ ਵਰਤੋ
ਸੰਭਾਲੇ ਖਾਤਾ ਖੇਤਰ ਕਾਪੀ ਕਰਨ ਦੀ ਥਾਂ Jenkins ਦੇ ਜਨਤਕ ProxyConfiguration ਸਹਾਇਕ ਰਾਹੀਂ ਪਲੱਗਇਨ ਦਾ ਆਉਟਬਾਊਂਡ ਕਲਾਇੰਟ ਬਣਾਓ।
Jenkins ਪਲੱਗਇਨ ਵਿੱਚ ਆਉਟਬਾਊਂਡ HTTP ਬੇਨਤੀ ਕਰਨ ਵਾਲਾ ਹਿੱਸਾ Jenkins ਦੇ ਜਨਤਕ ਪ੍ਰੌਕਸੀ-ਜਾਣੂ ਕਲਾਇੰਟ ਸਹਾਇਕ ਦੀ ਵਰਤੋਂ ਕਰ ਸਕਦਾ ਹੈ:
HttpClient client = ProxyConfiguration.newHttpClient();
HttpRequest request = ProxyConfiguration.newHttpRequestBuilder(
URI.create("https://service.example/status"))
.GET()
.build();
HttpResponse<Void> response = client.send(
request, HttpResponse.BodyHandlers.discarding());
ਇਹ ਟੁਕੜਾ hudson.ProxyConfiguration, java.net.URI ਅਤੇ java.net.http ਕਿਸਮਾਂ ਵਰਤਦਾ ਹੈ। ਕਾਲਰ ਆਪਣੇ ਆਮ ਪਲੱਗਇਨ ਪ੍ਰਵਾਹ ਰਾਹੀਂ ਇਨਪੁਟ-ਆਉਟਪੁਟ ਅਤੇ ਰੁਕਾਵਟ ਸੰਭਾਲਦਾ ਹੈ। ਬਾਡੀ ਹੈਂਡਲਰ ਜਵਾਬ ਦੀ ਬਾਡੀ ਲੈ ਕੇ ਸੁੱਟ ਦਿੰਦਾ ਹੈ।
newHttpClient ਅਤੇ ਇਸ ਦਾ ਬਿਲਡਰ ਇੰਟਰਫ਼ੇਸ Jenkins 2.379 ਤੋਂ ਉਪਲਬਧ ਹਨ। ਕੰਟਰੋਲਰ JVM ਵਿੱਚ ਇਹ Jenkins ਵੱਲੋਂ ਸਮਰਥਿਤ ਪ੍ਰੌਕਸੀ ਸੰਰਚਨਾ ਲਾਗੂ ਕਰਦੇ ਹਨ। ਹਰ ਬੇਨਤੀ ਲਈ ਨਵਾਂ ਬਣਾਉਣ ਦੀ ਥਾਂ ਕਲਾਇੰਟ ਮੁੜ ਵਰਤੋ।
ਇਸ ਨਾਲ ਕੰਟਰੋਲਰ ਵਿੱਚ ਸੰਭਾਲੇ ਪ੍ਰੌਕਸੀ ਨਾਮ ਅਤੇ ਪਾਸਵਰਡ ਨੂੰ ਵੱਖਰੇ ਤੌਰ ’ਤੇ ਸੰਰਚਿਤ ਟ੍ਰਾਂਸਪੋਰਟ ਵਿੱਚ ਕਾਪੀ ਹੋਣ ਤੋਂ ਬਚਾਇਆ ਜਾਂਦਾ ਹੈ। ਕੇਵਲ ਕੰਟਰੋਲਰ ਇੰਟਰਫ਼ੇਸ ਵਿੱਚ ਪ੍ਰੌਕਸੀ ਐਂਟਰੀ ਹੋਣ ਕਰਕੇ ਵੱਖਰਾ ਬਣਾਇਆ Java HTTP ਕਲਾਇੰਟ ਪ੍ਰੌਕਸੀ-ਜਾਣੂ ਨਹੀਂ ਹੁੰਦਾ।
ਉਹਨਾਂ ਬੇਨਤੀਆਂ ਲਈ ਜੋ ਮੰਜ਼ਿਲ ਨੂੰ Authorization ਹੈਡਰ ਭੇਜਦੀਆਂ ਹਨ, Java 17 ਅਤੇ ਬਾਅਦ ਦੇ ਸੰਸਕਰਣਾਂ ਵਿੱਚ ਦਸਤਾਵੇਜ਼ੀ ਪ੍ਰਮਾਣਿਤ-ਪ੍ਰੌਕਸੀ ਸੀਮਾ ਵੇਖੋ। ਦਸਤਾਵੇਜ਼ ਇਸ ਸੰਯੋਜਨ ਦਾ ਵਿਸ਼ੇਸ਼ ਜ਼ਿਕਰ ਕਰਦਾ ਹੈ; ਇਹ ਸਹਾਇਕ ਚੁਣਨ ਨਾਲ ਉਹ ਕਲਾਇੰਟ ਸੀਮਾ ਹਟਦੀ ਨਹੀਂ।