2016-07-06 2 views
6

Wir haben derzeit eine Jenkins-Pipeline mit Multibranch Workflow plugin. Jeder Git-Zweig führt eine Sonarqube-Analyse aus, die ein Sonarqube-Projekt unter Verwendung der Eigenschaft sonar.branch erstellt. Dies ist sehr nützlich, da jede Verzweigung analysiert wird, bevor sie zusammengeführt wird. Das Problem tritt auf, wenn eine Verzweigung mit dem Master verschmolzen wird und auf GIT verschwindet. Das Projekt wird auf Sonarqube fortgesetzt und muss manuell gelöscht werden. Gibt es eine Möglichkeit, es automatisch zu tun? oder irgendeine andere Empfehlung?Sonarqube Zweigprojekte automatisch entfernen, wenn Git Zweig verschmolzen/entfernt

Antwort

5

Der beste Weg, um SonarQube-Zweigprojekte zu entfernen, besteht darin, sie nicht an den Server zu senden. Hier sind Ihre Möglichkeiten:

Bei SonarSource verwenden wir täglich SonarLint und das GitHub-Plugin. Eine letzte Lösung besteht darin, das Projekt mithilfe des Webdiensts api/projects/delete manuell zu löschen.

+0

Wenn Sie eine kontinuierliche Integration System wie Jenkins verwenden, wenn Sie einen Zweig auf git von Master den jenkinsfile schaffen es auch kopiert wird, sonarque Analyse vermeiden implizieren diese Datei ändern. In einigen Fällen vergisst der Entwickler diesen Schritt. –

+2

Wir haben das gleiche "Problem" mit Travis. Aus diesem Grund führt unser Skript vor der Ausführung der SonarQube-Analyse einige bedingte Prüfungen durch (sind wir im Masterzweig oder nicht). –

2

Wenn Sie Bitbucket Server und Sonar für Bitbucket Server Add-on verwenden, gibt es eine automatische Möglichkeit, diese Bereinigung durchzuführen. Um diese Einstellung von Bitbucket Server zu aktivieren, folgen Sie den 3 Schritten, die in den folgenden Screenshots gezeigt werden.

Screenshot of 3 steps

+0

Vielleicht ist die beste Lösung, wenn Sie das Plugin kaufen können, ist es nicht immer möglich. –

+0

Wenn Sie nicht 10 Dollar/10 Benutzer investieren können, sollten Sie wahrscheinlich auch keine Zeit in kontinuierliche Integration/Code QA investieren. Extreme Programmierung und eine sehr einfache SCM ist wahrscheinlich alles, was Sie für ein solches Projekt brauchen. Nur sagian. SonarQube und Ähnliches machen nur in geschäftsorientierten Teams Sinn - für alles andere könnte ein einfacher Cronjob genügen. – specializt

+0

Mein Fall ist anders, die Anzahl der Benutzer für bitbucket ist groß (+2000), aber die Anzahl der Sonarqube Benutzer ist klein (weniger als 100). Vielleicht ist eine benutzerdefinierte geplante Aufgabe, die Projekte und Repositorys überprüft, eine Lösung. –