Merge "Switch KUD deploying job to run on changeset basis"
authorJessica Wagantall <jwagantall@linuxfoundation.org>
Tue, 10 Sep 2019 17:40:33 +0000 (17:40 +0000)
committerGerrit Code Review <gerrit@onap.org>
Tue, 10 Sep 2019 17:40:33 +0000 (17:40 +0000)
jenkins-config/clouds/openstack/cattle/ubuntu1604-docker-8c-8g.cfg
jjb/ccsdk/dashboard.yaml
jjb/dcaegen2/dcaegen2-platform-configbinding.yaml
jjb/dcaegen2/dcaegen2-services-prh.yaml
jjb/externalapi/externalapi-nbi.yaml
jjb/global-templates-docker.yaml
jjb/global-templates-java.yaml
jjb/music/music-jar.yaml
jjb/policy/policy-docker-base-common.yaml
jjb/portal-sdk/portal-sdk.yaml
jjb/sdc/sdc-sdc-distribution-client.yaml

index 637bf61..c36428e 100644 (file)
@@ -1,3 +1,3 @@
-IMAGE_NAME=ZZCI - Ubuntu 16.04 - docker - x86_64 - 20190510-225520.575
+IMAGE_NAME=ZZCI - Ubuntu 16.04 - docker - x86_64 - 20190905-215402.663
 LABELS=ubuntu1604-docker-8c-8g
 HARDWARE_ID=v2-highcpu-8
index 7ec5a89..1236fcd 100644 (file)
     mvn-settings: 'ccsdk-dashboard-settings'
     build-node: centos7-redis-4c-4g
 
+- project:
+    name: ccsdk-dashboard-info
+    project-name: ccsdk-dashboard
+    jobs:
+      - gerrit-info-yaml-verify
+    project: ccsdk/dashboard
+    branch: master
+
 - project:
     name: ccsdk-dashboard-whitesource
     project-name: ccsdk-dashboard
index 0ce35ee..dd788fa 100644 (file)
@@ -15,6 +15,8 @@
     files: '**'
     archive-artifacts: ''
     build-node: ubuntu1604-docker-8c-8g
+    # used by tox-install.sh to specify the interpreter used to install tox
+    python-version: python3
     jobs:
       # clm and tox
       - '{project-name}-python-jobs'
@@ -38,6 +40,8 @@
     mvn-goals: 'clean test'
     mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
     branch: master
+    # used by tox-install.sh to specify the interpreter used to install tox
+    python-version: python3
     jobs:
       - gerrit-tox-sonar
 
index 48591b6..294623e 100644 (file)
@@ -9,6 +9,7 @@
           sign-artifacts: true
           build-node: centos7-docker-8c-8g
           maven-versions-plugin: true
+          mvn-goals: 'clean deploy -Ddocker.skip'
       - gerrit-maven-docker-stage:
           build-node: ubuntu1604-docker-8c-8g
           container-public-registry: 'nexus3.onap.org:10001'
index b758ba5..66bb307 100644 (file)
@@ -23,7 +23,7 @@
           container-staging-registry: 'nexus3.onap.org:10003'
           mvn-params: '-Dmaven.test.skip=true -P docker'
       - '{project-name}-gerrit-release-jobs':
-          build-node: centos7-builder-4c-4g
+          build-node: centos7-docker-8c-8g
     project: 'externalapi/nbi'
     stream:
       - 'master':
index 1c8242f..eecedd4 100644 (file)
             - '{parent_job}'
           result: 'success'
 
