Executes a sonar scan. This operation takes inputs for both an analysis properties file and individual properties for project location, source code location, compiled classes location, and verbose logging option. If both are provided, the plugin will use the analysis properties input and do nothing with the individual properties.
Environment/Instance Properties
Property Name | Property Code | Required | Description |
---|---|---|---|
SonarQube Scanner Home | FDSQ_SCANNER_HOME | Yes | SonarQube Scanner Home Directory |
SonarQube instance URL | FDSQ_INSTANCE_URL | Yes | SonarQube Server Instance URL (example: https://localhost:9000) |
SonarQube Token | FDSQ_TOKEN | Yes | SonarQube Server Token provides credentials to run code scans or to invoke web services as a replacement of the user login. Provide a token or username and password. |
SonarQube Username | FDSQ_USERNAME | Yes | The username for your SonarQube Server Instance. |
SonarQube Password | FDSQ_PASSWORD | Yes | The password for your SonarQube Server Instance. |
Project Properties
Property Name | Property Code | Required | Description |
---|---|---|---|
SonarQube Project Key | FDSQ_PROJECT_KEY | Yes | Unique identifier for a given SonarQube instance project. |
SonarQube Project Name | FDSQ_PROJECT_NAME | No | Name of the project that will be displayed on the web interface. Defaults to the project key. If not provided and there is already a name in the database, it won't be overwritten. |
SonarQube Project | FDSQ_PROJECT_VERSION | No | The project version that will be displayed on the web interface. |
...
Input Name | Input Code | Required | Description |
---|---|---|---|
Project Location | FDSQ_INP_PROJECT_LOCATION | No | Path to the project root, relative to FD_TEMP_DIR. |
FDSQ_INP_SOURCE_CODE_LOCATION | No | Path to the project sources, relative to FDSQ_INP_PROJECT_LOCATION. Defaults to project base directory. | |
Compiled Classes Location | FDSQ_INP_CLASSES_LOCATION | No | Path to the compiled classes, relative to FDSQ_INP_PROJECT_LOCATION. Defaults to project base directory. |
Enable Verbose Option | FDSQ_INP_VERBOSE_OPTION | No | Toggles logging level when more debug information is needed. |
Analysis Properties | FDSQ_INP_ANALYSIS_PROPERTIES | No | Define the sonar project properties manually. This will override all other fields. Required properties: sonar.host.url and sonar.projectKey |
...
- You must have a sonarQube instance and Sonar Scanner downloaded.
- If you choose to use a token over username and password for authentication you can generate it on your SonarQube Server. To get a SonarQube Token: login to your SonarQube Instance and navigate to My Account->Security->Generate New Token. Make sure you copy and save this token somewhere secure because after you leave this screen you will not beable to see your token again.
Example (WIP)
To start running Sonar Scans from FlexDeploy, we will have to