language: go dist: trusty go: - 1.12.x env: global: - GO111MODULE=on addons: sonarcloud: organization: "jenkins-zh" token: secure: 3caad1285eb0edf2b4f65ee07b3cd8edde6c5176 # encrypted value of your token script: - make clean # Execute some tests - make tools init test # And finally run the SonarQube analysis - read the "sonar-project.properties" # file to see the specific configuration - curl -LsS https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.0.0.1744-linux.zip > sonar-scanner-cli-4.0.0.1744-linux.zip - unzip sonar-scanner-cli-4.0.0.1744-linux.zip - export branch=$(if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then echo $TRAVIS_BRANCH; else echo pr-$TRAVIS_PULL_REQUEST; fi) - sonar-scanner-4.0.0.1744-linux/bin/sonar-scanner -D sonar.branch.name=$branch -Dsonar.projectKey=jenkins-zh_jenkins-cli -Dsonar.organization=jenkins-zh -Dsonar.sources=. -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=674e187e300edc0ad56a05705bd0b21cbe18bd52 # it's bad, but no better solution for now # - sleep 30 # - if [ 'OK' != $(curl -s "https://sonarcloud.io/api/qualitygates/project_status?branch=$branch&projectKey=jenkins-zh_jenkins-cli" | python -c "import sys, json; print(json.load(sys.stdin)['projectStatus']['status'])") ]; then exit -1; fi