Executes a sonar scan. This operation takes inputs for both a Sonar project properties path and an analysis properties file. If both are provided, the plugin will use the analysis properties and do nothing with the path.
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 |
---|---|---|---|
Sonar Project Properties Path | FDSQ_INP_PROPERTIES_FILE_PATH | No | Absolute file path of the sonar-project.properties file. |
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 |
...
Output Name | Description |
---|---|
Id of the task or Sonar scan started. | |
FDSQ_OUT_DASHBOARD_URL | SonarQube instance dashboard url. Note that you will be able to access the updated dashboard once the server has processed the submitted analysis report. |
Artifacts
This operation doesn’t consume or produce any artifacts.
...
This operation will execute on any one of the selected endpoints and will be random in the determination of which one.
Special Considerations
- You must have a sonarQube instance and Sonar Scanner downloaded.
SonarQube instance required
Expand title Get started with a SonarQube Instance in two minutes Expand title Installing from Zip File
Download the scannerDownload the SonarQube Community Edition.
As a non-
root
user, unzip it, let's say in C:\sonarqube or /opt/sonarqube.As anon-
root
user, start the SonarQube Server:Code Block theme Eclipse # On Windows, execute: C:\sonarqube\bin\windows-x86-xx\StartSonar.bat # On other operating systems, as a non-root user execute: /opt/sonarqube/bin/[OS]/sonar.sh console
Info title Troubleshooting If you're having trouble starting your server for the first time (or any subsequent time!) the first thing to do is check your server logs. You'll find them in
$SONARQUBE_HOME/logs
:- sonar.log - Log for the main process. Holds general information about startup and shutdown. You'll get overall status here but not details. Look to the other logs for that.
- web.log - Information about initial connection to the database, database migration and reindexing, and the processing of HTTP requests. This includes database and search engine logs related to those requests.
- ce.log - Information about background task processing and the database and search engine logs related to those tasks.
- es.log - Ops information from the search engine, such as Elasticsearch startup, health status changes, cluster-, node- and index-level operations, etc.
Log in to http://localhost:9000 with System Administrator credentials (login=admin, password=admin).
Click the Create new project button to analyze your first project.
- Sonar Scanner installed on target environment
- Download the CLI Sonar Scanner
Example (WIP)
To start running Sonar Scans from FlexDeploy, we will need to first authenticate.
- 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