From 3f5f89b3b9f227a82db37e770e051350dde7bb68 Mon Sep 17 00:00:00 2001 From: "Lott, Christopher (cl778h)" Date: Mon, 5 Aug 2019 10:25:58 -0400 Subject: [PATCH] Reduce repeated key-value pairs - Move common pairs like project, project-name to local common macros - Add values to defaults.yaml like container-push-registry to avoid repetition in project templates - Drop unused docker templates; the base image was renamed to bldr-alpine3 Signed-off-by: Lott, Christopher (cl778h) Change-Id: Ia212df85acf4bbb5264e22ab9606a9125e47dc2d --- README.md | 24 ++++++---- docker/bldr-alpine-python/Dockerfile | 44 ----------------- docker/bldr-alpine-python/container-tag.yaml | 2 - jjb/ci-management/ci-docker.yaml | 20 +++----- jjb/com-asn1/com-asn1.yaml | 51 +++++++++----------- jjb/com-log/com-log.yaml | 46 ++++++++---------- jjb/defaults.yaml | 11 +++-- jjb/it-dep/it-dep.yaml | 24 +++------- jjb/it-test/it-test.yaml | 39 +++++---------- jjb/portal-ric-dashboard/portal-ric-dashboard.yaml | 42 ++++++++--------- jjb/ric-app-admin/ric-app-admin.yaml | 53 +++++++++------------ jjb/ric-app-mc/ric-app-mc.yaml | 54 +++++++++------------ jjb/ric-plt-a1/ric-plt-a1.yaml | 55 +++++++++------------- jjb/ric-plt-appmgr/ric-plt-appmgr.yaml | 53 +++++++++------------ jjb/ric-plt-dbaas/ric-plt-dbaas.yaml | 51 +++++++++----------- jjb/ric-plt-e2/ric-plt-e2.yaml | 55 +++++++++------------- jjb/ric-plt-e2mgr/ric-plt-e2mgr.yaml | 55 +++++++++------------- jjb/ric-plt-lib-rmr/ric-plt-lib-rmr.yaml | 51 +++++++++----------- jjb/ric-plt-rtmgr/ric-plt-rtmgr.yaml | 53 +++++++++------------ jjb/ric-plt-submgr/ric-plt-submgr.yaml | 53 +++++++++------------ 20 files changed, 329 insertions(+), 507 deletions(-) delete mode 100644 docker/bldr-alpine-python/Dockerfile delete mode 100644 docker/bldr-alpine-python/container-tag.yaml diff --git a/README.md b/README.md index c1d0e506..e4b821f4 100644 --- a/README.md +++ b/README.md @@ -1,19 +1,23 @@ # Continuous Integration for O-RAN SC at LF -This repo contains configuration files for Jenkins jobs for the O-RAN -SC project. +This repo contains configuration files for Jenkins jobs for the +O-RAN SC project. -## Custom JJB templates for Docker Java projects +## Defaults.yaml -Custom JJB templates are defined for projects that use Maven to -compile Java code and build a Docker image. These projects should use -the following jobs in the project.yaml file:: +To avoid repetition, many required configuration parameter values +are defined in the defaults.yaml file. - jobs: - - gerrit-maven-docker-verify - - gerrit-maven-docker-merge - - gerrit-maven-docker-stage +## Custom JJB templates for Docker CI PackageCloud projects + +Custom JJB templates are defined for projects that use Docker to +compile code and build DEB/RPM packages, then push the packages to +PackageCloud.io. These projects should use the following jobs in +their respective project.yaml file:: + jobs: + - gerrit-docker-verify + - oran-gerrit-docker-ci-pc-merge ## Testing the templates diff --git a/docker/bldr-alpine-python/Dockerfile b/docker/bldr-alpine-python/Dockerfile deleted file mode 100644 index 88e63999..00000000 --- a/docker/bldr-alpine-python/Dockerfile +++ /dev/null @@ -1,44 +0,0 @@ -# Copyright (c) 2019 AT&T Intellectual Property. -# Copyright (c) 2019 Nokia. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -FROM python:3.7-alpine - -RUN apk update && \ - apk add \ - alpine-sdk \ - autoconf \ - automake \ - build-base \ - cmake \ - git \ - libtool \ - ninja - -WORKDIR /tmp/ - -# the autoconf-archive in alpine's edge repos is too new -# for our purposes, so we'll use one from the source. -RUN git clone --branch v2015.09.25 git://git.sv.gnu.org/autoconf-archive.git -RUN cp /tmp/autoconf-archive/m4/* /usr/share/aclocal -RUN rm -rf /tmp/autoconf-archive - -RUN git clone --branch v1.1.1 https://github.com/nanomsg/nng -WORKDIR /tmp/nng -RUN mkdir /tmp/nng/build -WORKDIR /tmp/nng/build -RUN cmake -DBUILD_SHARED_LIBS=1 -G Ninja .. -RUN ninja -RUN ninja install -WORKDIR /tmp/ -RUN rm -rf /tmp/nng diff --git a/docker/bldr-alpine-python/container-tag.yaml b/docker/bldr-alpine-python/container-tag.yaml deleted file mode 100644 index 39f7be75..00000000 --- a/docker/bldr-alpine-python/container-tag.yaml +++ /dev/null @@ -1,2 +0,0 @@ ---- -tag: 1-py3.7-nng1.1.1 diff --git a/jjb/ci-management/ci-docker.yaml b/jjb/ci-management/ci-docker.yaml index 974bd631..0bf7626d 100644 --- a/jjb/ci-management/ci-docker.yaml +++ b/jjb/ci-management/ci-docker.yaml @@ -4,18 +4,16 @@ name: ci-docker-common # git repo project: ci-management - build-node: ubuntu1804-docker-4c-4g - container-public-registry: nexus3.o-ran-sc.org:10001 - # use the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 + # maven settings file has docker credentials + mvn-settings: ci-management-settings + # build every Saturday + cron: 'H H * * 6' # use host network to clone from our gerrit docker-build-args: '--network=host' # default to YAML container-tag-method: yaml-file - # build every Saturday - cron: 'H H * * 6' - # maven settings file has docker credentials - mvn-settings: ci-management-settings + jobs: + - '{project-name}-gerrit-docker-jobs' stream: - master: branch: master @@ -41,8 +39,6 @@ gerrit_trigger_file_paths: - compare-type: REG_EXP pattern: 'docker/{name}/.*' - jobs: - - '{project-name}-gerrit-docker-jobs' - project: <<: *ci_docker_common @@ -53,8 +49,6 @@ gerrit_trigger_file_paths: - compare-type: REG_EXP pattern: 'docker/{name}/.*' - jobs: - - '{project-name}-gerrit-docker-jobs' - project: <<: *ci_docker_common @@ -65,5 +59,3 @@ gerrit_trigger_file_paths: - compare-type: REG_EXP pattern: 'docker/{name}/.*' - jobs: - - '{project-name}-gerrit-docker-jobs' diff --git a/jjb/com-asn1/com-asn1.yaml b/jjb/com-asn1/com-asn1.yaml index 0d0dc8ed..31621a41 100644 --- a/jjb/com-asn1/com-asn1.yaml +++ b/jjb/com-asn1/com-asn1.yaml @@ -5,45 +5,36 @@ views: - project-view +- project: + name: com-asn1-info + project: com/asn1 + project-name: com-asn1 + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - asn1_docker_common: &asn1_docker_common - # values apply to all RIC docker-build projects. - # factored out in case this needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values for ASN1 docker projects name: asn1-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - stream: - - master: - branch: master - -- project: - name: com-asn1 # git repo project: com/asn1 # jenkins job name prefix - project-name: '{name}' - # use host network to clone from our gerrit - docker-build-args: '--network=host -f ci/Dockerfile' + project-name: com-asn1 + # maven settings file has docker credentials + mvn-settings: com-asn1-settings + +- project: + <<: *asn1_docker_common + name: com-asn1 # image name docker-name: '{name}' + # use host network to clone from our gerrit + docker-build-args: '--network=host -f ci/Dockerfile' # image tag, use a fixed value container-tag-method: latest - # maven settings file has docker credentials - mvn-settings: com-asn1-settings jobs: # verify only; no merge bcos no image is pushed - gerrit-docker-verify - <<: *asn1_docker_common - -- project: - name: com-asn1-info - project: com/asn1 - project-name: com-asn1 - build-node: centos7-builder-1c-1g - - jobs: - - gerrit-info-yaml-verify + stream: + - master: + branch: master diff --git a/jjb/com-log/com-log.yaml b/jjb/com-log/com-log.yaml index ffd23b76..7fac3c78 100644 --- a/jjb/com-log/com-log.yaml +++ b/jjb/com-log/com-log.yaml @@ -5,44 +5,36 @@ views: - project-view +- project: + name: com-log-info + project: com/log + project-name: com-log + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - log_docker_common: &log_docker_common - # values apply to all RIC docker-build projects. - # factored out in case log needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all com/log docker projects name: log-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - stream: - - master: - branch: master - -- project: - name: com-log # git repo project: com/log # jenkins job name prefix - project-name: '{name}' + project-name: com-log + # maven settings file has docker credentials + mvn-settings: com-log-settings + +- project: + <<: *log_docker_common + name: com-log # use host network to clone from our gerrit docker-build-args: '--network=host -f ci/Dockerfile' # image name docker-name: '{name}' # image tag, use a fixed value container-tag-method: latest - # maven settings file has docker credentials - mvn-settings: com-log-settings jobs: - gerrit-docker-verify - oran-gerrit-docker-ci-pc-merge - <<: *log_docker_common - -- project: - name: com-log-info - project: com/log - project-name: com-log - build-node: centos7-builder-1c-1g - jobs: - - gerrit-info-yaml-verify + stream: + - master: + branch: master diff --git a/jjb/defaults.yaml b/jjb/defaults.yaml index 95041f94..af6ec453 100644 --- a/jjb/defaults.yaml +++ b/jjb/defaults.yaml @@ -11,14 +11,19 @@ archive-artifacts: '' + # most jobs invoke docker + build-node: ubuntu1804-docker-4c-4g + # Nexus3 docker registries container-public-registry: nexus3.o-ran-sc.org:10001 container-snapshot-registry: nexus3.o-ran-sc.org:10003 container-staging-registry: nexus3.o-ran-sc.org:10004 + # templates use the push registry key; + # counter-intuitively, the quotes here are REQUIRED + container-push-registry: '{container-staging-registry}' - # Default java version - java-version: openjdk8 - + # Don't define default java version here, + # it will not be used by lf-maven-jobs. # Default maven version mvn-version: mvn35 # Default maven goals diff --git a/jjb/it-dep/it-dep.yaml b/jjb/it-dep/it-dep.yaml index 060490b6..faa01b8c 100644 --- a/jjb/it-dep/it-dep.yaml +++ b/jjb/it-dep/it-dep.yaml @@ -14,15 +14,10 @@ - gerrit-info-yaml-verify - it_dep_common: &it_dep_common - # values apply to all RIC docker-build projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all it/dep docker projects name: it-dep-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 + # git repo + project: it/dep # maven settings file has docker credentials mvn-settings: it-dep-settings # use host network to clone from our gerrit @@ -34,11 +29,10 @@ branch: master - project: + <<: *it_dep_common # Verify helm charts using a Docker build process. # no image needs to be pushed, so there is no merge job. name: it-dep-helm - # git repo - project: it/dep # jenkins job name prefix project-name: '{name}' # image name @@ -49,12 +43,10 @@ container-tag-method: latest jobs: - gerrit-docker-verify - <<: *it_dep_common - project: + <<: *it_dep_common name: it-dep-secret - # git repo - project: it/dep # jenkins job name prefix project-name: '{name}' # image name @@ -67,22 +59,18 @@ pattern: '{docker-root}/.*' jobs: - '{project-name}-gerrit-docker-jobs' - <<: *it_dep_common - project: + <<: *it_dep_common name: it-dep-init - # git repo - project: it/dep # jenkins job name prefix project-name: '{name}' # image name docker-name: '{name}' # root of docker build docker-root: ric-common/Initcontainer/docker - # maven settings file has docker credentials gerrit_trigger_file_paths: - compare-type: REG_EXP pattern: '{docker-root}/.*' jobs: - '{project-name}-gerrit-docker-jobs' - <<: *it_dep_common diff --git a/jjb/it-test/it-test.yaml b/jjb/it-test/it-test.yaml index 491fcee5..40819b13 100644 --- a/jjb/it-test/it-test.yaml +++ b/jjb/it-test/it-test.yaml @@ -14,27 +14,25 @@ - gerrit-info-yaml-verify - it_test_common: &it_test_common - # values apply to all RIC docker-build projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all it/test docker projects name: it-test-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # use host network to clone from our gerrit - docker-build-args: '--network=host' + # git repo + project: it/test # source of docker tag container-tag-method: yaml-file + # use host network to clone from our gerrit + docker-build-args: '--network=host' + # maven settings file has docker credentials + mvn-settings: it-test-settings + jobs: + - '{project-name}-gerrit-docker-jobs' stream: - master: branch: master - project: + <<: *it_test_common name: it-test-nanobot - # git repo - project: it/test # jenkins job name prefix project-name: '{name}' # image name @@ -45,20 +43,14 @@ docker-build-args: -f docker/nanobot/Dockerfile # tag file is in subdir container-tag-yaml-dir: ric_robot_suite/docker/nanobot - # maven settings file has docker credentials - mvn-settings: it-test-settings # build only on relevant changes gerrit_trigger_file_paths: - compare-type: REG_EXP - pattern: 'ric_robot_suite/.*' - jobs: - - '{project-name}-gerrit-docker-jobs' - <<: *it_test_common + pattern: '{docker-root}/.*' - project: + <<: *it_test_common name: it-test-ric-robot - # git repo - project: it/test # jenkins job name prefix project-name: '{name}' # image name @@ -69,12 +61,7 @@ docker-build-args: -f docker/ric-robot/Dockerfile # tag file is in subdir container-tag-yaml-dir: ric_robot_suite/docker/ric-robot - # maven settings file has docker credentials - mvn-settings: it-test-settings # build only on relevant changes gerrit_trigger_file_paths: - compare-type: REG_EXP - pattern: 'ric_robot_suite/.*' - jobs: - - '{project-name}-gerrit-docker-jobs' - <<: *it_test_common + pattern: '{docker-root}/.*' diff --git a/jjb/portal-ric-dashboard/portal-ric-dashboard.yaml b/jjb/portal-ric-dashboard/portal-ric-dashboard.yaml index f5ae0ea6..f7a1790d 100644 --- a/jjb/portal-ric-dashboard/portal-ric-dashboard.yaml +++ b/jjb/portal-ric-dashboard/portal-ric-dashboard.yaml @@ -6,15 +6,29 @@ - project-view - project: - name: portal-ric-dashboard-project - # jenkins job name prefix + name: portal-ric-dashboard-info + project: portal/ric-dashboard project-name: portal-ric-dashboard + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + +- portal_ric_dashboard_common: &portal_ric_dashboard_common + # values apply to all projects here + name: portal-ric-dashboard-common # git repo project: portal/ric-dashboard + # jenkins job name prefix + project-name: portal-ric-dashboard + # maven settings file has docker credentials mvn-settings: portal-ric-dashboard-settings - mvn-params: -Dbuild.number=${{BUILD_NUMBER}} + # defaults.yaml value is NOT used due to value set in lf-maven-jobs.yaml java-version: openjdk11 - build-node: ubuntu1804-docker-4c-4g + +- project: + <<: *portal_ric_dashboard_common + name: portal-ric-dashboard-project + mvn-params: -Dbuild.number=${{BUILD_NUMBER}} jobs: - gerrit-maven-docker-verify - gerrit-maven-docker-merge @@ -24,38 +38,22 @@ branch: master - project: + <<: *portal_ric_dashboard_common name: portal-ric-dashboard-clm - project-name: portal-ric-dashboard - project: portal/ric-dashboard mvn-goals: test - mvn-settings: portal-ric-dashboard-settings - java-version: openjdk11 branch: master - build-node: ubuntu1804-docker-4c-4g nexus-iq-namespace: 'oran-' jobs: - gerrit-maven-clm - project: + <<: *portal_ric_dashboard_common name: portal-ric-dashboard-sonar - project-name: portal-ric-dashboard - project: portal/ric-dashboard mvn-goals: test - mvn-settings: portal-ric-dashboard-settings - java-version: openjdk11 branch: master - build-node: ubuntu1804-docker-4c-4g sonarcloud: true sonarcloud-project-key: o-ran-sc_portal-ric-dashboard sonarcloud-project-organization: o-ran-sc sonarcloud-api-token: d9e23c28dc39b6d7531d2ecabf122ce84e6253ef jobs: - gerrit-maven-sonar - -- project: - name: portal-ric-dashboard-info - project: portal/ric-dashboard - project-name: portal-ric-dashboard - build-node: centos7-builder-1c-1g - jobs: - - gerrit-info-yaml-verify diff --git a/jjb/ric-app-admin/ric-app-admin.yaml b/jjb/ric-app-admin/ric-app-admin.yaml index df739479..ceb494ac 100644 --- a/jjb/ric-app-admin/ric-app-admin.yaml +++ b/jjb/ric-app-admin/ric-app-admin.yaml @@ -5,44 +5,35 @@ views: - project-view +- project: + name: ric-app-admin-info + project: ric-app/admin + project-name: ric-app-admin + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - admin_docker_common: &admin_docker_common - # values apply to all RIC docker-build projects. - # factored out in case ric-app-admin needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all admin docker projects name: admin-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # use host network to clone from our gerrit - docker-build-args: '--network=host' - # source of docker tag - container-tag-method: yaml-file - stream: - - master: - branch: master - -- project: - name: ric-app-admin # git repo project: ric-app/admin # jenkins job name prefix - project-name: '{name}' - # image name - docker-name: '{name}' + project-name: ric-app-admin # maven settings file has docker credentials mvn-settings: ric-app-admin-settings - jobs: - - '{project-name}-gerrit-docker-jobs' - <<: *admin_docker_common - project: - name: ric-app-admin-info - project: ric-app/admin - project-name: ric-app-admin - build-node: centos7-builder-1c-1g - + <<: *admin_docker_common + name: ric-app-admin + # image name + docker-name: '{name}' + # source of docker tag + container-tag-method: yaml-file + # use host network to clone from our gerrit + docker-build-args: '--network=host' jobs: - - gerrit-info-yaml-verify + - '{project-name}-gerrit-docker-jobs' + stream: + - master: + branch: master diff --git a/jjb/ric-app-mc/ric-app-mc.yaml b/jjb/ric-app-mc/ric-app-mc.yaml index 96fe5950..97a2554d 100644 --- a/jjb/ric-app-mc/ric-app-mc.yaml +++ b/jjb/ric-app-mc/ric-app-mc.yaml @@ -5,43 +5,35 @@ views: - project-view -- mc: &mc_docker_common - # values apply to all RIC docker-build projects. - # factored out in case ric-app-mc needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. - name: mc-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # use host network to clone from our gerrit - docker-build-args: '--network=host' - # source of docker tag - container-tag-method: yaml-file - stream: - - master: - branch: master - - project: - name: ric-app-mc + name: ric-app-mc-info + project: ric-app/mc + project-name: ric-app-mc + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + +- mc_docker_common: &mc_docker_common + # values apply to all MC projects + name: mc-docker-common # git repo project: ric-app/mc # jenkins job name prefix - project-name: '{name}' - # image name - docker-name: '{name}' + project-name: ric-app-mc # maven settings file has docker credentials mvn-settings: ric-app-mc-settings - jobs: - - '{project-name}-gerrit-docker-jobs' - <<: *mc_docker_common - project: - name: ric-app-mc-info - project: ric-app/mc - project-name: ric-app-mc - build-node: centos7-builder-1c-1g + <<: *mc_docker_common + name: ric-app-mc + # image name + docker-name: '{name}' + # source of docker tag + container-tag-method: yaml-file + # use host network to clone from our gerrit + docker-build-args: '--network=host' jobs: - - gerrit-info-yaml-verify + - '{project-name}-gerrit-docker-jobs' + stream: + - master: + branch: master diff --git a/jjb/ric-plt-a1/ric-plt-a1.yaml b/jjb/ric-plt-a1/ric-plt-a1.yaml index f6295b20..54323023 100644 --- a/jjb/ric-plt-a1/ric-plt-a1.yaml +++ b/jjb/ric-plt-a1/ric-plt-a1.yaml @@ -5,45 +5,36 @@ views: - project-view +- project: + name: ric-plt-a1-info + project: ric-plt/a1 + project-name: ric-plt-a1 + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - a1_docker_common: &a1_docker_common - # values apply to all RIC docker-build projects. - # factored out in case a1 needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all A1 docker projects name: a1-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # use host network to clone from our gerrit - docker-build-args: '--network=host' - # source of docker tag - container-tag-method: yaml-file - stream: - - master: - branch: master - -- project: - name: ric-plt-a1 # git repo project: ric-plt/a1 # jenkins job name prefix - project-name: '{name}' - # image name - docker-name: '{name}' + project-name: ric-plt-a1 # maven settings file has docker credentials mvn-settings: ric-plt-a1-settings - jobs: - - gerrit-python-xc-clm - - '{project-name}-gerrit-docker-jobs' - <<: *a1_docker_common - project: - name: ric-plt-a1-info - project: ric-plt/a1 - project-name: ric-plt-a1 - build-node: centos7-builder-1c-1g - + <<: *a1_docker_common + name: ric-plt-a1 + # image name + docker-name: '{name}' + # source of docker tag + container-tag-method: yaml-file + # use host network to clone from our gerrit + docker-build-args: '--network=host' jobs: - - gerrit-info-yaml-verify + - gerrit-python-xc-clm + - '{project-name}-gerrit-docker-jobs' + stream: + - master: + branch: master diff --git a/jjb/ric-plt-appmgr/ric-plt-appmgr.yaml b/jjb/ric-plt-appmgr/ric-plt-appmgr.yaml index 717048dc..087a91be 100644 --- a/jjb/ric-plt-appmgr/ric-plt-appmgr.yaml +++ b/jjb/ric-plt-appmgr/ric-plt-appmgr.yaml @@ -5,44 +5,35 @@ views: - project-view +- project: + name: ric-plt-appmgr-info + project: ric-plt/appmgr + project-name: ric-plt-appmgr + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - appmgr_docker_common: &appmgr_docker_common - # values apply to all RIC docker-build projects. - # factored out in case appmgr needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all appmgr docker projects name: appmgr-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # use host network to clone from our gerrit - docker-build-args: '--network=host' - # source of docker tag - container-tag-method: yaml-file - stream: - - master: - branch: master - -- project: - name: ric-plt-appmgr # git repo project: ric-plt/appmgr # jenkins job name prefix - project-name: '{name}' - # image name - docker-name: '{name}' + project-name: ric-plt-appmgr # maven settings file has docker credentials mvn-settings: ric-plt-appmgr-settings - jobs: - - '{project-name}-gerrit-docker-jobs' - <<: *appmgr_docker_common - project: - name: ric-plt-appmgr-info - project: ric-plt/appmgr - project-name: ric-plt-appmgr - build-node: centos7-builder-1c-1g - + <<: *appmgr_docker_common + name: ric-plt-appmgr + # image name + docker-name: '{name}' + # source of docker tag + container-tag-method: yaml-file + # use host network to clone from our gerrit + docker-build-args: '--network=host' jobs: - - gerrit-info-yaml-verify + - '{project-name}-gerrit-docker-jobs' + stream: + - master: + branch: master diff --git a/jjb/ric-plt-dbaas/ric-plt-dbaas.yaml b/jjb/ric-plt-dbaas/ric-plt-dbaas.yaml index 4cd33909..0fc854b1 100644 --- a/jjb/ric-plt-dbaas/ric-plt-dbaas.yaml +++ b/jjb/ric-plt-dbaas/ric-plt-dbaas.yaml @@ -5,44 +5,35 @@ views: - project-view +- project: + name: ric-plt-dbaas-info + project: ric-plt/dbaas + project-name: ric-plt-dbaas + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - dbaas_docker_common: &dbaas_docker_common - # values apply to all RIC docker-build projects. - # factored out in case this needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all dbaas docker projects name: dbaas-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # source of docker tag - container-tag-method: yaml-file - stream: - - master: - branch: master - -- project: - name: ric-plt-dbaas # git repo project: ric-plt/dbaas # jenkins job name prefix - project-name: '{name}' + project-name: ric-plt-dbaas + # maven settings file has docker credentials + mvn-settings: ric-plt-dbaas-settings + +- project: + <<: *dbaas_docker_common + name: ric-plt-dbaas # image name docker-name: '{name}' # Specify docker file and host network docker-build-args: '--network=host -f docker/Dockerfile.redis' - # maven settings file has docker credentials - mvn-settings: ric-plt-dbaas-settings + # source of docker tag + container-tag-method: yaml-file jobs: - '{project-name}-gerrit-docker-jobs' - <<: *dbaas_docker_common - -- project: - name: ric-plt-dbaas-info - project: ric-plt/dbaas - project-name: ric-plt-dbaas - build-node: centos7-builder-1c-1g - - jobs: - - gerrit-info-yaml-verify + stream: + - master: + branch: master diff --git a/jjb/ric-plt-e2/ric-plt-e2.yaml b/jjb/ric-plt-e2/ric-plt-e2.yaml index 1d128594..7d4af25d 100644 --- a/jjb/ric-plt-e2/ric-plt-e2.yaml +++ b/jjb/ric-plt-e2/ric-plt-e2.yaml @@ -5,46 +5,37 @@ views: - project-view +- project: + name: ric-plt-e2-info + project: ric-plt/e2 + project-name: ric-plt-e2 + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - e2_docker_common: &e2_docker_common - # values apply to all RIC docker-build projects. - # factored out in case this needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all E2 docker projects name: e2-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # use host network to clone from our gerrit - docker-build-args: '--network=host' - # source of docker tag - container-tag-method: yaml-file - stream: - - master: - branch: master - -- project: - name: ric-plt-e2 # git repo project: ric-plt/e2 # jenkins job name prefix - project-name: '{name}' + project-name: ric-plt-e2 + # maven settings file has docker credentials + mvn-settings: ric-plt-e2-settings + +- project: + <<: *e2_docker_common + name: ric-plt-e2 # image name docker-name: '{name}' # subdirectory docker-root: RIC-E2-TERMINATION - # maven settings file has docker credentials - mvn-settings: ric-plt-e2-settings + # source of docker tag + container-tag-method: yaml-file + # use host network to clone from our gerrit + docker-build-args: '--network=host' jobs: - '{project-name}-gerrit-docker-jobs' - <<: *e2_docker_common - -- project: - name: ric-plt-e2-info - project: ric-plt/e2 - project-name: ric-plt-e2 - build-node: centos7-builder-1c-1g - - jobs: - - gerrit-info-yaml-verify + stream: + - master: + branch: master diff --git a/jjb/ric-plt-e2mgr/ric-plt-e2mgr.yaml b/jjb/ric-plt-e2mgr/ric-plt-e2mgr.yaml index b78eb713..9889b3c7 100644 --- a/jjb/ric-plt-e2mgr/ric-plt-e2mgr.yaml +++ b/jjb/ric-plt-e2mgr/ric-plt-e2mgr.yaml @@ -5,46 +5,37 @@ views: - project-view +- project: + name: ric-plt-e2mgr-info + project: ric-plt/e2mgr + project-name: ric-plt-e2mgr + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - e2mgr_docker_common: &e2mgr_docker_common - # values apply to all RIC docker-build projects. - # factored out in case this needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all E2MGR docker projects name: e2mgr-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # use host network to clone from our gerrit - docker-build-args: '--network=host' - # source of docker tag - container-tag-method: yaml-file - stream: - - master: - branch: master - -- project: - name: ric-plt-e2mgr # git repo project: ric-plt/e2mgr # jenkins job name prefix - project-name: '{name}' - # image name - docker-name: '{name}' + project-name: ric-plt-e2mgr # maven settings file has docker credentials mvn-settings: ric-plt-e2mgr-settings + +- project: + <<: *e2mgr_docker_common + name: ric-plt-e2mgr + # image name + docker-name: '{name}' # Dockerfile is in a subdir docker-root: E2Manager + # source of docker tag + container-tag-method: yaml-file + # use host network to clone from our gerrit + docker-build-args: '--network=host' jobs: - '{project-name}-gerrit-docker-jobs' - <<: *e2mgr_docker_common - -- project: - name: ric-plt-e2mgr-info - project: ric-plt/e2mgr - project-name: ric-plt-e2mgr - build-node: centos7-builder-1c-1g - - jobs: - - gerrit-info-yaml-verify + stream: + - master: + branch: master diff --git a/jjb/ric-plt-lib-rmr/ric-plt-lib-rmr.yaml b/jjb/ric-plt-lib-rmr/ric-plt-lib-rmr.yaml index aba81aad..bfaedcc6 100644 --- a/jjb/ric-plt-lib-rmr/ric-plt-lib-rmr.yaml +++ b/jjb/ric-plt-lib-rmr/ric-plt-lib-rmr.yaml @@ -5,45 +5,36 @@ views: - project-view +- project: + name: ric-plt-lib-rmr-info + project: ric-plt/lib/rmr + project-name: ric-plt-lib-rmr + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - rmr_docker_common: &rmr_docker_common - # values apply to all RIC docker-build projects. - # factored out in case rmr needs multiple projects. - # use a specific name to prevent reuse attempts - # because anchors don't cross document boundaries. + # values apply to all RMR docker projects name: rmr-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo because all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - stream: - - master: - branch: master - -- project: - name: ric-plt-lib-rmr # git repo project: ric-plt/lib/rmr # jenkins job name prefix - project-name: '{name}' - # use host network to clone from our gerrit - docker-build-args: '--network=host -f ci/Dockerfile' + project-name: ric-plt-lib-rmr + # maven settings file has docker credentials + mvn-settings: ric-plt-lib-rmr-settings + +- project: + <<: *rmr_docker_common + name: ric-plt-lib-rmr # image name docker-name: '{name}' + # use host network to clone from our gerrit + docker-build-args: '--network=host -f ci/Dockerfile' # image tag; use a fixed value container-tag-method: latest - # maven settings file has docker credentials - mvn-settings: ric-plt-lib-rmr-settings jobs: - gerrit-docker-verify - oran-gerrit-docker-ci-pc-merge - <<: *rmr_docker_common - -- project: - name: ric-plt-lib-rmr-info - project: ric-plt/lib/rmr - project-name: ric-plt-lib-rmr - build-node: centos7-builder-1c-1g - - jobs: - - gerrit-info-yaml-verify + stream: + - master: + branch: master diff --git a/jjb/ric-plt-rtmgr/ric-plt-rtmgr.yaml b/jjb/ric-plt-rtmgr/ric-plt-rtmgr.yaml index ceded388..315979cb 100644 --- a/jjb/ric-plt-rtmgr/ric-plt-rtmgr.yaml +++ b/jjb/ric-plt-rtmgr/ric-plt-rtmgr.yaml @@ -5,44 +5,35 @@ views: - project-view +- project: + name: ric-plt-rtmgr-info + project: ric-plt/rtmgr + project-name: ric-plt-rtmgr + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - rtmgr_docker_common: &rtmgr_docker_common - # values apply to all RIC docker-build projects. - # factored out in case this needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all rtmgr docker projects name: rtmgr-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # use host network to clone from our gerrit - docker-build-args: '--network=host' - # source of docker tag - container-tag-method: yaml-file - stream: - - master: - branch: master - -- project: - name: ric-plt-rtmgr # git repo project: ric-plt/rtmgr # jenkins job name prefix - project-name: '{name}' - # image name - docker-name: '{name}' + project-name: ric-plt-rtmgr # maven settings file has docker credentials mvn-settings: ric-plt-rtmgr-settings - jobs: - - '{project-name}-gerrit-docker-jobs' - <<: *rtmgr_docker_common - project: - name: ric-plt-rtmgr-info - project: ric-plt/rtmgr - project-name: ric-plt-rtmgr - build-node: centos7-builder-1c-1g - + <<: *rtmgr_docker_common + name: ric-plt-rtmgr + # image name + docker-name: '{name}' + # source of docker tag + container-tag-method: yaml-file + # use host network to clone from our gerrit + docker-build-args: '--network=host' jobs: - - gerrit-info-yaml-verify + - '{project-name}-gerrit-docker-jobs' + stream: + - master: + branch: master diff --git a/jjb/ric-plt-submgr/ric-plt-submgr.yaml b/jjb/ric-plt-submgr/ric-plt-submgr.yaml index 7639ebdf..384a0009 100644 --- a/jjb/ric-plt-submgr/ric-plt-submgr.yaml +++ b/jjb/ric-plt-submgr/ric-plt-submgr.yaml @@ -5,44 +5,35 @@ views: - project-view +- project: + name: ric-plt-submgr-info + project: ric-plt/submgr + project-name: ric-plt-submgr + build-node: centos7-builder-1c-1g + jobs: + - gerrit-info-yaml-verify + - submgr_docker_common: &submgr_docker_common - # values apply to all RIC docker-build projects. - # factored out in case this needs multiple projects. - # use a specific name to prevent reuse attempts - # bcos anchors don't cross document boundaries. + # values apply to all submgr docker projects name: submgr-docker-common - build-node: ubuntu1804-docker-4c-4g - # pull from the public mirror + releases registry - container-public-registry: nexus3.o-ran-sc.org:10001 - # push to the staging repo bcos all builds are RCs - container-push-registry: nexus3.o-ran-sc.org:10004 - # use host network to clone from our gerrit - docker-build-args: '--network=host' - # source of docker tag - container-tag-method: yaml-file - stream: - - master: - branch: master - -- project: - name: ric-plt-submgr # git repo project: ric-plt/submgr # jenkins job name prefix - project-name: '{name}' - # image name - docker-name: '{name}' + project-name: ric-plt-submgr # maven settings file has docker credentials mvn-settings: ric-plt-submgr-settings - jobs: - - '{project-name}-gerrit-docker-jobs' - <<: *submgr_docker_common - project: - name: ric-plt-submgr-info - project: ric-plt/submgr - project-name: ric-plt-submgr - build-node: centos7-builder-1c-1g - + <<: *submgr_docker_common + name: ric-plt-submgr + # image name + docker-name: '{name}' + # source of docker tag + container-tag-method: yaml-file + # use host network to clone from our gerrit + docker-build-args: '--network=host' jobs: - - gerrit-info-yaml-verify + - '{project-name}-gerrit-docker-jobs' + stream: + - master: + branch: master -- 2.16.6