Support sonarcloud in python projects
[releng/global-jjb.git] / jjb / lf-python-jobs.yaml
index 7cae5b8..df82d8f 100644 (file)
     pre-build-script: "# pre-build script goes here"
     python-version: python3
     sonar-mvn-goal: "sonar:sonar"
+    sonarcloud: false
+    sonarcloud-project-key: ""
+    sonarcloud-project-organization: ""
+    sonarcloud-api-token: ""
     stream: master
     submodule-recursive: true
     submodule-timeout: 10
     submodule-disable: false
+    tox-dir: "."
+    tox-envs: ""
 
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
           project: "{project}"
           branch: "{branch}"
           stream: "{stream}"
+      - lf-infra-tox-parameters:
+          tox-dir: "{tox-dir}"
+          tox-envs: "{tox-envs}"
       - string:
           name: ARCHIVE_ARTIFACTS
           default: "{archive-artifacts}"
       - lf-provide-maven-settings:
           global-settings-file: "{mvn-global-settings}"
           settings-file: "{mvn-settings}"
-      - lf-infra-maven-sonar:
-          java-version: "{java-version}"
-          mvn-goals: "{mvn-goals}"
-          mvn-settings: "{mvn-settings}"
-          mvn-version: "{mvn-version}"
+      # With SonarCloud
+      - conditional-step:
+          condition-kind: boolean-expression
+          condition-expression: "{sonarcloud}"
+          steps:
+            - shell: echo 'Using SonarCloud'
+            - lf-infra-maven-sonarcloud:
+                java-version: "{java-version}"
+                mvn-goals: "{mvn-goals}"
+                mvn-settings: "{mvn-settings}"
+                mvn-version: "{mvn-version}"
+                sonarcloud-project-key: "{sonarcloud-project-key}"
+                sonarcloud-project-organization: "{sonarcloud-project-organization}"
+                sonarcloud-api-token: "{sonarcloud-api-token}"
+      # With SonarQube
+      - conditional-step:
+          condition-kind: not
+          condition-operand:
+            condition-kind: boolean-expression
+            condition-expression: "{sonarcloud}"
+          steps:
+            - shell: echo 'Using SonarQube'
+            - lf-infra-maven-sonar:
+                java-version: "{java-version}"
+                mvn-goals: "{mvn-goals}"
+                mvn-settings: "{mvn-settings}"
+                mvn-version: "{mvn-version}"
 
     publishers:
       - lf-infra-publish