jenkins + sonar + github intégration
Problème: je suis en train d'ouvrir jenkins + sonar + github intégration automatique pullrequest statique de code de vérification par le biais de sonar.
Ma Configuration:
- Installé Sonar avec github
- Installé jenkins
- Dans jenkins post-construire l'action que j'ai les propriétés suivantes
-Dsonar.github.login=bhuwang -Dsonar.github.repository=company/repo -Dsonar.verbose=true -Dsonar.analysis.mode=preview -Dsonar.issuesReport.console.enable=true -Dsonar.forceUpdate=true -Dsonar.github.login=gitusername -Dsonar.github.oauth=token
- Jeton a été généré à partir de mon compte github.
Dans ce lien j'ai lu que je dois fournir les propriétés suivantes lors de l'exécution de sonarqube:
J'ai ajouté tous à l'exception d'un sonar.github.pullRequest propriétés. Je ne sais pas comment puis-je obtenir cette valeur de propriété de façon dynamique. Semble être au-dessus quatre propriétés sont doit pour fonctionner correctement.
Edit: j'ai trouvé le moyen d'ajouter de la propriété -Dsonar.github.pullRequest=pullrequestNo
Et la bonne nouvelle, c'est qu'il fonctionne parfaitement bien maintenant avec codé en dur tirez demande pas. mais j'ai besoin de la dynamique de façon à obtenir le pull request no.
Personne ne sait comment obtenir la traction demande pas. de façon dynamique à l'intérieur de jenkins.?
J'ai trouvé que tirer générateur de requête fonctionne, mais pas de chance à ma fin. Je ne suis pas en mesure d'utiliser de pull request générateur de variables d'environnement à l'intérieur de sonar propriétés.
https://issues.jenkins-ci.org/browse/JENKINS-24590
voici ma configuration de flux: 1. git checkout 2. construction de 3. en post-construction de l'action qu'il exécute sonar 4. #3 il doit appeler sonar github plugin pour écrire des commentaires.
Ah, donc tout ce que vous voulez faire est de poster des commentaires sur votre repo git automatiquement à partir de SonarQube, sans doute avec les métriques de code sur le code?
Oui je veux post sonar révision du code des commentaires à tirer la demande directement. Lire ce lien pour obtenir plus d'informations sur ce que je veux. docs.sonarqube.org/display/PLUG/GitHub+Plugin
OriginalL'auteur Bhuwan Gautam | 2015-08-17
Vous devez vous connecter pour publier un commentaire.
Enfin, je suis en mesure de résoudre ce problème. Voici le détail:
Installer Jenkins avec les plugins suivants
Suivez ce lien pour configurer pull request builder plugin: https://wiki.jenkins-ci.org/display/JENKINS/GitHub+pull+request+builder+plugin#GitHubpullrequestbuilderplugin-EnvironmentVariables
PullRequest Constructeur De L'Installation
ajouter github url GitHub du Projet section
De L'Installation De Gestion Du Code Source De La Section
Installation De Construire De Déclenchement
Installation de Sonar pour la post-construire des actions
Supplémentaires dans la section propriétés de fournir les éléments suivants sonar propriétés
Remarque: Le travail devrait être déclenchée par pullrequest builder plugin sinon, ${ghprbPullId} sera de retour vide. Si vous exécutez la tâche manuellement, cela ne fonctionnera pas pour vous que vous avez à passer ce ${ghprbPullId} la propriété comme une accumulation de paramètre. Si vous voulez vérifier le paramètre d'environnement disponibles suivez ce Git variables d'environnement pour les utiliser dans l'exécution de Jenkins scripts shell
J'espère que cette aide.
oh! comment aurais-je manqué votre question ici. Mettre les commentaires à la demande d'extraction(s) est le travail du SONAR et autant que je sache, il est indépendant de la qualité des portes de résultat. J'ai besoin de vérifier cela.
OriginalL'auteur Bhuwan Gautam
Trop long pour un commentaire, donc je vais l'écrire ici.
Après quelques recherches sur le web j'ai trouvé une question sur tant de quelqu'un un peu en avance de vous dans le processus de la mise en place d'un système similaire, ici. Ils essaient de récupérer tout cela en travaillant avec Maven, je ne sais pas si vous aussi mais de toute façon, vous pouvez alors voir le lien qu'ils ont été de l'aide pour les aider avec leur script:
https://github.com/SonarSource/sonarqube/blob/master/travis.sh
Cela montre qu'ils doivent écrire un script qui permet de récupérer le pull nombre dynamiquement pour eux. Je pense que vous pouvez avoir besoin de suivre une approche similaire et écrivez un script qui permet de récupérer le numéro pour vous, je crois que github fichiers de conf garde la trace du courant de traction numéro de la demande pour ses propres fins de suivi.
Pas vraiment aussi simple la réponse que vous avez été, mais j'espère que c'est une nouvelle information qui vous permet d'y arriver.
OriginalL'auteur Seb