Comment fermer plusieurs révisions de code Crucible ?

Si vous utilisez Atlassian Crucible pour vos révisions de code, il vous est peut être déjà arrivé d’avoir beaucoup de révisions en attente qui ne sont plus pertinentes et que vous auriez aimé fermer en un clic. Contrairement à JIRA, Crucible n’offre pas de fonctionnalité de traitement en lot, mais il est possible d’utiliser l’API REST pour automatiser cette tâche. Voici deux scripts pour Windows qui se chargeront de fermer ou compléter une liste de révisions de code Crucible pour un utilisateur donné.

  1. Installez l’outil en ligne de commande curl, depuis http://www.confusedbycode.com/curl/
  2. Vérifiez que le chemin d’accès à curl est correctement configuré (essayer d’exécuter “curl” depuis une invite de commande MS-DOS)
  3. Créez un fichier batch “complete-crucible-reviews.bat” (ou téléchargez le ici) avec le contenu suivant :
    echo offIF "%~6"=="" GOTO help
    
    FOR /L %%G IN (%5,1,%6) DO (
    echo %4-%%G
    curl -u %2:%3 %1/rest-service/reviews-v1/%4-%%G/complete -X POST -H "Content-Type:application/xml"
    )
    
    GOTO end
    
    :help
    echo Completes all opened reviews for the specified user in a reviews id range
    echo Usage: %0 ^<crucible-url^> ^<username^> ^ <password^> ^<review-prefix^> ^<first-review-id^> ^<last-review-id^>
    echo Example : %0 http://crucible.mycompany.com:8060 mylogin mypassword MYPROJ 1 1000
    
    :end
    
  4. Pour compléter une liste de révisions de code Crucible, exécutez le script précédent avec vos paramètres de configuration. Ex :
    c:\complete-crucible-reviews.bat http://crucible.mycompany.com:8060 mylogin mypassword MYPROJ 1 1000
    
  5. Pour fermer une liste de révisions de code Crucible, utilisez le script suivant (ou téléchargez le ici):
    echo off
    IF "%~6"=="" GOTO helpFOR /L %%G IN (%5,1,%6) DO (
    echo %4-%%G
    curl -u %2:%3 %1/rest-service/reviews-v1/%4-%%G/close -X POST -H "Content-Type:application/xml" --data "<!--?xml version='1.0' encoding='UTF-8' standalone='yes'?-->Crucible batch close"
    )
    
    GOTO end
    
    :help
    echo Closes all opened reviews for the specified user in a reviews id range
    echo Usage: %0 ^&lt;crucible-url^&gt; ^&lt;username^&gt; ^&lt;password^&gt; ^&lt;review-prefix^&gt; ^&lt;first-review-id^&gt; ^&lt;last-review-id^&gt;
    echo Example : %0 http://crucible.mycompany.com:8060 mylogin mypassword MYPROJ 1 1000
    
    :end
    

Leave a Reply

Your email address will not be published. Required fields are marked *