5. SonarQube

5.1. Budowanie Pull Request

sonar.pullrequest.base=master
sonar.pullrequest.branch=feature/my-new-feature
sonar.pullrequest.key=5
sonar.pullrequest.provider=GitHub
sonar.pullrequest.github.repository=my-company/my-repo https://blog.sonarsource.com/sonarcloud-loves-your-build-pipeline

5.2. Analiza kodu za pomocą mvn

5.2.1. pom.xml

<settings>
    <pluginGroups>
        <pluginGroup>org.sonarsource.scanner.maven</pluginGroup>
    </pluginGroups>
    <profiles>
        <profile>
            <id>sonar</id>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <!-- Optional URL to server. Default value is http://localhost:9000 -->
                <sonar.host.url>
                  http://myserver:9000
                </sonar.host.url>
            </properties>
        </profile>
     </profiles>
</settings>

5.2.2. Używnianie

mvn sonar:sonar

5.4. Zadania

5.4.1. Instalacja

  • Zainstaluj SonarQube

Pokaż rozwiązanie dla instalacji za pomocą ``apt-get``

Pokaż rozwiązanie dla instalacji za pomocą ``docker``

Tip

User admin, Hasło admin

5.4.2. Wrzucanie wyników statycznej analizy kodu

  • Czy wcześniej zainstalowałeś Bitbucket Server?

  • Skonfiguruj aby statyczna analiza kodu uruchamiała z Jenkins

  • Skonfiguruj tak, by w każdym Pull Request jako komentarz do linii kodu wyświetlały się uwagi z SonarQube

  • Dostosuj poziom komentarzy, aby nie zalać programisty ich zbyt dużą ilością, np. wyświetlaj tylko Blocker i Critical