DevOps: SonarQube

  

  1. dnf install java-11-openjdk postgresql-server postgresql postgresql-contrib
  2. useradd sonar
  3. unzip sonarqube-VERSION.zip -d /opt
  4. ln -sv /opt/sonarqube-VERSION /opt/sonarqube
  5. chown -RL sonar.sonar /opt/sonarqube
  6. postgresql-setup initdb
  7. /var/lib/pgsql/data/pg_hba.conf     改为下图所示

     

     

  8. su - postgres
  9. psql
  10. create database sonar;
  11. create user sonar;
  12. alter user sonar with password 'sonar';
  13. alter role sonar createdb;
  14. alter role sonar superuser;
  15. alter role sonar createrole;
  16. alter database sonar owner to sonar;
  17. \q
  18. su - root
  19. /opt/sonarqube/conf/sonar.properties
    sonar.jdbc.username=sonar
    sonar.jdbc.password=sonar
    sonar.jdbc.url=jdbc:postgresql://localhost/sonar

     

  20. firewall-cmd --zone=public --permanent --add-port=9000/tcp
  21. firewall-cmd --reload
  22. /etc/sysctl.conf
    vm.max_map_count=262144
    fs.file-max=1048576

    sysctl --system

  23. /etc/security/limits.conf
    *    soft    nofile    1048576
    *    hard   nofile    1048576
    *    soft    nproc    4096
    *    hard   nproc    4096

     

  24. su - sonar -c '/opt/sonarqube/linux-x86-64/bin/sonar.sh start'
  25. 用户名和密码均为: admin

 

# https://docs.sonarqube.org/latest/setup/install-server/

#---------------------------------------------------------------------
#---------------------------------------------------------------------

#---------------------------------------------------------------------
# Prerequisites
#---------------------------------------------------------------------
unzip sonarqube-9.2.1.49989.zip -d /usr/local
cd /usr/local && ln -svnf sonarqube-9.2.1.49989 sonarqube

groupadd --gid 9000 sonarqube
useradd --uid 9000 --gid 9000 -d /usr/local/sonarqube --shell /bin/bash --comment 'SonarQube User' sonarqube

chown --dereference -L -R sonarqube.sonarqube /usr/local/sonarqube


#---------------------------------------------------------------------
# Multi-Branch Plugin
#---------------------------------------------------------------------
https://github.com/mc1arke/sonarqube-community-branch-plugin/releases


#---------------------------------------------------------------------
# Sonar-Scanner
#---------------------------------------------------------------------
Examples: https://github.com/SonarSource/sonar-scanning-examples/tree/master/sonarqube-scanner/src

# sonar-project.properties
sonar.host.url=http://sonarqube:9000
# sonar.login=admin
# sonar.password=moderate0!
sonar.login=97cd1f21966042b2320539c1b720144d5e2aaced
sonar.projectKey=java:java-1
sonar.projectName=java-1
sonar.sources=src/main
sonar.java.binaries=target
sonar.projectVersion=0.0.1-SNAPSHOT
sonar.language=java
sonar.sourceEncoding=UTF-8

sonar-scanner -Dsonar.login=Token -Dsonar.verbose=true -Dsonar.projectKey=myproject -Dsonar.sources=src/main -Dproject.settings=myproject.properties

# docker
docker run \
  --rm \
  -e SONAR_HOST_URL="http://sonarqube:9000" \
  -e SONAR_LOGIN="97cd1f21966042b2320539c1b720144d5e2aaced" \
  -v "$PWD:/usr/src" \
  --net host \
  sonarsource/sonar-scanner-cli -Dsonar.projectKey=myproject -Dsonar.projectName=pppp

mvn clean verify sonar:sonar -Dmaven.test.skip=true -Dsonar.projectName=${JOB_NAME} -Dsonar.projectKey=${JOB_NAME} -Dsonar.branch.name=${GIT_BRANCH}


#---------------------------------------------------------------------
# Gitlab Integration
#---------------------------------------------------------------------
application ID: 4889aab9c84dc43f124ee86a2a0b06e67c1ff71242808da76c4edfca7dd07b4f
Secret: 0ea3248d2285817ab3f4cb2891b81f82ba120218c7644316757671002f2b9da3
https://docs.sonarqube.org/latest/analysis/gitlab-integration/

QYwefqsYWyecSsx1vnGD

sonarqube 76aa7926d3a64a82c573dc29341de7df374970ba

mvn clean verify sonar:sonar -Dsonar.login=76aa7926d3a64a82c573dc29341de7df374970ba


#---------------------------------------------------------------------
# SonarScanner for Maven
#---------------------------------------------------------------------
Docs: https://docs.sonarqube.org/latest/analysis/scan/sonarscanner-for-maven/
<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://sonarqube:9000
                </sonar.host.url>
                <sonar.login>
                  Token here
                </sonar.login>
            </properties>
        </profile>
     </profiles>
</settings>

git pull --allow-unrelated-histories --set-upstream larva refs/heads/main:refs/heads/master

 

posted @ 2020-07-04 14:23  ascertain  阅读(143)  评论(0编辑  收藏  举报