+- job-template:
+    # Job template for creating a docker manifest list
+    #
+    # The purpose of this job template is to run:
+    # 1. docker_push_manifest.sh script (which needs to exist in the
+    #    project implementation repo)
+
+    name: '{project-name}-docker-manifest-{stream}'
+    <<: *docker_job_boiler_plate
+    node: '{build-node}'
+    build-timeout: 15
+
+    parameters:
+      - lf-infra-parameters:
+          project: '{project}'
+          stream: '{stream}'
+          branch: '{branch}'
+      - string:
+          name: PARENT_JOB_NAME
+          default: 'none'
+
+    disabled: '{obj:disabled}'
+
+    scm:
+      - lf-infra-gerrit-scm:
+          jenkins-ssh-credential: '{jenkins-ssh-credential}'
+          git-url: '$GIT_URL/$PROJECT'
+          refspec: '$GERRIT_REFSPEC'
+          branch: '$GERRIT_BRANCH'
+          submodule-recursive: true
+          submodule-disable: '{submodule-disable}'
+          submodule-timeout: '{submodule-timeout}'
+          choosing-strategy: default
+
+
+    builders:
+      - lf-infra-docker-login:
+          global-settings-file: 'global-settings'
+          settings-file: '{mvn-settings}'
+      - shell: |
+          #!/bin/bash -ex
+          export PARENT_JOB_NAME
+          ./docker_push_manifest.sh
+
+- job-template:
+    # Job template for staging jobs on multiple architectures
+    #
+    # The purpose of this job template is to:
+    # 1. Run parallel maven-docker-stage jobs for each supported architecure
+    # 2. Build and push a docker manifest list for the images created by
+    #    the previous jobs
+
+    name: '{project-name}-multiarch-docker-stage-{stream}'
+    node: '{build-node}'
+    project-type: multijob
+    disabled: '{obj:disabled}'
+    build-timeout: 15
+    pattern: '**'
+
+    parameters:
+      - lf-infra-parameters:
+          project: '{project}'
+          stream: '{stream}'
+          branch: '{branch}'
+      - string:
+          name: DOCKER_REGISTRY
+          default: 'none'
+      - string:
+          name: DOCKERHUB_REGISTRY
+          default: 'registry-1.docker.io'
+
+    disabled: '{obj:disabled}'
+
+    properties:
+      - throttle:
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '{project-name}-.*-docker-.*'
+          blocking-level: 'NODE'
+
+    scm:
+      - lf-infra-gerrit-scm:
+          jenkins-ssh-credential: '{jenkins-ssh-credential}'
+          git-url: '$GIT_URL/$PROJECT'
+          refspec: '$GERRIT_REFSPEC'
+          branch: '$GERRIT_BRANCH'
+          submodule-recursive: true
+          submodule-timeout: 10
+          submodule-disable: false
+          choosing-strategy: default
 
+    triggers:
+      - timed: '@daily'
+      - gerrit:
+          server-name: '{gerrit-server-name}'
+          trigger-on:
+             - comment-added-contains-event:
+                 comment-contains-value: '^Patch Set\s+\d+:\s+stage-(docker-)?release\s*$'
+
+          projects:
+            - project-compare-type: ANT
+              project-pattern: '{project}'
+              branches:
+                - branch-compare-type: ANT
+                  branch-pattern: '**/{branch}'
+              file-paths:
+                 - compare-type: ANT
+                   pattern: "**"
+
+    builders:
+      - multijob:
+          name: 'build docker images'
+          condition: ALWAYS
+          execution-type: PARALLEL
+          projects:
+            - name: '{project-name}-amd64-maven-docker-stage-{stream}'
+              kill-phase-on: FAILURE
+              current-parameters: true
+            - name: '{project-name}-arm64-maven-docker-stage-{stream}'
+              kill-phase-on: NEVER
+              current-parameters: true
+      - multijob:
+          name: 'publish docker manifest'
+          condition: SUCCESSFUL
+          execution-type: PARALLEL
+          projects:
+            - name: '{project-name}-docker-manifest-{stream}'
+              current-parameters: true
+              predefined-parameters: |
+                PARENT_JOB_NAME=$JOB_NAME
+                DOCKERHUB_REGISTRY=docker.io
index c589fba..d6104d8 100644 (file)
 
     builders:
       - lf-infra-pre-build
