codyze
codyze copied to clipboard
Add Plugin Support
This PR adds Plugins to Codyze.
Plugins utilize the functionality of other analysis tools and combine them with Codyze. Each Plugin registers its own subcommand, which takes arguments such as the analysis target and more optional parameters.
To smoothly integrate the results of the plugins, this PR also introduces the Aggregator class. This class stores SARIF runs and outputs one combined SARIF run, marking each of the used plugins as an extension to codyze.
At this moment, only the PMD and FindSecBugs (SpotBugs) tools are supported as Plugins with limited rulesets. The number of plugins and rules can be expanded in future pull requests.
Future functionality could also include reading a SARIF file produced by an external tool and loading it into the Codyze SARIF file.