CI: Deprecate Jenkins Sonar jobs
[ci-management.git] / jjb / nonrtric / nonrtric.yaml
index 108d9e9..0353ea8 100644 (file)
@@ -5,16 +5,7 @@
     views:
       - project-view
 
-- project:
-    name: nonrtric-info
-    project: nonrtric
-    project-name: nonrtric
-    build-node: centos7-builder-1c-1g
-    jobs:
-      - gerrit-info-yaml-verify
-
-- nonrtric_jdk_common: &nonrtric_jdk_common
-    name: nonrtric-jdk-common
+- _nonrtric_jdk_common: &nonrtric_jdk_common
     # git repo
     project: nonrtric
     # jenkins job name prefix
     # maven settings file has docker credentials
     mvn-settings: nonrtric-settings
     mvn-version: mvn36
-    java-version: openjdk11
+    java-version: openjdk17
+
+- _nonrtric_docker_common: &nonrtric_docker_common
+    <<: *nonrtric_jdk_common
+    # get tag from YAML
+    container-tag-method: yaml-file
+    # use host network to clone from our gerrit
+    docker-build-args: "--network=host"
 
 - project:
     <<: *nonrtric_jdk_common
-    mvn-params: -Dbuild.number=${{BUILD_NUMBER}}
+    name: nonrtric-release
+    # maven release requires sigul which requires centos
+    # container release requires docker
+    build-node: centos7-docker-2c-8g
     jobs:
-      - gerrit-maven-docker-verify
-      - gerrit-maven-docker-merge
-      - gerrit-maven-docker-stage
-    stream:
-      - master:
-          branch: master
-      - cherry:
-          branch: cherry
-      - dawn:
-          branch: dawn
+      - "{project-name}-gerrit-release-jobs"
 
-# nonrtric:a1-policy-management-service
-# Maven artifacts for nonrtric-a1-policy-management-service
+# Jobs to verify / build / sonar for functional releaseable funtions
 - project:
-    <<: *nonrtric_jdk_common
-    name: nonrtric-a1-policy-management-service/
-    project-name: '{name}'
-    mvn-opts: '-Ddocker.skip=true'
-    mvn-params: '-f a1-policy-management-service/'
+    <<: *nonrtric_docker_common
+    name: nonrtric-plt-auth-token-fetch
+    project-name: "{name}"
+    # image name
+    docker-name: "o-ran-sc/nonrtric-plt-auth-token-fetch"
+    # Directory with Dockerfile
+    docker-root: "auth-token-fetch"
+    # Directory where go test should be run
+    go-root: "auth-token-fetch"
+    # Limit build trigger to appropriate files
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: 'a1-policy-management-service/.*'
-    build-node: ubuntu1804-builder-4c-4g
+        pattern: "auth-token-fetch/.*"
+    build-node: ubuntu1804-docker-4c-4g
+    # Includes verify and merge jobs
     jobs:
-      - gerrit-maven-verify
-      - gerrit-maven-merge
-      - gerrit-maven-stage
-      - gerrit-maven-clm
+      - "{project-name}-gerrit-docker-jobs"
+      - gerrit-go-verify
     stream:
       - master:
           branch: master
-
-# 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'
+      - g-release:
+          java-version: openjdk11
+          branch: g-release
+      - h-release:
+          branch: h-release
+      - i-release:
+          branch: i-release
+
+# Jobs to verify / build sample uService images
+- project:
+    <<: *nonrtric_docker_common
+    name: nonrtric-sample-helloworld-sme-invoker
+    project-name: "{name}"
+    # image name
+    docker-name: "o-ran-sc/nonrtric-sample-helloworld-sme-invoker"
+    # Directory with Dockerfile
+    docker-root: "sample-services/hello-world-sme-invoker"
+    # Limit build trigger to appropriate files
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: 'policy-agent/.*'
-    build-node: ubuntu1804-builder-4c-4g
+        pattern: "sample-services/hello-world-sme-invoker/.*"
+    build-node: ubuntu1804-docker-4c-4g
+    # Includes verify and merge jobs
     jobs:
-      - gerrit-maven-verify
-      - gerrit-maven-merge
-      - gerrit-maven-stage
-      - gerrit-maven-clm
+      - "{project-name}-gerrit-docker-jobs"
     stream:
