Merge "Jenkins jjb setup for features"
authorJessica Wagantall <jwagantall@linuxfoundation.org>
Wed, 25 Mar 2020 01:03:44 +0000 (01:03 +0000)
committerGerrit Code Review <gerrit@o-ran-sc.org>
Wed, 25 Mar 2020 01:03:44 +0000 (01:03 +0000)
global-jjb
jjb/it-dev/it-dev-docker.yaml [new file with mode: 0644]
jjb/portal-nonrtric-controlpanel/portal-nonrtric-controlpanel.yaml
jjb/ric-plt-a1/ric-plt-a1.yaml
jjb/sim-a1-interface/sim-a1-interface.yaml

index b55451a..769456c 160000 (submodule)
@@ -1 +1 @@
-Subproject commit b55451a53da28d40c62de5cae462302a32fe4c31
+Subproject commit 769456c55e5b9f92fe1b8c10088bc4ac2dde79c8
diff --git a/jjb/it-dev/it-dev-docker.yaml b/jjb/it-dev/it-dev-docker.yaml
new file mode 100644 (file)
index 0000000..08701b4
--- /dev/null
@@ -0,0 +1,52 @@
+---
+# Job configurations for base docker build images
+
+# This macro factors out common configuration
+- it_dev_docker_common: &it_dev_docker_common
+    name: it-dev-docker-common
+    # git repo
+    project: it/dev
+    # maven settings file has docker credentials
+    mvn-settings: it-dev-settings
+    # build every Saturday
+    cron: 'H H * * 6'
+    # use host network to clone from our gerrit
+    docker-build-args: '--network=host'
+    # get tag from YAML
+    container-tag-method: yaml-file
+    # Jenkins job prefix
+    project-name: 'it-dev-{img}'
+    # Docker image name
+    docker-name: '{img}'
+    # Directory with Dockerfile
+    docker-root: 'bldr-imgs/{img}'
+    # Limit build trigger to appropriate files;
+    gerrit_trigger_file_paths:
+      - compare-type: REG_EXP
+        pattern: 'bldr-imgs/{img}/.*'
+    # Includes verify and merge jobs
+    jobs:
+      - '{project-name}-gerrit-docker-jobs'
+    # Only build master branch
+    stream:
+      - master:
+          branch: master
+
+# Each project name is a subdirectory in bldr-images
+# with a Dockerfile and a container-tag.yaml file
+# TODO: coalesce name+img after removing projects from ci-management
+
+- project:
+    name: it-dev-alpine3
+    img: bldr-alpine3
+    <<: *it_dev_docker_common
+
+- project:
+    name: it-dev-alpine3-go
+    img: bldr-alpine3-go
+    <<: *it_dev_docker_common
+
+- project:
+    name: it-dev-ubuntu18-c-go
+    img: bldr-ubuntu18-c-go
+    <<: *it_dev_docker_common
index 19aaa52..9a31692 100644 (file)
     build-node: centos7-builder-1c-1g
     jobs:
       - gerrit-info-yaml-verify
+
+- portal_nonrtric_controlpanel_common: &portal_nonrtric_controlpanel_common
+    # values apply to all projects here
+    name: portal-nonrtric-controlpanel-common
+    # git repo
+    project: portal/nonrtric-controlpanel
+    # jenkins job name prefix
+    project-name: portal-nonrtric-controlpanel
+    # maven settings file has docker credentials
+    mvn-settings: portal-nonrtric-controlpanel-settings
+    # defaults.yaml value is NOT used due to value set in lf-maven-jobs.yaml
+    java-version: openjdk11
+    mvn-version: mvn36
+
+- project:
+    <<: *portal_nonrtric_controlpanel_common
+    mvn-params: -Dbuild.number=${{BUILD_NUMBER}}
+    jobs:
+      - "{project-name}-gerrit-maven-docker-jobs"
+    stream:
+      - master:
+          branch: master
+
+- project:
+    <<: *portal_nonrtric_controlpanel_common
+    name: portal-nonrtric-controlpanel-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:
+    <<: *portal_nonrtric_controlpanel_common
+    name: portal-nonrtric-controlpanel-sonar
+    # 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
\ No newline at end of file
index 13b17dc..d4f5ade 100644 (file)
@@ -27,7 +27,7 @@
     <<: *a1_common
     name: ric-plt-a1-docker
     # image name
-    docker-name: 'o-ran-sc/{name}'
+    docker-name: 'o-ran-sc/ric-plt-a1'
     # source of docker tag
     container-tag-method: yaml-file
     # use host network
index b4e3dfd..f8391e0 100644 (file)
@@ -1,4 +1,10 @@
 ---
+- project:
+    name: sim-a1-interface-project-view
+    project-name: sim-a1-interface
+    views:
+      - project-view
+
 - project:
     name: sim-a1-interface-info
     project: sim/a1-interface
@@ -6,3 +12,58 @@
     build-node: centos7-builder-1c-1g
     jobs:
       - gerrit-info-yaml-verify
+
+- sim_a1_interface_common: &sim_a1_interface_common
+    # values apply to all projects here
+    name: sim-a1-interface-common
+    # git repo
+    project: sim/a1-interface
+    # jenkins job name prefix
+    project-name: sim-a1-interface
+    # maven settings file has docker credentials
+    mvn-settings: sim-a1-interface-settings
+
+- project:
+    <<: *sim_a1_interface_common
+    name: a1-simulator
+    # image name
+    docker-name: 'o-ran-sc/{name}'
+    # source of docker tag
+    container-tag-method: yaml-file
+    # use tag yaml from subdirectory
+    container-tag-yaml-dir: near-rt-ric-simulator/scripts
+    # use host network
+    docker-build-args: '-f near-rt-ric-simulator/scripts/Dockerfile --network=host'
+    build-node: ubuntu1804-docker-4c-4g
+    stream:
+      - master:
+          branch: master
+    jobs:
+      - '{project-name}-gerrit-docker-jobs'
+
+- project:
+    <<: *sim_a1_interface_common
+    name: sim-a1-interface-sonarqube
+    python-version: python3
+    build-node: ubuntu1804-builder-2c-2g
+    sonar-project-file: ""
+    sonar-properties: |
+        sonar.login={sonarcloud_api_token}
+        sonar.projectKey={sonarcloud_project_organization}_{project-name}
+        sonar.projectName={project-name}
+        sonar.organization={sonarcloud_project_organization}
+        sonar.build.sourceEncoding=UTF-8
+        sonar.sources=near-rt-ric-simulator
+        sonar.python.coverage.reportPaths=coverage.xml
+    jobs:
+      - gerrit-tox-sonarqube
+
+
+- project:
+    <<: *sim_a1_interface_common
+    name: sim-a1-interface-release
+    # maven release requires sigul which requires centos
+    # container release requires docker
+    build-node: centos7-docker-2c-8g
+    jobs:
+      - '{project-name}-gerrit-release-jobs'
\ No newline at end of file