Giter Club home page Giter Club logo

sonar-issueresolver-plugin's Introduction

Issue resolver Plugin for SonarQube Build Status Quality Gate

Requires SonarQube 6.3+

This plugin allows you to synchronize and export issue data (status, resolution, assignee and comments) of issues that have been confirmed, reopened or resolved. After exporting the data you can import it into a project where the issues in that project will be matched with the exported issue data; if matched the issue will be confirmed, reopened or resolved. Optionally the matched issue can be assigned to the same user and missing comments can be added. When working within one SonarQube installation the issues can be updated between projects directly.

Use cases:
  • Keeping resolved issues in sync between the master and a release/feature/maintenance branch
  • Using the list as a delivery for QA reports

Matching issues, assignees and comments

Issues are matched using the component, rule and linenumber. If an issue is matched it will be reported as 'matched'; if no transition can be determined to reach the exported status and resolution a 'matchFailure' will be reported. If the transition could not be succesfully completed a 'transitionFailure' will be reported.

Assignee are matched using the username; the issue will be assigned to the assignee if the username is different and the issue will be reported as 'assigned'. If the assignment could not be succesfully completed an 'assignFailure' will be reported.

Comments are matched by comparing the markdown. If a comment is not present on the issue it will be added and the issue will be reported as 'commented'. If a comment could not be succesfully added a 'commentFailure' will be reported.

Resolving issues

When transitioning, assigning issues or adding comments the current logged in account will be used.

Usage

  • Install the plugin via the Update Center in the SonarQube administration pages. Or to install the plugin manually; copy the .jar file from the release to the extensions/plugins directory of your SonarQube installation.

  • Find the page 'Issue resolver' under the project Administration section.

Update
  • Select the plugin in the project you want to update issues in. You will need 'Browse' and 'Administer issues' (to resolve issues) permissions for this project.
  • Select the 'Update' tab.
  • Select the project you want to read issues from. You will need 'Browse' permission for this project.
  • Press the 'Update' button to read, match and resolve issues.
Export
  • Select the plugin in the project you want to export issues for. You will need 'Browse' and 'Administer issues' (to be able to reach the Administration section) permissions for this project.
  • Select the 'Export' tab.
  • Press the 'Export' button to download a datafile containing the resolved issues from the project.
Import
  • Select the plugin in the project you want to export issues for. You will need 'Browse' and 'Administer issues' (to resolve issues) permissions for this project.
  • Select the 'Export' tab.
  • Select the datafile containing the issues to import
  • Press the 'Import' button to upload the datafile and match and resolve issues.
Preview

Use the preview option to preview the matching results. No actual changes will be made to the project.

Webservices

The main work for the plugin is done via webservices that are available via the SonarQube Web API (see SonarQube -> Helper -> Web API):

  • Update issues from another project: http POST to /api/issueresolver/update
  • Export issues from a project: http GET to /api/issueresolver/export
  • Import issues in a project: http POST to /api/issueresolver/import

These webservices can be used by external tools to trigger the functionality.

sonar-issueresolver-plugin's People

Contributors

willemsrb avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.