+      - lf-infra-docker-login:
+          global-settings-file: 'global-settings'
+          settings-file: '{mvn-settings}'
       - provide-maven-settings:
           global-settings-file: 'global-settings'
           settings-file: '{mvn-settings}'
           # use default as mvn-profile if profile is not needed
           mvn-profile: '{mvn-profile}'
           mvn-params: ''
+
+- job-template:
+    # Job template for Java merge jobs on multiple architectures
+    #
+    # The purpose of this job template is to:
+    # 1. Run parallel {project-name}-{stream}-verify-java jobs for each supported architecture
+    # 2. Build and push a docker manifest list for the images created by
+    #    the previous jobs
+
+    name: '{project-name}-multiarch-{stream}-merge-java'
+    node: '{build-node}'
+    project-type: multijob
+    disabled: '{obj:disabled}'
+    pattern: '**'
+
+    parameters:
+      - lf-infra-parameters:
+          project: '{project}'
+          stream: '{stream}'
+          branch: '{branch}'
+      - string:
+          name: DOCKER_REGISTRY
+          default: 'none'
+      - string:
+          name: DOCKERHUB_REGISTRY
+          default: 'registry-1.docker.io'
+
+    properties:
+      - throttle:
+          max-per-node: 1
+          option: 'project'
+      - build-blocker:
+          use-build-blocker: true
+          blocking-jobs:
+            - '{project-name}-.*-merge-.*'
+          blocking-level: 'NODE'
+
+    scm:
+      - gerrit-trigger-scm:
+          refspec: ''
+          choosing-strategy: 'default'
+          submodule-recursive: '{submodule-recursive}'
+
+    wrappers:
+      - infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    triggers:
+      - gerrit-trigger-patch-merged:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: '{pattern}'
+
+    builders:
+      - multijob:
+          name: 'build docker images'
+          condition: ALWAYS
+          execution-type: PARALLEL
+          projects:
+            - name: '{project-name}-amd64-{stream}-merge-java'
+              kill-phase-on: FAILURE
+              current-parameters: true
+            - name: '{project-name}-arm64-{stream}-merge-java'
+              kill-phase-on: NEVER
+              current-parameters: true
+      - multijob:
+          name: 'publish docker manifest'
+          condition: SUCCESSFUL
+          execution-type: PARALLEL
+          projects:
+            - name: '{project-name}-docker-manifest-{stream}'
+              current-parameters: true
+              predefined-parameters: |
+                PARENT_JOB_NAME=$JOB_NAME
+                DOCKERHUB_REGISTRY=docker.io
index f981b21..496cd60 100644 (file)
@@ -9,6 +9,13 @@
     jobs:
       - '{project-name}-{stream}-{subproject}-verify-java'
       - '{project-name}-{stream}-{subproject}-merge-java'
+      - gerrit-maven-stage:
+          sign-artifacts: true
+          build-node: centos7-builder-4c-4g
+          maven-version-plugin: true
+          mvn-pom: 'jar/pom.xml'
+          mvn-params: '-f jar/pom.xml'
+          pattern: 'jar/**'
     project: 'music'
     stream:
       - 'jar-master':
index 4551f15..42f7f6b 100644 (file)
@@ -1,6 +1,6 @@
 ---
 - project:
-    name: policy-docker-base-common
+    name: policy-docker-base-common-elalto
     project-name: 'policy-docker'
     jobs:
       - '{project-name}-{stream}-verify-java'
@@ -20,8 +20,6 @@
 
     project: 'policy/docker'
     stream:
-      - 'master':
-          branch: 'master'
       - 'elalto':
           branch: 'elalto'
     mvn-settings: 'policy-docker-settings'
     archive-artifacts: ''
     build-node: ubuntu1604-builder-4c-4g
 
+- project:
+    name: policy-docker-base-common
+    project-name: 'policy-docker'
+    jobs:
+      - '{project-name}-{stream}-verify-java'
+      - '{project-name}-{stream}-merge-java':
+          project-name: 'policy-docker-amd64'
+          docker-pom: 'pom.xml'
+          mvn-profile: 'docker'
+          mvn-params: '-P docker -Ddocker.pull.registry=docker.io -Ddocker.push.registry=registry-1.docker.io'
+          build-node: ubuntu1604-docker-8c-8g
+          pattern: 'do_not_match_any_file'
+      - '{project-name}-{stream}-merge-java':
+          project-name: 'policy-docker-arm64'
+          docker-pom: 'pom.xml'
+          mvn-profile: 'docker'
+          mvn-params: '-P docker -Ddocker.pull.registry=docker.io -Ddocker.push.registry=registry-1.docker.io'
+          build-node: ubuntu1604-docker-arm64-4c-2g
+          pattern: 'do_not_match_any_file'
+      - '{project-name}-multiarch-{stream}-merge-java'
+      - gerrit-maven-docker-stage:
+          project-name: 'policy-docker-arm64'
+          build-node: ubuntu1604-docker-arm64-4c-2g
+          maven-versions-plugin: true
+          mvn-params: '-P docker -Dmaven.test.skip=true -Ddocker.pull.registry=docker.io -Ddocker.push.registry=registry-1.docker.io'
+          container-public-registry: 'docker.io'
+          container-staging-registry: 'docker.io'
+          cron: ''
+          gerrit_trigger_file_paths:
+             - compare-type: REG_EXP
+               pattern: 'do_not_match_any_file'
+      - gerrit-maven-docker-stage:
+          project-name: 'policy-docker-amd64'
+          build-node: ubuntu1604-docker-8c-8g
+          maven-versions-plugin: true
+          mvn-params: '-P docker -Dmaven.test.skip=true -Ddocker.pull.registry=docker.io -Ddocker.push.registry=registry-1.docker.io'
+          container-public-registry: 'docker.io'
+          container-staging-registry: 'docker.io'
+          cron: ''
+          gerrit_trigger_file_paths:
+             - compare-type: REG_EXP
+               pattern: 'do_not_match_any_file'
+      - '{project-name}-docker-manifest-{stream}':
+          build-node: ubuntu1604-docker-8c-8g
+      - '{project-name}-multiarch-docker-stage-{stream}'
+#      - '{project-name}-gerrit-release-jobs':
+#          build-node: centos7-builder-4c-4g
+
+    project: 'policy/docker'
+    stream:
+      - 'master':
+          branch: 'master'
+    mvn-settings: 'policy-docker-settings'
+    files: '**'
+    archive-artifacts: ''
+    build-node: ubuntu1604-builder-4c-4g
+
 - project:
     name: policy-docker-sonar
     jobs:
index a423fd6..152c303 100644 (file)
@@ -9,9 +9,15 @@
     subproject-name: 'onap-sdk'
 
     jobs:
+      - gerrit-maven-stage:
+          sign-artifacts: true
+          build-node: centos7-builder-4c-4g
+          maven-versions-plugin: true
+          mvn-pom: 'ecomp-sdk/pom.xml'
+          mvn-params: '-f ecomp-sdk/pom.xml'
+          pattern: 'ecomp-sdk/**'
       - '{project-name}-{stream}-{subproject}-verify-java'
       - '{project-name}-{stream}-{subproject}-merge-java'
-      - '{project-name}-{stream}-{subproject}-release-java-daily'
     project: 'portal/sdk'
     stream:
       - 'master':
index 557962f..3ad86fc 100644 (file)
@@ -15,6 +15,8 @@
           sign-artifacts: true
           build-node: centos7-builder-4c-4g
           maven-versions-plugin: true
+      - '{project-name}-gerrit-release-jobs':
+          build-node: centos7-builder-4c-4g
 
     project: 'sdc/sdc-distribution-client'
     stream: