LintingΒΆ

In current version OpeNgine supports SonarQube as a tool for linting. SonarQube will be deployed with predefined plugins and connected to the CI/CD tool of your choice (currently, Jenkins and CloudBuild are supported for integration with SonarQube).

SonarQube should be installed as a separate components with the following configuration block:

linting:
  target-kuber-cluster:
    type: provision-sonarqube-local
    helm:
      repo:
        name: "sonarqube"
        url: "https://kubernetes-charts.storage.googleapis.com/"
      chart:
        app_name: "opengine-linting"
        name: "sonarqube"
        version: "2.1.2"
        appVersion: "7.9-community"
        timeout: 500

SonarQube settings are defined using YAML syntax as described in the table below

Element

Description

linting

Parent element of linting configuration that contains a configuration of applications that are to be deployed in clusters managed by OpeNgine.

target-kuber-cluster

Target kubernetes cluster for deploying sonarqube.

type

For sonarqube, type can have only one value - provision-sonarqube-local

helm

Parent element containing Helm chart details. Allows to control which version is installed and from which repository.

helm.repo.name and helm.repo.url

Chart name and repository location.

helm.chart

List of settings including: application version, chart version, appication name etc.