Cette action pousse les résultats de SpotBugs (ou Findbugs) en tant qu'annotations de contrôle.
L'action peut également être utilisée pour tous les autres outils d'analyse statique qui produisent des rapports au format XML SpotBugs. Le rapport lui-même doit être généré dans une ancienne étape de construction, par exemple une construction maven.

path Requis. Un modèle de fichier, de répertoire ou de jogne qui décrit où trouver les rapports. Plusieurs fichiers peuvent être traités via une expression GLOB, par exemple: '**/spotbugsXml.xml' .
name Facultatif. Nom de la chèque à créer. Par défaut spotbugs .
title Facultatif. Titre de la chèque à créer. SpotBugs Source Code Analyzer report par défaut.
token Facultatif. Jeton d'accès GitHub API. Par défaut, ${{ github.token }} , qui est défini par actions/checkout@v2 au minimum.
name : Java CI
on : [push]
jobs :
build :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- name : Set up JDK 1.8
uses : actions/setup-java@v1
with :
java-version : 1.8
- uses : actions/cache@v1
with :
path : ~/.m2/repository
key : ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys : |
${{ runner.os }}-maven-
- name : Build with Maven
run : mvn -B verify spotbugs:spotbugs
- uses : jwgmeligmeyling/spotbugs-github-action@master
with :
path : ' **/spotbugsXml.xml 'Et n'oubliez pas d'activer la sortie XML pour le plugin Maven:
< build >
< plugins >
< plugin >
< groupId >com.github.spotbugs</ groupId >
< artifactId >spotbugs-maven-plugin</ artifactId >
< version >4.0.0</ version >
< configuration >
< xmlOutput >true</ xmlOutput >
< failOnError >false</ failOnError >
</ configuration >
</ plugin >
</ plugins >
</ build > Veuillez noter que par défaut, les workflows sur les événements pull_request Checkout refs/pull/:prNumber/merge au lieu de la tête de la demande de traction. Pour cette raison, les numéros de ligne pour les violations générés peuvent ne pas s'aligner sur les numéros de ligne réels auxquels ils sont affichés sur la HEAD . En l'état, il n'y a pas vraiment de moyen raisonnable d'exécuter cette action sur le commit de fusion de la demande de traction, car le résultat serait affiché sur un flux de travail sans nom pour un engagement autrement invisible. Même pour les événements pull_request , il est possible de vérifier la tête de la demande de traction à la place. Pour ce faire, modifiez votre action checkout en conséquence:
- uses : actions/checkout@v2
with :
ref : ${{ github.event.pull_request.head.sha }} Il s'agit d'une action GitHub dans une série d'autres actions GitHub. Les actions similaires incluent:
En raison des limitations de l'API GitHub, nous ne pouvons pas spécifier à quel workflow s'exécuter (ou la suite de chèques sous-jacente), une vérification nouvellement créée doit être associée. En conséquence, les workflows qui déclenchent sur plusieurs types d'événements pourraient pousser les résultats sous un autre événement que l'action n'a été exécutée. Pour plus d'informations, voir: # 3
Installer les dépendances
$ npm installCréez le dactylographie et emballez-le pour la distribution
$ npm run build && npm run packageExécutez les tests ✔️
$ npm test
PASS ./index.test.js
✓ throws invalid number (3ms)
✓ wait 500 ms (504ms)
✓ test runs (95ms)
...