-      - cherry:
-          branch: cherry
-      - dawn:
-          branch: dawn
+      - master:
+          branch: master
 
-# 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'
+    <<: *nonrtric_docker_common
+    name: nonrtric-sample-helloworld
+    project-name: "{name}"
+    # image name
+    docker-name: "o-ran-sc/nonrtric-sample-helloworld"
+    # Directory with Dockerfile
+    docker-root: "sample-services/hello-world"
+    # Limit build trigger to appropriate files
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: 'sdnc-a1-controller/northbound/.*'
-    build-node: ubuntu1804-builder-4c-4g
+        pattern: "sample-services/hello-world/.*"
+    build-node: ubuntu1804-docker-4c-4g
+    # Includes verify and merge jobs
     jobs:
-      - gerrit-maven-verify
-      - gerrit-maven-merge
-      - gerrit-maven-stage
-      - gerrit-maven-clm
+      - "{project-name}-gerrit-docker-jobs"
     stream:
       - master:
           branch: master
-      - cherry:
-          branch: cherry
-      - dawn:
-          branch: dawn
 
-# nonrtric:information-coordinator-service
-# Maven artifacts for nonrtric-information-coordinator-service
 - project:
-    <<: *nonrtric_jdk_common
-    name: nonrtric-information-coordinator-service
-    project-name: '{name}'
-    mvn-opts: '-Ddocker.skip=true'
-    mvn-params: '-f information-coordinator-service'
+    <<: *nonrtric_docker_common
+    name: nonrtric-sample-icsproducer
+    project-name: "{name}"
+    # image name
+    docker-name: "o-ran-sc/nonrtric-sample-icsproducer"
+    # Directory with Dockerfile
+    docker-root: "sample-services/ics-producer-consumer/producer"
+    # Limit build trigger to appropriate files
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: 'information-coordinator-service/.*'
-    build-node: ubuntu1804-builder-4c-4g
+        pattern: "sample-services/ics-producer-consumer/producer/.*"
+    build-node: ubuntu1804-docker-4c-4g
+    post_docker_build_script: !include-raw-escape:
+      - ics-producer-consumer-tests.sh
+    # Includes verify and merge jobs
     jobs:
-      - gerrit-maven-verify
-      - gerrit-maven-merge
-      - gerrit-maven-stage
-      - gerrit-maven-clm
+      - "{project-name}-gerrit-docker-jobs"
     stream:
       - master:
           branch: master
 
-# 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'
+    <<: *nonrtric_docker_common
+    name: nonrtric-sample-icsconsumer
+    project-name: "{name}"
+    # image name
+    docker-name: "o-ran-sc/nonrtric-sample-icsconsumer"
+    # Directory with Dockerfile
+    docker-root: "sample-services/ics-producer-consumer/consumer"
+    # Limit build trigger to appropriate files
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: 'enrichment-coordinator-service/.*'
-    build-node: ubuntu1804-builder-4c-4g
+        pattern: "sample-services/ics-producer-consumer/consumer/.*"
+    build-node: ubuntu1804-docker-4c-4g
+    post_docker_build_script: !include-raw-escape:
+      - ics-producer-consumer-tests.sh
+    # Includes verify and merge jobs
     jobs:
-      - gerrit-maven-verify
-      - gerrit-maven-merge
-      - gerrit-maven-stage
-      - gerrit-maven-clm
+      - "{project-name}-gerrit-docker-jobs"
     stream:
-      - cherry:
-          branch: cherry
-      - dawn:
-          branch: dawn
+      - master:
+          branch: master
 
-# nonrtric:r-app-catalogue
-# Maven artifacts for r-app-catalogue
+# Jobs to verify / build images for testing
 - project:
-    <<: *nonrtric_jdk_common
-    name: nonrtric-r-app-catalogue
-    project-name: '{name}'
-    mvn-opts: '-Ddocker.skip=true'
-    mvn-params: '-f r-app-catalogue'
+    <<: *nonrtric_docker_common
+    name: nonrtric-test-kafka-procon
+    project-name: "{name}"
+    # image name
+    docker-name: "kafka-procon"
+    # Directory with Dockerfile
+    docker-root: "test/kafka-procon"
+    # Limit build trigger to appropriate files
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: 'r-app-catalogue/.*'
-    build-node: ubuntu1804-builder-4c-4g
+        pattern: "test/kafka-procon/.*"
+    build-node: ubuntu1804-docker-4c-4g
+    # Includes verify and merge jobs
     jobs:
