metadata: name: sonarExecuteScan description: Executes the Sonar scanner longDescription: The step executes the [sonar-scanner](https://docs.sonarqube.org/display/SCAN/Analyzing+with+SonarQube+Scanner) cli command to scan the defined sources and publish the results to a SonarQube instance. spec: inputs: params: - name: host type: string description: The URL to the Sonar backend. scope: - PARAMETERS - STAGES - STEPS aliases: - name: sonarServerUrl - name: token type: string description: Token used to authenticate with the Sonar Server. scope: - PARAMETERS aliases: - name: sonarToken - name: organization type: string description: "SonarCloud.io only: Organization that the project will be assigned to in SonarCloud.io." scope: - PARAMETERS - STAGES - STEPS - name: customTlsCertificateLinks type: string description: List of comma-separated download links to custom TLS certificates. This is required to ensure trusted connections to instances with custom certificates. scope: - PARAMETERS - STAGES - STEPS - name: sonarScannerDownloadUrl type: string description: "URL to the sonar-scanner-cli archive." default: https://binaries.sonarsource.com/Distribution/sonar-scanner-cli/sonar-scanner-cli-4.3.0.2102-linux.zip scope: - PARAMETERS - STAGES - STEPS - name: projectVersion type: string description: "The project version that is reported to SonarQube." scope: - PARAMETERS - STAGES - STEPS resourceRef: - name: commonPipelineEnvironment param: artifactVersion - name: options type: string description: A list of options which are passed to the sonar-scanner. scope: - PARAMETERS - STAGES - STEPS # Parameters for PR-Handling - name: changeId type: string description: "Pull-Request only: The id of the pull-request." scope: - PARAMETERS - name: changeBranch type: string description: "Pull-Request only: The name of the pull-request branch." scope: - PARAMETERS - name: changeTarget type: string description: "Pull-Request only: The name of the base branch." scope: - PARAMETERS - name: pullRequestProvider type: string description: "Pull-Request only: The scm provider." default: GitHub scope: - PARAMETERS - STAGES - STEPS - name: owner type: string description: "Pull-Request only: The owner of the scm repository." scope: - GENERAL - PARAMETERS - STAGES - STEPS aliases: - name: githubOrg resourceRef: - name: commonPipelineEnvironment param: github/owner - name: repository type: string description: "Pull-Request only: The scm repository." scope: - GENERAL - PARAMETERS - STAGES - STEPS aliases: - name: githubRepo resourceRef: - name: commonPipelineEnvironment param: github/repository # Parameters for legacy PR-Handling - name: githubToken type: string description: "Pull-Request only: Token for Github to set status on the Pull-Request." scope: - PARAMETERS - name: disableInlineComments type: bool description: "Pull-Request only: Disables the pull-request decoration with inline comments. DEPRECATED: only supported in SonarQube < 7.2" scope: - PARAMETERS - STAGES - STEPS - name: legacyPRHandling type: bool description: "Pull-Request only: Activates the pull-request handling using the [GitHub Plugin](https://docs.sonarqube.org/display/PLUG/GitHub+Plugin). DEPRECATED: only supported in SonarQube < 7.2" scope: - PARAMETERS - STAGES - STEPS - name: githubApiUrl type: string description: "Pull-Request only: The URL to the Github API. see [GitHub plugin docs](https://docs.sonarqube.org/display/PLUG/GitHub+Plugin#GitHubPlugin-Usage) DEPRECATED: only supported in SonarQube < 7.2" scope: - GENERAL - PARAMETERS - STAGES - STEPS default: https://api.github.com secrets: - name: sonarTokenCredentialsId type: jenkins description: Jenkins 'Secret text' credentials ID containing the token used to authenticate with the Sonar Server. - name: githubTokenCredentialsId type: jenkins description: Jenkins 'Secret text' credentials ID containing the token used to authenticate with the Github Server. containers: - name: sonar image: node:lts-stretch