apache / apache/maven-changes-plugin

[MCHANGES-378] Github report does not use maven proxy settings

Offen
#248 10 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
bug priority:major
Vorherrschende Sprache
Java
Sterne
15
Forks
22
Ø Merge
8 Std. 1 Min.
Gemergte PRs (30 T.)
3

Beschreibung

**[Luc Maisonobe](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=luc)** opened **[MCHANGES-378](https://issues.apache.org/jira/browse/MCHANGES-378?redirect=false)** and commented

When attempting to run mvn:site on a project that uses GitHub as its SCM, maven-changes-plugin gets called to create reports, and it always attempts to generate github-report (even despite reportSet contains only changes-report and there is are changes.xml files in the various project modules.

An attempt to connect directly to api.github.com on port 443 is then done, which is forbidden by an authenticating proxy. This happens despite the proxy settings are correct in settings.xml (and are used by other plugins).

This looks similar to MCHANGES-231, but affects Github instead of JIRA.

When using the -X switch to get some debug info, it seems the lowest level exception is a java.net.SocketException (Connection Reset). The stack trace is:

Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:209)
at java.net.SocketInputStream.read(SocketInputStream.java:141)
at sun.security.ssl.InputRecord.readFully(InputRecord.java:465)
at sun.security.ssl.InputRecord.read(InputRecord.java:503)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973)
at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)
at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)
at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559)
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1546)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1474)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)
at org.eclipse.egit.github.core.client.GitHubClient.get(GitHubClient.java:733)
at org.eclipse.egit.github.core.client.PageIterator.next(PageIterator.java:173)
at org.eclipse.egit.github.core.service.GitHubService.getAll(GitHubService.java:151)
at org.eclipse.egit.github.core.service.IssueService.getIssues(IssueService.java:454)
at org.apache.maven.plugin.github.GitHubDownloader.getIssueList(GitHubDownloader.java:191)
at org.apache.maven.plugin.github.GitHubMojo.executeReport(GitHubMojo.java:184)

So the connections is attempted by some code from egit. I was not able to find if the problem is a wrong usage of egit from maven changes plugin or a bug in egit itself.

---

**Affects:** 2.12.1

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne mit org.apache.maven.plugin.github.GitHubDownloader.getIssueList und GitHubMojo.executeReport und untersuche anschließend, wie das Plugin die Proxy-Konfiguration aus settings.xml an den EGit GitHub-Client übergibt. Reproduziere mvn:site für ein GitHub SCM-Projekt hinter einem authentifizierenden Proxy; abgeschlossen ist die Aufgabe, wenn der GitHub-Bericht den konfigurierten Proxy verwendet, statt direkt eine Verbindung zu api.github.com herzustellen.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
build-system
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
35/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.