-      - gerrit-maven-verify
-      - gerrit-maven-merge
-      - gerrit-maven-stage
-      - gerrit-maven-clm
+      - gerrit-docker-verify
     stream:
       - master:
           branch: master
-      - cherry:
-          branch: cherry
-      - dawn:
-          branch: dawn
 
 - project:
-    <<: *nonrtric_jdk_common
-    name: nonrtric-o-ru-closed-loop-recovery
-    project-name: '{name}'
+    <<: *nonrtric_docker_common
+    name: nonrtric-test-http-https-proxy
+    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'
+    docker-name: "nodejs-kube-proxy"
     # Directory with Dockerfile
-    docker-root: 'test/usecases/oruclosedlooprecovery/scriptversion/app'
+    docker-root: "test/http-https-proxy"
     # Limit build trigger to appropriate files
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: 'test/usecases/oruclosedlooprecovery/scriptversion/app/.*'
+        pattern: "test/http-https-proxy/.*"
     build-node: ubuntu1804-docker-4c-4g
     # Includes verify and merge jobs
     jobs:
-      - "{project-name}-gerrit-docker-jobs"
+      - gerrit-docker-verify
     stream:
       - master:
           branch: master
-      - dawn:
-          branch: dawn
 
 - project:
-    <<: *nonrtric_jdk_common
-    name: nonrtric-dmaap-mediator-producer
-    project-name: '{name}'
+    <<: *nonrtric_docker_common
+    name: nonrtric-test-cr
+    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'
+    docker-name: "callback-receiver"
     # Directory with Dockerfile
-    docker-root: 'dmaap-mediator-producer'
+    docker-root: "test/cr"
     # Limit build trigger to appropriate files
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: 'dmaap-mediator-producer/.*'
+        pattern: "test/cr/.*"
     build-node: ubuntu1804-docker-4c-4g
     # Includes verify and merge jobs
     jobs:
-      - "{project-name}-gerrit-docker-jobs"
+      - gerrit-docker-verify
     stream:
       - master:
           branch: master
 
 - project:
-    <<: *nonrtric_jdk_common
-    name: nonrtric-o-ru-closed-loop-consumer
-    project-name: '{name}'
+    <<: *nonrtric_docker_common
+    name: nonrtric-test-prodstub
+    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'
+    docker-name: "producer-stub"
     # Directory with Dockerfile
-    docker-root: 'test/usecases/oruclosedlooprecovery/goversion/'
+    docker-root: "test/prodstub"
     # Limit build trigger to appropriate files
     gerrit_trigger_file_paths:
       - compare-type: REG_EXP
-        pattern: 'test/usecases/oruclosedlooprecovery/goversion/.*'
+        pattern: "test/prodstub/.*"
     build-node: ubuntu1804-docker-4c-4g
     # Includes verify and merge jobs
     jobs:
-      - "{project-name}-gerrit-docker-jobs"
+      - gerrit-docker-verify
     stream:
       - master:
           branch: master
 
 - project:
-    <<: *nonrtric_jdk_common
-    name: nonrtric-dmaap-mediator-producer-sonar
-    project-name: nonrtric-dmaap-mediator-producer-sonar
-    # 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}_nonrtric-dmaap-mediator-producer
-        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/stub/**.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: nonrtric-o-ru-closed-loop-consumer-sonar
-    # prescan script requires ubuntu
-    # golang is only on docker-enabled nodes
+    <<: *nonrtric_docker_common
+    name: nonrtric-test-mrstub
+    project-name: "{name}"
+    # image name
+    docker-name: "mrstub"
+    # Directory with Dockerfile
+    docker-root: "test/mrstub"
+    # Limit build trigger to appropriate files
+    gerrit_trigger_file_paths:
+      - compare-type: REG_EXP
+        pattern: "test/mrstub/.*"
     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}_nonrtric-o-ru-closed-loop-consumer
-        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/**_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}_nonrtric'
-    sonarcloud-project-organization: '{sonarcloud_project_organization}'
+    # Includes verify and merge jobs
     jobs:
-      - gerrit-maven-sonar
+      - gerrit-docker-verify
+    stream:
+      - master:
+          branch: master