Merge "Change setup for Go Sonar of nonrtric consumer"
[ci-management.git] / jjb / nonrtric / nonrtric.yaml
index 722998a..57434c4 100644 (file)
@@ -9,25 +9,23 @@
     name: nonrtric-info
     project: nonrtric
     project-name: nonrtric
-    branch: master
+    build-node: centos7-builder-1c-1g
     jobs:
       - gerrit-info-yaml-verify
 
-- nonrtric_jdk11: &nonrtric_jdk11
-    # values apply to all projects here
-    name: nonrtric-jdk11
+- nonrtric_jdk_common: &nonrtric_jdk_common
+    name: nonrtric-jdk-common
     # git repo
     project: nonrtric
     # jenkins job name prefix
     project-name: nonrtric
     # maven settings file has docker credentials
     mvn-settings: nonrtric-settings
-    # defaults.yaml value is NOT used due to value set in lf-maven-jobs.yaml
-    java-version: openjdk11
     mvn-version: mvn36
+    java-version: openjdk11
 
 - project:
-    <<: *nonrtric_jdk11
+    <<: *nonrtric_jdk_common
     mvn-params: -Dbuild.number=${{BUILD_NUMBER}}
     jobs:
       - gerrit-maven-docker-verify
       - gerrit-maven-docker-stage
     stream:
       - master:
-          branch: master
\ No newline at end of file
+          branch: master
+      - cherry:
+          branch: cherry
+      - dawn:
+          branch: dawn
+
+# nonrtric:policy-agent
+# Maven artifacts for nonrtric-policy-agent
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-policy-agent
+    project-name: '{name}'
+    mvn-opts: '-Ddocker.skip=true'
+    mvn-params: '-f policy-agent'
+    gerrit_trigger_file_paths:
+      - compare-type: REG_EXP
+        pattern: 'policy-agent/.*'
+    build-node: ubuntu1804-builder-4c-4g
+    jobs:
+      - gerrit-maven-verify
+      - gerrit-maven-merge
+      - gerrit-maven-stage
+      - gerrit-maven-clm
+    stream:
+      - master:
+          branch: master
+      - cherry:
+          branch: cherry
+      - dawn:
+          branch: dawn
+
+# nonrtric:sdnc-a1-controller
+# Maven artifacts for nonrtric-sdnc-a1-controller
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-sdnc-a1-controller
+    project-name: '{name}'
+    mvn-opts: '-Ddocker.skip=true'
+    mvn-params: '-f sdnc-a1-controller/northbound'
+    gerrit_trigger_file_paths:
+      - compare-type: REG_EXP
+        pattern: 'sdnc-a1-controller/northbound/.*'
+    build-node: ubuntu1804-builder-4c-4g
+    jobs:
+      - gerrit-maven-verify
+      - gerrit-maven-merge
+      - gerrit-maven-stage
+      - gerrit-maven-clm
+    stream:
+      - master:
+          branch: master
+      - cherry:
+          branch: cherry
+      - dawn:
+          branch: dawn
+
+# nonrtric:enrichment-coordinator-service
+# Maven artifacts for nonrtric-enrichment-coordinator-service
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-enrichment-coordinator-service
+    project-name: '{name}'
+    mvn-opts: '-Ddocker.skip=true'
+    mvn-params: '-f enrichment-coordinator-service'
+    gerrit_trigger_file_paths:
+      - compare-type: REG_EXP
+        pattern: 'enrichment-coordinator-service/.*'
+    build-node: ubuntu1804-builder-4c-4g
+    jobs:
+      - gerrit-maven-verify
+      - gerrit-maven-merge
+      - gerrit-maven-stage
+      - gerrit-maven-clm
+    stream:
+      - master:
+          branch: master
+      - cherry:
+          branch: cherry
+      - dawn:
+          branch: dawn
+
+# nonrtric:r-app-catalogue
+# Maven artifacts for r-app-catalogue
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-r-app-catalogue
+    project-name: '{name}'
+    mvn-opts: '-Ddocker.skip=true'
+    mvn-params: '-f r-app-catalogue'
+    gerrit_trigger_file_paths:
+      - compare-type: REG_EXP
+        pattern: 'r-app-catalogue/.*'
+    build-node: ubuntu1804-builder-4c-4g
+    jobs:
+      - gerrit-maven-verify
+      - gerrit-maven-merge
+      - gerrit-maven-stage
+      - gerrit-maven-clm
+    stream:
+      - master:
+          branch: master
+      - cherry:
+          branch: cherry
+      - dawn:
+          branch: dawn
+
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-o-ru-closed-loop-recovery
+    project-name: '{name}'
+    # image name
+    docker-name: 'o-ran-sc/nonrtric-o-ru-closed-loop-recovery'
+    # get tag from YAML
+    container-tag-method: yaml-file
+    # use host network to clone from our gerrit
+    docker-build-args: '--network=host'
+    # Directory with Dockerfile
+    docker-root: 'test/usecases/oruclosedlooprecovery/scriptversion/app'
+    # Limit build trigger to appropriate files
+    gerrit_trigger_file_paths:
+      - compare-type: REG_EXP
+        pattern: 'test/usecases/oruclosedlooprecovery/scriptversion/app/.*'
+    build-node: ubuntu1804-docker-4c-4g
+    # Includes verify and merge jobs
+    jobs:
+      - "{project-name}-gerrit-docker-jobs"
+    stream:
+      - master:
+          branch: master
+      - dawn:
+          branch: dawn
+
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-dmaap-mediator-producer
+    project-name: '{name}'
+    # image name
+    docker-name: 'o-ran-sc/nonrtric-dmaap-mediator-producer'
+    # get tag from YAML
+    container-tag-method: yaml-file
+    # use host network to clone from our gerrit
+    docker-build-args: '--network=host'
+    # Directory with Dockerfile
+    docker-root: 'dmaap-mediator-producer'
+    # Limit build trigger to appropriate files
+    gerrit_trigger_file_paths:
+      - compare-type: REG_EXP
+        pattern: 'dmaap-mediator-producer/.*'
+    build-node: ubuntu1804-docker-4c-4g
+    # Includes verify and merge jobs
+    jobs:
+      - "{project-name}-gerrit-docker-jobs"
+    stream:
+      - master:
+          branch: master
+
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-o-ru-closed-loop-consumer
+    project-name: '{name}'
+    # image name
+    docker-name: 'o-ran-sc/nonrtric-o-ru-closed-loop-consumer'
+    # get tag from YAML
+    container-tag-method: yaml-file
+    # use host network to clone from our gerrit
+    docker-build-args: '--network=host'
+    # Directory with Dockerfile
+    docker-root: 'test/usecases/oruclosedlooprecovery/goversion/'
+    # Limit build trigger to appropriate files
+    gerrit_trigger_file_paths:
+      - compare-type: REG_EXP
+        pattern: 'test/usecases/oruclosedlooprecovery/goversion/.*'
+    build-node: ubuntu1804-docker-4c-4g
+    # Includes verify and merge jobs
+    jobs:
+      - "{project-name}-gerrit-docker-jobs"
+    stream:
+      - master:
+          branch: master
+
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-dmaap-mediator-producer-sonar
+    project-name: '{name}'
+    # prescan script requires ubuntu
+    # golang is only on docker-enabled nodes
+    build-node: ubuntu1804-docker-4c-4g
+    sonar-prescan-script: !include-raw-escape: prescan-dmaapmediatorproducer-ubuntu.sh
+    sonar-project-file: ""
+    java-version: openjdk11
+    # use sonarcloud values from defaults.yaml
+    sonar-properties: |
+        # Required metadata
+        sonar.login={sonarcloud_api_token}
+        sonar.projectKey={sonarcloud_project_organization}_{name}
+        sonar.projectName={project-name}
+        sonar.organization={sonarcloud_project_organization}
+        # Encoding
+        sonar.build.sourceEncoding=UTF-8
+        # Language
+        sonar.language=go
+        # Source
+        sonar.sources=.
+        # Unit tests
+        sonar.go.coverage.reportPaths=dmaap-mediator-producer/coverage.txt
+        # Inclusions
+        sonar.inclusions=dmaap-mediator-producer/internal/**/**.go
+        # Exclusions
+        sonar.exclusions=dmaap-mediator-producer/main.go,dmaap-mediator-producer/mocks/**.go,dmaap-mediator-producer/internal/**/**_test.go
+    jobs:
+      - gerrit-sonar-prescan-script
+
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-o-ru-closed-loop-consumer-sonar
+    project-name: '{name}'
+    # prescan script requires ubuntu
+    # golang is only on docker-enabled nodes
+    build-node: ubuntu1804-docker-4c-4g
+    sonar-prescan-script: !include-raw-escape: prescan-oruclosedloopconsumer-ubuntu.sh
+    sonar-project-file: ""
+    java-version: openjdk11
+    # use sonarcloud values from defaults.yaml
+    sonar-properties: |
+        # Required metadata
+        sonar.login={sonarcloud_api_token}
+        sonar.projectKey={sonarcloud_project_organization}_{name}
+        sonar.projectName={project-name}
+        sonar.organization={sonarcloud_project_organization}
+        # Encoding
+        sonar.build.sourceEncoding=UTF-8
+        # Language
+        sonar.language=go
+        # Source
+        sonar.sources=.
+        # Unit tests
+        sonar.go.coverage.reportPaths=test/usecases/oruclosedlooprecovery/goversion/coverage.txt
+        # Inclusions
+        sonar.inclusions=test/usecases/oruclosedlooprecovery/goversion/internal/**/**.go,test/usecases/oruclosedlooprecovery/goversion/**.go
+        # Exclusions
+        sonar.exclusions=test/usecases/oruclosedlooprecovery/goversion/mocks/**.go,test/usecases/oruclosedlooprecovery/goversion/internal/**/**_test.go,test/usecases/oruclosedlooprecovery/goversion/simulator/**.go
+    jobs:
+      - gerrit-sonar-prescan-script
+
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-release
+    # maven release requires sigul which requires centos
+    # container release requires docker
+    build-node: centos7-docker-2c-8g
+    jobs:
+      - '{project-name}-gerrit-release-jobs'
+
+- project:
+    <<: *nonrtric_jdk_common
+    name: nonrtric-sonar
+    project-name: '{name}'
+    # template goal install builds docker image unnecessarily
+    mvn-params: '-Ddocker.skip=true'
+    sonarcloud: true
+    sonarcloud-api-token: '{sonarcloud_api_token}'
+    sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
+    sonarcloud-project-organization: '{sonarcloud_project_organization}'
+    jobs:
+      - gerrit-maven-sonar