This section mentions how the data is stored in JSON (JavaScript Object Notation) and it can be customized by adding our own JSON objects.

Code Quality JSON structure

This section helps you to understand different field types, its description, its importance, and default values that areused in the JSON file.

Field TypeUsageTypeDefault
gammaAccessThis is the name of code quality project.
url Specifies URL of the website StringEmpty
userNameStores user name for basic authentication to connect to the remote machineStringEmpty
passwordStores password for basic authentication to connect to the remote machine.
User can access either using username-password or by adding token for authentication.
StringEmpty
tokenStores token for basic authentication to connect to the remote machine.
User can access either using username-password or by adding token for authentication.
StringEmpty
repositoriesSpecifies the repository information that will be scanned during your analysis process.
For more information, refer this article
dataDir

This is used to store the temporary files. StringEmpty
uid
Stores repository uid which is unique for each repositoryStringSaved from UI
projectNameSpecifies the repository name Saved from UI
sourcesPath/directories/files that can be scanned during your analysis process.
For more information, see as
baseDirThis is a base directory where source code resists.
Moreover, this is a kind of main directory where all the operations such as cloning, scans, etc is performed.
StringEmpty
exclusions Specifies list of files/directories/languages that needs to be excluded from your analysis.ArrayEmpty
settingsSpecifies some additional options that can be used for scan configuration scanning process.
additionalOptionsSpecifies the list or lists of additional options that needs to be scanned.ArrayEmpty
includePathsSpecifies the file or list of files that needs to be scanned. ArrayEmpty
modulesModules can be used for scanning process.
For more information, refer this article .
codeissuesThis is a type of the module.
This section is used to enabling/disabling code checker configuration. For more information, refer this article.
unittestSpecifies the input data value.
For e.g. the input can be in CSV/XML or any other format.
List
coverageSpecifies the coverage information across different modules.
For more information, refer this link.
List
relevanceSpecifies the name of code issue. List
nameSpecifies the name that can have multiple values such as codeissues, unittest, coverage or relevance. ListSaved from UI
enabledSpecifies whether the code checker is enabled or not. BooleanSaved from UI
configSpecifies the configuration for that particular code checker
rulesSpecifies the rules for code issue Array
optionsThese include additional options for code checkers like PMD.
nameSpecify the rule name for different modules. StringSaved from UI
typeSpecifies the type of module. StringSaved from UI
valueSpecifies the value such as integer or string for that particular module.StringSaved from UI
requiredSpecifies whether this module should be required while scanning and its value can be true or false. BooleanSaved from UI

Sample JSON file

BrowserStack Code Quality JSON helps you to construct a data hierarchy such as: