Merge "Fix sonar build issue for ves"
diff --git a/jjb/aaf/aaf-authz.yaml b/jjb/aaf/aaf-authz.yaml
index 960bf6b..e877b52 100644
--- a/jjb/aaf/aaf-authz.yaml
+++ b/jjb/aaf/aaf-authz.yaml
@@ -12,6 +12,7 @@
           settings: '{mvn-settings}'
           script:
             !include-raw-escape: 'build-aaf-docker-image.sh'
+          build-node: 'ubuntu1604-docker-8c-8g'
     project: 'aaf/authz'
     stream:
       - 'master':
diff --git a/jjb/aai/aai-csit.yaml b/jjb/aai/aai-csit.yaml
index b723410..1c4f0fd 100644
--- a/jjb/aai/aai-csit.yaml
+++ b/jjb/aai/aai-csit.yaml
@@ -13,10 +13,10 @@
     functionality:
       - 'resources':
           trigger_jobs:
-            - 'aai-resources-{stream}-aai-docker-java-version-daily'
+            - 'aai-resources-{stream}-aai-docker-java-daily'
       - 'traversal':
           trigger_jobs:
-            - 'aai-traversal-{stream}-aai-docker-java-version-daily'
+            - 'aai-traversal-{stream}-aai-docker-java-daily'
       - 'esr-server':
           trigger_jobs:
             - 'aai-esr-server-{stream}-docker-java-daily'
diff --git a/jjb/ccsdk/platform-plugins.yaml b/jjb/ccsdk/platform-plugins.yaml
index f1eb801..45f6389 100644
--- a/jjb/ccsdk/platform-plugins.yaml
+++ b/jjb/ccsdk/platform-plugins.yaml
@@ -20,13 +20,14 @@
       deployAtEnd=true
     files: '**'
     archive-artifacts: ''
+    build-node: centos7-redis-4c-4g
 
 - project:
     name: ccsdk-platform-plugins-sonar
     jobs:
       - gerrit-maven-sonar
     cron: 'H 11 * * *'
-    build-node: ubuntu1604-builder-4c-4g
+    build-node: centos7-redis-4c-4g
     project: 'ccsdk/platform/plugins'
     project-name: 'ccsdk-platform-plugins'
     branch: 'master'
diff --git a/jjb/dcaegen2/apod-analytics.yaml b/jjb/dcaegen2/apod-analytics.yaml
index c11a28d..3b98812 100644
--- a/jjb/dcaegen2/apod-analytics.yaml
+++ b/jjb/dcaegen2/apod-analytics.yaml
@@ -20,10 +20,9 @@
     jobs:
       - gerrit-maven-clm
       - '{project-name}-{stream}-release-version-java-daily'
-      - '{project-name}-{stream}-verify-java-skip-tests':
-          mvn-goals: 'clean install'
-      - '{project-name}-{stream}-merge-java':
-          mvn-goals: 'clean deploy'
+      - '{project-name}-{stream}-verify-java':
+          mvn-params: '-DskipTests=true'
+      - '{project-name}-{stream}-merge-java'
 
 - project:
     name: dcaegen2-analytics-tca-sonar
diff --git a/jjb/dcaegen2/dcaegen2-platform-inventory-api.yaml b/jjb/dcaegen2/dcaegen2-platform-inventory-api.yaml
index 65cba2b..8ac744a 100644
--- a/jjb/dcaegen2/dcaegen2-platform-inventory-api.yaml
+++ b/jjb/dcaegen2/dcaegen2-platform-inventory-api.yaml
@@ -11,6 +11,7 @@
           mvn-goals: 'clean package docker:build -DpushImage'
           # No-op
           script: '/bin/true'
+          build-node: 'ubuntu1604-docker-8c-8g'
 
     project: 'dcaegen2/platform/inventory-api'
     stream:
diff --git a/jjb/dcaegen2/dcaegen2-platform-servicechange-handler.yaml b/jjb/dcaegen2/dcaegen2-platform-servicechange-handler.yaml
index 33fcb11..7c66bfd 100644
--- a/jjb/dcaegen2/dcaegen2-platform-servicechange-handler.yaml
+++ b/jjb/dcaegen2/dcaegen2-platform-servicechange-handler.yaml
@@ -11,6 +11,7 @@
           mvn-goals: 'clean package docker:build -DpushImage'
           # No-op
           script: '/bin/true'
+          build-node: 'ubuntu1604-docker-8c-8g'
 
     project: 'dcaegen2/platform/servicechange-handler'
     stream:
diff --git a/jjb/dcaegen2/dcaegen2-services-mapper.yaml b/jjb/dcaegen2/dcaegen2-services-mapper.yaml
index aed6187..322c079 100644
--- a/jjb/dcaegen2/dcaegen2-services-mapper.yaml
+++ b/jjb/dcaegen2/dcaegen2-services-mapper.yaml
@@ -11,6 +11,7 @@
           mvn-goals: 'clean package docker:build -DpushImage'
           # No-op
           script: '/bin/true'
+          build-node: 'ubuntu1604-docker-8c-8g'
     project: 'dcaegen2/services/mapper'
     stream:
       - 'master':
diff --git a/jjb/dcaegen2/dcaegen2-services-prh.yaml b/jjb/dcaegen2/dcaegen2-services-prh.yaml
index ad1fa4a..b555fd8 100644
--- a/jjb/dcaegen2/dcaegen2-services-prh.yaml
+++ b/jjb/dcaegen2/dcaegen2-services-prh.yaml
@@ -11,6 +11,7 @@
           mvn-goals: 'clean package docker:build -DpushImage'
           # No-op
           script: '/bin/true'
+          build-node: 'ubuntu1604-docker-8c-8g'
 
     project: 'dcaegen2/services/prh'
     stream:
diff --git a/jjb/dmaap/dmaap-buscontroller.yaml b/jjb/dmaap/dmaap-buscontroller.yaml
index 89e635e..2af0e8d 100644
--- a/jjb/dmaap/dmaap-buscontroller.yaml
+++ b/jjb/dmaap/dmaap-buscontroller.yaml
@@ -16,6 +16,7 @@
           mvn-goals: 'clean package -P docker docker:build -DpushImage'
           # No-op
           script: '/bin/true'
+          build-node: 'ubuntu1604-docker-8c-8g'
 
     project: 'dmaap/buscontroller'
     stream:
diff --git a/jjb/dmaap/dmaap-datarouter-csit.yaml b/jjb/dmaap/dmaap-datarouter-csit.yaml
new file mode 100644
index 0000000..d6c4765
--- /dev/null
+++ b/jjb/dmaap/dmaap-datarouter-csit.yaml
@@ -0,0 +1,14 @@
+---
+- project:
+    name: dmaap-datarouter-csit
+    jobs:
+      - '{project-name}-{stream}-verify-csit-{functionality}'
+      - '{project-name}-{stream}-csit-{functionality}'
+    project-name: 'dmaap-datarouter'
+    stream: 'master'
+    functionality:
+      - 'dr-suite':
+          trigger_jobs:
+            - '{project-name}-{stream}-docker-java-shell-daily'
+    robot-options: ''
+    branch: 'master'
diff --git a/jjb/dmaap/dmaap-datarouter.yaml b/jjb/dmaap/dmaap-datarouter.yaml
index c61122c..da0088d 100644
--- a/jjb/dmaap/dmaap-datarouter.yaml
+++ b/jjb/dmaap/dmaap-datarouter.yaml
@@ -14,6 +14,7 @@
           mvn-goals: 'clean package -P docker docker:build -DpushImage'
           # No-op
           script: '/bin/true'
+          build-node: 'ubuntu1604-docker-8c-8g'
 
     project: 'dmaap/datarouter'
     stream:
diff --git a/jjb/global-macros.yaml b/jjb/global-macros.yaml
index 1f751da..55711f0 100644
--- a/jjb/global-macros.yaml
+++ b/jjb/global-macros.yaml
@@ -24,6 +24,20 @@
           goals: '--version'
 
 - builder:
+    name: maven-set-release-version
+    builders:
+      - maven-target:
+          maven-version: '{maven-version}'
+          pom: '{pom}'
+          goals: 'versions:set versions:update-child-modules versions:commit -B'
+          properties:
+            - 'newVersion=${{release_version}}'
+          settings: '{mvn-settings}'
+          settings-type: cfp
+          global-settings: 'global-settings'
+          global-settings-type: cfp
+
+- builder:
     name: maven-docker-push-release
     builders:
       - maven-target:
@@ -55,21 +69,6 @@
             - docker.push.registry=nexus3.onap.org:10003
 
 - builder:
-    name: maven-docker-push-daily-test
-    builders:
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          goals: 'clean deploy -B -P {mvn-profile}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-          properties:
-            - docker.pull.registry=nexus3.onap.org:10001
-            - docker.push.registry=nexus3.onap.org:10003
-
-- builder:
     name: docker-login
     builders:
       - shell: !include-raw: include-docker-login.sh
diff --git a/jjb/global-templates-helm.yaml b/jjb/global-templates-helm.yaml
new file mode 100644
index 0000000..038b359
--- /dev/null
+++ b/jjb/global-templates-helm.yaml
@@ -0,0 +1,166 @@
+---
+###########
+# ANCHORS #
+###########
+- helm_job_boiler_plate: &helm_job_boiler_plate
+    name: helm_job_boiler_plate
+
+    ######################
+    # Default parameters #
+    ######################
+
+    branch: master
+    submodule-recursive: true
+
+    # default params for helm jobs
+    pre_build_script: ''
+    post_build_script: ''
+
+    #####################
+    # Job Configuration #
+    #####################
+
+    project-type: freestyle
+    node: '{build-node}'
+
+    properties:
+      - lf-infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - lf-infra-parameters:
+          branch: '{branch}'
+          project: '{project}'
+          stream: '{stream}'
+          lftools-version: '{lftools-version}'
+
+    wrappers:
+      - lf-infra-wrappers:
+          build-timeout: '{build-timeout}'
+          jenkins-ssh-credential: '{jenkins-ssh-credential}'
+
+    publishers:
+      - lf-infra-publish
+
+- helm_verify_boiler_plate: &helm_verify_boiler_plate
+    name: helm_verify_boiler_plate
+
+    concurrent: true
+
+    scm:
+      - gerrit-trigger-scm:
+          refspec: '$GERRIT_REFSPEC'
+          choosing-strategy: 'default'
+          submodule-recursive: '{submodule-recursive}'
+
+    triggers:
+      - gerrit-trigger-patch-submitted:
+          status-context: '{project}-Helm-Verify'
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: '{files}'
+
+- helm_merge_boiler_plate: &helm_merge_boiler_plate
+    name: helm_merge_boiler_plate
+
+    scm:
+      - gerrit-trigger-scm:
+          refspec: '$GERRIT_REFSPEC'
+          choosing-strategy: 'default'
+          submodule-recursive: '{submodule-recursive}'
+
+    triggers:
+      - gerrit-trigger-patch-merged:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+          files: '{files}'
+      - pollscm:
+          cron: ''
+
+#################
+# JOB TEMPLATES #
+#################
+- job-template:
+    name: '{project-name}-{stream}-verify-helm'
+    # Job template for helm verify jobs
+
+    <<: *helm_job_boiler_plate
+    # yamllint disable-line rule:key-duplicates
+    <<: *helm_verify_boiler_plate
+
+    builders:
+      - shell: '{pre_build_script}'
+      - shell: '{build_script}'
+      - shell: '{post_build_script}'
+
+- job-template:
+    name: '{project-name}-{stream}-merge-helm'
+    # Job template for Helm merge jobs
+
+    <<: *helm_job_boiler_plate
+    # yamllint disable-line rule:key-duplicates
+    <<: *helm_merge_boiler_plate
+
+    builders:
+      - shell: '{pre_build_script}'
+      - shell: '{build_script}'
+      - shell: '{post_build_script}'
+
+- job-template:
+    name: '{project-name}-{subproject}-{stream}-verify-helm'
+    # Job template for helm verify jobs
+
+    <<: *helm_job_boiler_plate
+    # yamllint disable-line rule:key-duplicates
+    <<: *helm_verify_boiler_plate
+
+    builders:
+      - shell: '{pre_build_script}'
+      - shell: '{build_script}'
+      - shell: '{post_build_script}'
+
+- job-template:
+    name: '{project-name}-{subproject}-{stream}-merge-helm'
+    # Job template for helm merge jobs
+
+    <<: *helm_job_boiler_plate
+    # yamllint disable-line rule:key-duplicates
+    <<: *helm_merge_boiler_plate
+
+    builders:
+      - shell: '{pre_build_script}'
+      - shell: '{build_script}'
+      - shell: '{post_build_script}'
+
+- job-template:
+    name: '{project-name}-{stream}-update-helm-weekly'
+    # Job template for weekly helm update jobs
+    #
+    # Required Variables:
+    #     branch:    git branch (eg. stable/lithium or master)
+    <<: *helm_job_boiler_plate
+
+    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
+          choosing-strategy: default
+
+    builders:
+      - shell: '{pre_build_script}'
+      - shell: '{build_script}'
+      - shell: '{post_build_script}'
+
+    triggers:
+      # 11 AM UTC
+      - timed: 'H 11 * * *'
+      - gerrit-trigger-release-manually:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+
diff --git a/jjb/global-templates-java.yaml b/jjb/global-templates-java.yaml
index ef91f81..25df505 100644
--- a/jjb/global-templates-java.yaml
+++ b/jjb/global-templates-java.yaml
@@ -1,69 +1,5 @@
 ---
-- job-template:
-    # Job template for Java verify jobs
-    #
-    # The purpose of this job template is to run:
-    # 1. maven clean install -DskipTests=true
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-
-    name: '{project-name}-{stream}-verify-java-skip-tests'
-
-    project-type: freestyle
-    concurrent: true
-    node: '{build-node}'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: 'clean install -DskipTests=true -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-          maven-opts:
-            - maven.test.skip=true
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
+- job-template: &verify_java_defaults
     # Job template for Java verify jobs
     #
     # The purpose of this job template is to run:
@@ -77,6 +13,8 @@
     project-type: freestyle
     concurrent: true
     node: '{build-node}'
+    pattern: '**'
+    pom:
 
     properties:
       - infra-properties:
@@ -108,7 +46,7 @@
           server: '{server-name}'
           project: '{project}'
           branch: '{branch}'
-          files: '**'
+          files: '{obj:pattern}'
 
     builders:
       - provide-maven-settings:
@@ -116,6 +54,7 @@
           settings-file: '{mvn-settings}'
       - maven-target:
           maven-version: '{maven-version}'
+          pom: '{obj:pom}'
           goals: 'clean install -B
             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn {mvn-params}'
           settings: '{mvn-settings}'
@@ -140,117 +79,14 @@
     # Required Variables:
     #     branch:    git branch (eg. stable/lithium or master)
 
+    <<: *verify_java_defaults
     name: '{project-name}-{stream}-verify-java-checkstyle'
-    project-type: freestyle
-    concurrent: true
-    node: '{build-node}'
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-      - maven-params:
-          mvn-params: '{mvn-params}'
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-          submodule-recursive: '{submodule-recursive}'
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: 'clean install -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn {mvn-params}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
     publishers:
       - infra-shiplogs:
           maven-version: '{maven-version}'
       - checkstyle-result
 
 - job-template:
-    # Job template for Java verify jobs that takes a maven template
-    #
-    # The purpose of this job template is to run:
-    # 1. maven clean install -P {mvn-profile}
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-
-    name: '{project-name}-{stream}-verify-profile-java'
-
-    project-type: freestyle
-    concurrent: true
-    node: '{build-node}'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '{files}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: 'clean install -P {mvn-profile} -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
     # Job template for Java verify jobs with POM not at the root
     #
     # The purpose of this job template is to run:
@@ -264,60 +100,9 @@
     #     pattern:   ant file-path pattern relative to the workspace used to
     #                trigger the job
 
+    <<: *verify_java_defaults
     name: '{project-name}-{stream}-{subproject}-verify-java'
 
-    project-type: freestyle
-    concurrent: true
-    node: '{build-node}'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '{pattern}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          goals: 'clean install -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
 - job-template:
     # Job template for Java daily release jobs
     #
@@ -442,15 +227,10 @@
           steps:
             - inject:
                 properties-file: version.properties
-            - maven-target:
+            - maven-set-release-version:
                 maven-version: '{maven-version}'
-                goals: 'versions:set versions:update-child-modules versions:commit -B'
-                properties:
-                  - 'newVersion=${{release_version}}'
-                settings: '{mvn-settings}'
-                settings-type: cfp
-                global-settings: 'global-settings'
-                global-settings-type: cfp
+                mvn-settings: '{mvn-settings}'
+                pom:
       - maven-target:
           maven-version: '{maven-version}'
           goals: 'clean deploy -B
@@ -519,15 +299,10 @@
 
       - inject:
           properties-file: version.properties
-      - maven-target:
+      - maven-set-release-version:
           maven-version: '{maven-version}'
-          goals: 'versions:set versions:update-child-modules versions:commit -B'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
+          mvn-settings: '{mvn-settings}'
+          pom:
 
       - maven-target:
           maven-version: '{maven-version}'
@@ -598,15 +373,10 @@
 
       - inject:
           properties-file: version.properties
-      - maven-target:
+      - maven-set-release-version:
           maven-version: '{maven-version}'
-          goals: 'versions:set versions:update-child-modules versions:commit -B'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
+          mvn-settings: '{mvn-settings}'
+          pom:
 
       - maven-target:
           maven-version: '{maven-version}'
@@ -753,16 +523,10 @@
 
       - inject:
           properties-file: version.properties
-      - maven-target:
+      - maven-set-release-version:
           maven-version: '{maven-version}'
+          mvn-settings: '{mvn-settings}'
           pom: '{pom}'
-          goals: 'versions:set versions:update-child-modules versions:commit -B'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
 
       - maven-target:
           maven-version: '{maven-version}'
@@ -780,93 +544,8 @@
       - infra-shiplogs:
           maven-version: '{maven-version}'
 
-- job-template:
-    # Job template for Java daily release jobs with POM not at the root
-    #
-    # The purpose of this job template is to run:
-    # 1. maven set versions
-    # 2. maven clean deploy with Sonar scans
-    #
-    # This job supports subprojects.
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-    #     pom:       name/location of the pom.xml file relative to the workspace
 
-    name: '{project-name}-{stream}-{subproject}-release-version-java-shell-daily'
-
-    project-type: freestyle
-    node: '{build-node}'
-    disabled: '{disabled}'
-    maven-deploy-properties:
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 11 AM UTC
-      - timed: 'H 11 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-
-      - inject:
-          properties-file: version.properties
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          goals: 'versions:set versions:update-child-modules versions:commit -B'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-      - shell: '{script}'
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          goals: 'clean deploy sonar:sonar -Dsonar.host.url=${{SONAR}} -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          properties:
-            - '{maven-deploy-properties}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
+- job-template: &merge_java_defaults
     # Job template for Java merge jobs
     #
     # The purpose of this job template is to run:
@@ -879,269 +558,9 @@
 
     project-type: freestyle
     node: '{build-node}'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    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: '**'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: 'clean deploy -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for Java merge jobs based on
-    #   '{project-name}-{stream}-merge-java'
-    # The purpose of this job template is to run:
-    # 1. maven clean deploy
-    #
-    # This project supports maven properties.
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-    #     maven-properties: properties passed to maven
-
-    name: '{project-name}-{stream}-merge-properties-java'
-
-    project-type: freestyle
-    node: '{build-node}'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    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: '**'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: 'clean deploy -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-          properties: '{obj:mvn_properties}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for Java merge jobs that takes a maven template
-    #
-    # The purpose of this job template is to run:
-    # 1. maven clean deploy -P {mvn-profile}
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-
-    name: '{project-name}-{stream}-merge-profile-java'
-
-    project-type: freestyle
-    node: '{build-node}'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    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: '{files}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-
-      - docker-login
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: 'clean deploy -P {mvn-profile} -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-          properties:
-            - docker.pull.registry=nexus3.onap.org:10001
-            - docker.push.registry=nexus3.onap.org:10003
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for Java merge jobs that should also be triggered by upstream
-    # merges
-    #
-    # Required Variables:
-    #   stream:         release stream
-    #   branch:         git branch
-    #   dependencies:   fully qualified upstream job name to trigger on
-    #                   this may be ''
-
-    name: '{project-name}-{stream}-downstream-merge-java'
-
-    project-type: freestyle
-    node: '{build-node}'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - reverse:
-          jobs: '{dependencies}'
-          result: 'success'
-      - gerrit-trigger-patch-merged:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: 'clean deploy -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for Java merge jobs with POM not at the root
-    #
-    # The purpose of this job template is to run:
-    # 1. maven clean deploy
-    #
-    # This job supports subprojects.
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-    #     pom:       name/location of the pom.xml file relative to the workspace
-    #     pattern:   ant file-path pattern relative to the workspace used to
-    #                trigger the job
-
-    name: '{project-name}-{stream}-{subproject}-merge-java'
-
-    project-type: freestyle
-    node: '{build-node}'
+    pattern: '**'
+    pom:
+    mvn_properties: []
 
     properties:
       - infra-properties:
@@ -1179,19 +598,83 @@
           settings-file: '{mvn-settings}'
       - maven-target:
           maven-version: '{maven-version}'
-          pom: '{pom}'
+          pom: '{obj:pom}'
           goals: 'clean deploy -B
             -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
           settings: '{mvn-settings}'
           settings-type: cfp
           global-settings: 'global-settings'
           global-settings-type: cfp
+          properties: '{obj:mvn_properties}'
 
     publishers:
       - infra-shiplogs:
           maven-version: '{maven-version}'
 
 - job-template:
+    # Job template for Java merge jobs based on
+    #   '{project-name}-{stream}-merge-java'
+    # The purpose of this job template is to run:
+    # 1. maven clean deploy
+    #
+    # This project supports maven properties.
+    #
+    # Required Variables:
+    #     branch:    git branch (eg. stable/lithium or master)
+    #     maven-properties: properties passed to maven
+
+    <<: *merge_java_defaults
+    name: '{project-name}-{stream}-merge-properties-java'
+
+- job-template:
+    # Job template for Java merge jobs that takes a maven template
+    #
+    # The purpose of this job template is to run:
+    # 1. maven clean deploy -P {mvn-profile}
+    #
+    # Required Variables:
+    #     branch:    git branch (eg. stable/lithium or master)
+
+    <<: *merge_java_defaults
+    name: '{project-name}-{stream}-merge-profile-java'
+
+    builders:
+      - provide-maven-settings:
+          global-settings-file: 'global-settings'
+          settings-file: '{mvn-settings}'
+
+      - docker-login
+
+      - maven-target:
+          maven-version: '{maven-version}'
+          goals: 'clean deploy -P {mvn-profile} -B
+            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
+          settings: '{mvn-settings}'
+          settings-type: cfp
+          global-settings: 'global-settings'
+          global-settings-type: cfp
+          properties:
+            - docker.pull.registry=nexus3.onap.org:10001
+            - docker.push.registry=nexus3.onap.org:10003
+
+- job-template:
+    # Job template for Java merge jobs with POM not at the root
+    #
+    # The purpose of this job template is to run:
+    # 1. maven clean deploy
+    #
+    # This job supports subprojects.
+    #
+    # Required Variables:
+    #     branch:    git branch (eg. stable/lithium or master)
+    #     pom:       name/location of the pom.xml file relative to the workspace
+    #     pattern:   ant file-path pattern relative to the workspace used to
+    #                trigger the job
+
+    <<: *merge_java_defaults
+    name: '{project-name}-{stream}-{subproject}-merge-java'
+
+- job-template: &docker_java_defaults
     # Job template for Docker daily jobs
     #
     # The purpose of this job template is to run:
@@ -1269,65 +752,14 @@
     # Required Variables:
     #     branch:    git branch (eg. stable/lithium or master)
 
+    <<: *docker_java_defaults
     name: '{project-name}-{stream}-docker-java-daily'
     id: docker-java-daily
-    project-type: freestyle
     node: '{build-node}'
-    disabled: '{disabled}'
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-      - maven-params:
-          mvn-params: '{mvn-params}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
     wrappers:
       - infra-wrappers-docker-build:
           build-timeout: '{build-timeout}'
 
-    triggers:
-      # 12 AM UTC
-      - timed: 'H 12 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-
-      - docker-login
-
-      - maven-docker-push-daily:
-          maven-version: '{maven-version}'
-          mvn-settings: '{mvn-settings}'
-          pom: '{docker-pom}'
-          # use default as mvn-profile if profile is not needed
-          mvn-profile: '{mvn-profile}'
-          mvn-params: '{mvn-params}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-
 - job-template:
     # Job template for building & pushing docker images
     #
@@ -1386,15 +818,10 @@
           steps:
             - inject:
                 properties-file: version.properties
-            - maven-target:
+            - maven-set-release-version:
                 maven-version: '{maven-version}'
-                goals: 'versions:set versions:update-child-modules versions:commit -B'
-                properties:
-                  - 'newVersion=${{release_version}}'
-                settings: '{mvn-settings}'
-                settings-type: cfp
-                global-settings: 'global-settings'
-                global-settings-type: cfp
+                mvn-settings: '{mvn-settings}'
+                pom:
       - docker-login
       - maven-docker-push-daily:
           maven-version: '{maven-version}'
@@ -1421,7 +848,7 @@
 
     name: '{project-name}-{stream}-docker-java-shell-daily'
     project-type: freestyle
-    node: 'ubuntu1604-docker-8c-8g'
+    node: '{build-node}'
     disabled: '{disabled}'
     properties:
       - infra-properties:
@@ -1481,6 +908,75 @@
     #
     # The purpose of this job template is to run:
     #  1. login to the docker registry
+    #  2. run a specified shell builder
+    #
+    # Required Variables:
+    #     pom:       name/location of the pom.xml file relative to the workspace
+    #     maven-properties: properties passed to maven
+
+    name: '{project-name}-{stream}-{subproject}-docker-java-shell-daily'
+    project-type: freestyle
+    node: '{build-node}'
+    disabled: '{disabled}'
+    properties:
+      - infra-properties:
+          build-days-to-keep: '{build-days-to-keep}'
+
+    parameters:
+      - infra-parameters:
+          project: '{project}'
+          branch: '{branch}'
+          refspec: 'refs/heads/{branch}'
+          artifacts: '{archive-artifacts}'
+      - maven-exec:
+          maven-version: '{maven-version}'
+
+    scm:
+      - gerrit-trigger-scm:
+          refspec: ''
+          choosing-strategy: 'default'
+          submodule-recursive: '{submodule-recursive}'
+
+    wrappers:
+      - infra-wrappers:
+          build-timeout: '{build-timeout}'
+
+    triggers:
+      # 12 AM UTC
+      - timed: 'H 12 * * *'
+      - gerrit-trigger-release-manually:
+          server: '{server-name}'
+          project: '{project}'
+          branch: '{branch}'
+
+    builders:
+
+      - provide-maven-settings:
+          global-settings-file: 'global-settings'
+          settings-file: '{mvn-settings}'
+
+      - docker-login
+
+      - maven-target:
+          maven-version: '{maven-version}'
+          pom: '{pom}'
+          goals: '{mvn-goals}'
+          settings: '{mvn-settings}'
+          settings-type: cfp
+          global-settings: 'global-settings'
+          global-settings-type: cfp
+
+      - shell: '{script}'
+
+    publishers:
+      - infra-shiplogs:
+          maven-version: '{maven-version}'
+
+- job-template:
+    # Job template for building & pushing docker images
+    #
+    # The purpose of this job template is to run:
+    #  1. login to the docker registry
     #  2. inject a version.properties file and set versions
     #  3. run a specified shell builder
     #
@@ -1531,16 +1027,10 @@
 
       - inject:
           properties-file: version.properties
-
-      - maven-target:
+      - maven-set-release-version:
           maven-version: '{maven-version}'
-          goals: 'versions:set versions:update-child-modules versions:commit -B'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
+          mvn-settings: '{mvn-settings}'
+          pom:
 
       - docker-login
 
@@ -1615,17 +1105,10 @@
 
       - inject:
           properties-file: version.properties
-
-      - maven-target:
+      - maven-set-release-version:
           maven-version: '{maven-version}'
+          mvn-settings: '{mvn-settings}'
           pom: '{pom}'
-          goals: 'versions:set versions:update-child-modules versions:commit -B'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
 
       - docker-login
 
@@ -1644,7 +1127,7 @@
       - infra-shiplogs:
           maven-version: '{maven-version}'
 
-- job-template:
+- job-template: &docker_version_java_defaults
     # Job template for building & pushing docker images
     #
     # The purpose of this job template is to run:
@@ -1703,16 +1186,10 @@
 
       - inject:
           properties-file: version.properties
-
-      - maven-target:
+      - maven-set-release-version:
           maven-version: '{maven-version}'
-          goals: 'versions:set versions:update-child-modules versions:commit -B'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
+          mvn-settings: '{mvn-settings}'
+          pom:
 
       - docker-login
 
@@ -1741,163 +1218,14 @@
     #     profile:   the docker profile defined in the pom
     #     maven-properties: properties passed to maven
 
+    <<: *docker_version_java_defaults
     name: '{project-name}-{stream}-docker-version-java-daily'
     id: 'docker-version-java-daily'
-    project-type: freestyle
     node: '{build-node}'
-    disabled: '{disabled}'
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-      - maven-params:
-          mvn-params: '{mvn-params}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
     wrappers:
       - infra-wrappers-docker-build:
           build-timeout: '{build-timeout}'
 
-    triggers:
-      # 12 AM UTC
-      - timed: 'H 12 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-
-      - inject:
-          properties-file: version.properties
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: 'versions:set versions:update-child-modules versions:commit -B'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-      - docker-login
-
-      - maven-docker-push-daily:
-          maven-version: '{maven-version}'
-          mvn-settings: '{mvn-settings}'
-          pom: '{docker-pom}'
-          # use default as mvn-profile if profile is not needed
-          mvn-profile: '{mvn-profile}'
-          mvn-params: '{mvn-params}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for building & pushing docker images
-    #
-    # The purpose of this job template is to run:
-    #  1. inject a version.properties file and set versions
-    #  2. login to the docker registry
-    #  3. run a docker push
-    #
-    # This job supports subprojects.
-    #
-    # Required Variables:
-    #     pom:       name/location of the pom.xml file relative to the workspace
-    #     maven-properties: properties passed to maven
-
-    name: '{project-name}-{stream}-{subproject}-docker-version-java-daily'
-    project-type: freestyle
-    node: 'ubuntu1604-docker-8c-8g'
-    disabled: '{disabled}'
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-      - maven-params:
-          mvn-params: '{mvn-params}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 12 AM UTC
-      - timed: 'H 12 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-
-      - inject:
-          properties-file: version.properties
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          goals: 'versions:set versions:update-child-modules versions:commit -B'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-      - docker-login
-
-      - maven-docker-push-daily:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          mvn-settings: '{mvn-settings}'
-          pom: '{docker-pom}'
-          # use default as mvn-profile if profile is not needed
-          mvn-profile: '{mvn-profile}'
-          mvn-params: '{mvn-params}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
 - job-template:
     # Job template for building & pushing docker images for AAI specific repos
     #
@@ -1986,344 +1314,6 @@
           maven-version: '{maven-version}'
 
 - job-template:
-    # Job template for building & pushing docker images for AAI specific repos
-    #
-    # The purpose of this job template is to run:
-    #  1. login to the docker registry
-    #  2. run maven goals
-    #  3. run include-docker-push.sh
-    #
-    # This job supports subprojects
-    #
-    # Required Variables:
-    #     pom:       name/location of the pom.xml file relative to the workspace
-    #     maven-properties: properties passed to maven
-
-    name: '{project-name}-{stream}-{subproject}-aai-docker-java-daily'
-    project-type: freestyle
-    node: 'ubuntu1604-docker-8c-8g'
-    disabled: '{disabled}'
-    docker-image-name: ''
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-      - docker-image-name:
-          docker-image-name: '{docker-image-name}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 12 AM UTC
-      - timed: 'H 12 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-
-      - docker-login
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: 'pom.xml'
-          goals: 'clean install -DskipTests -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          goals: '{mvn-goals}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-          properties:
-            - maven.test.skip=true
-            - docker.pull.registry=nexus3.onap.org:10001
-            - docker.push.registry=nexus3.onap.org:10003
-
-      - shell: !include-raw-escape: include-docker-push.sh
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for Java daily release jobs
-    #
-    # The purpose of this job template is to run:
-    # 1. inject a version.properties file and set versions
-    # 2. change version in all POM files to the release version specified
-    #    in version.properties. This is done using a script instread of
-    #    the mvn version plugin that assumes some specific parent structure
-    #
-    # The POM files are required to use the Maven staging plugin so the deploy
-    # does not deploy directly to the release repo.
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-
-    name: '{project-name}-{stream}-release-version2-java-daily'
-
-    project-type: freestyle
-    node: '{build-node}'
-    disabled: '{disabled}'
-    maven-deploy-properties:
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 11 AM UTC
-      - timed: 'H 11 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-install:
-          maven-version: '{maven-version}'
-
-      - inject:
-          properties-file: version.properties
-
-      - shell: !include-raw-escape: include-update-pom-versions.sh
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: 'clean deploy site:site site:stage-deploy -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          properties:
-            - '{maven-deploy-properties}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for Java daily release jobs
-    #
-    # The purpose of this job template is to run:
-    # 1. inject a version.properties file and set versions
-    # 2. change version in all POM files to the release version specified
-    #     in version.properties. This is done using a script instread of
-    #     the mvn version plugin that assumes some specific parent structure
-    #
-    # The POM files are required to use the Maven staging plugin so the deploy
-    # does not deploy directly to the release repo.
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-    #     pom:       name/location of the pom.xml file relative to the workspace
-    #     pattern:   ant file-path pattern relative to the workspace used to
-    #                trigger the job
-
-    name: '{project-name}-{stream}-{subproject}-release-version2-java-daily'
-
-    project-type: freestyle
-    node: '{build-node}'
-    disabled: '{disabled}'
-    maven-deploy-properties:
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 11 AM UTC
-      - timed: 'H 11 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '{pattern}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-install:
-          maven-version: '{maven-version}'
-
-      - inject:
-          properties-file: version.properties
-
-      - shell: !include-raw-escape: include-update-pom-versions.sh
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          goals: 'clean deploy site:site site:stage-deploy -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          properties:
-            - '{maven-deploy-properties}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for Java daily release jobs
-    #
-    # The purpose of this job template is to run:
-    #  1. inject a version.properties file and set versions
-    #  2. change version in all POM files to the release version specified
-    #     in version.properties. This is done using a script instread of
-    #     the mvn version plugin that assumes some specific parent structure
-    #     This version does NOT change the version within the <parent> tag
-    #
-    # The POM files are required to use the Maven staging plugin so the deploy
-    # does not deploy directly to the release repo.
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-    #     pom:       name/location of the pom.xml file relative to the workspace
-    #     pattern:   ant file-path pattern relative to the workspace used to
-    #                trigger the job
-
-    name: '{project-name}-{stream}-{subproject}-release-version3-java-daily'
-
-    project-type: freestyle
-    node: '{build-node}'
-    disabled: '{disabled}'
-    maven-deploy-properties:
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 11 AM UTC
-      - timed: 'H 11 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '{pattern}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-install:
-          maven-version: '{maven-version}'
-
-      - inject:
-          properties-file: version.properties
-
-      - shell: !include-raw-escape: include-update-pom-versions-not-parent.sh
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          goals: 'clean deploy site:site site:stage-deploy -B
-            -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          properties:
-            - '{maven-deploy-properties}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
     # Job template for Java merge jobs for SDC specific repos
     #
     # The purpose of this job template is to run:
@@ -2332,42 +1322,12 @@
     # Required Variables:
     #     branch:    git branch (eg. stable/lithium or master)
 
+    <<: *merge_java_defaults
     name: '{project-name}-{stream}-sdc-merge-java'
 
-    project-type: freestyle
     node: 'ubuntu1604-docker-8c-8g'
     build-timeout: 120
 
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    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: '**'
-
     builders:
       - provide-maven-settings:
           global-settings-file: 'global-settings'
@@ -2375,95 +1335,10 @@
 
       - docker-login
 
-      - maven-docker-push-daily-test:
+      - maven-docker-push-daily:
           maven-version: '{maven-version}'
           mvn-settings: '{mvn-settings}'
           pom: '{docker-pom}'
           # use default as mvn-profile if profile is not needed
           mvn-profile: '{mvn-profile}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for building & pushing docker images for AAI specific repos
-    #
-    # The purpose of this job template is to run:
-    #  1. login to the docker registry
-    #  2. run maven clean install goals skipping tests
-    #  3. run maven goals
-    #
-    # Required Variables:
-    #     pom:       name/location of the pom.xml file relative to the workspace
-    #     maven-properties: properties passed to maven
-
-    name: '{project-name}-{stream}-aai-docker-java-version-daily'
-    project-type: freestyle
-    node: 'ubuntu1604-docker-8c-8g'
-    disabled: '{disabled}'
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 12 AM UTC
-      - timed: 'H 12 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-
-      - docker-login
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: 'pom.xml'
-          goals: 'clean install -DskipTests -B -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          pom: '{pom}'
-          goals: '{mvn-goals}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-          properties:
-            - maven.test.skip=true
-            - docker.pull.registry=nexus3.onap.org:10001
-            - docker.push.registry=nexus3.onap.org:10003
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
+          mvn-params: ''
diff --git a/jjb/global-templates-python.yaml b/jjb/global-templates-python.yaml
index b03bce3..80ae84b 100644
--- a/jjb/global-templates-python.yaml
+++ b/jjb/global-templates-python.yaml
@@ -70,73 +70,6 @@
       - infra-shiplogs:
           maven-version: '{maven-version}'
 
-- job-template:
-    # Job template for docker daily jobs for 2 SCMs
-    #
-    # The purpose of this job template is to run:
-    # 1. inject a version properties file
-    # 2. login into the docker registry
-    # 4. run a specified shell script
-    #
-    # Required Variables:
-    #     branch:    git branch (eg. stable/lithium or master)
-
-    name: '{project-name}-{stream}-2scm-docker-shell-daily'
-    project-type: freestyle
-    node: 'ubuntu1604-docker-8c-8g'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-      - git-extra-project:
-          project: '{extra-project1}'
-          refspec: '{extra-refspec1}'
-          branch: '{extra-branch1}'
-          checkout-dir: '{checkout-dir1}'
-      - git-extra-project:
-          project: '{extra-project2}'
-          refspec: '{extra-refspec2}'
-          branch: '{extra-branch2}'
-          checkout-dir: '{checkout-dir2}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 12 AM UTC
-      - timed: 'H 12 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - inject:
-          properties-file: version.properties
-      - docker-login
-      - shell: '{script}'
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
 
 - job-template:
     # Job template for docker daily jobs for 3 SCMs
diff --git a/jjb/global-templates-script.yaml b/jjb/global-templates-script.yaml
index 991ffd6..9264bc9 100644
--- a/jjb/global-templates-script.yaml
+++ b/jjb/global-templates-script.yaml
@@ -1,72 +1,6 @@
 ---
 # vim: sw=2 ts=2 sts=2 et :
 
-
-- job-template:
-    # Job template for verifying a submission.  triggered on
-    # gerrit-trigger-patch-submitted, does scm, mvn with passed in goals,
-    # then run script
-    #
-    # Required Variables:
-    #   branch:         git branch
-    #   script:         build script to execute
-    #   mvn-settings:   settings file for this specific job
-    #   mvn-goals:      space separated list of maven build goals (e.g.
-    #                   clean, install etc, --version for noop)
-    name: '{project-name}-{stream}-verify-scm-mvn-script'
-
-    project-type: freestyle
-    concurrent: true
-    node: 'ubuntu1604-docker-8c-8g'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '{mvn-goals}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - docker-login
-      - shell: '{script}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
 - job-template:
     # Job template for merging a submission.  triggered on
     # gerrit-trigger-patch-merged, does scm, mvn with passed-in goals, then
@@ -130,465 +64,6 @@
       - infra-shiplogs:
           maven-version: '{maven-version}'
 
-- job-template:
-    # Job template for daily-release a submission.  triggered on timer, does
-    # scm mvn with passed-in goals, then run script
-    #
-    # Required Variables:
-    #   branch:         git branch
-    #   script:         build script to execute
-    #   mvn-goals-versioning: space separated list of maven build goals
-    #      (--version for no op,
-    #      or versions:set versions:update-child-modules versions:commit)
-    #   mvn-goals: space separated list of maven build goals (--version for
-    #      noop, or clean deploy)
-    name: '{project-name}-{stream}-daily-release-scm-mvn-script'
-
-    project-type: freestyle
-    concurrent: true
-    node: 'ubuntu1604-docker-8c-8g'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 11 AM UTC
-      - timed: 'H 11 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - inject:
-          properties-file: version.properties
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '{mvn-goals-versioning}'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '{mvn-goals}'
-          properties:
-            - '{maven-deploy-properties}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - docker-login
-      - shell: '{script}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for daily-release a submission.  triggered on timer, does
-    # scm mvn with passed-in goals, then run script.
-    # Version changed using include-update-pom-versions.sh script
-    #
-    # Required Variables:
-    #   branch:         git branch
-    #   script:         build script to execute
-    #   mvn-goals: space separated list of maven build goals (--version for
-    #      noop, or clean deploy)
-    name: '{project-name}-{stream}-daily-release-version2-scm-mvn-script'
-
-    project-type: freestyle
-    concurrent: true
-    node: 'ubuntu1604-docker-8c-8g'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      # 11 AM UTC
-      - timed: 'H 11 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-
-      - inject:
-          properties-file: version.properties
-
-      - shell: !include-raw-escape: include-update-pom-versions.sh
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '{mvn-goals}'
-          properties:
-            - '{maven-deploy-properties}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - docker-login
-      - shell: '{script}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for verifying a submission.  triggered on
-    # gerrit-trigger-patch-submitted,
-    # does scm 2 repos, mvn with passed-in goals, then run script
-    #
-    # Required Variables:
-    #   branch:         git branch
-    #   script:         build script to execute
-    #   extra-project:  extra gerrit project to checkout
-    #   extra-refspec:  refspec for the extra project
-    #   extra-branch:   branch to checkout for the extra project
-    #   checkout-dir:   directory to checkout the extra project to
-    #                     DO NOT SET THIS TO anything that translates to
-    #                     $WORKSPACE as it will destroy the initial
-    #                     project checkout
-    #   mvn-goals:      space separated list of maven build goals (e.g.
-    #                   clean, install etc,  --version for noop)
-
-    name: '{project-name}-{stream}-verify-2scm-mvn-script'
-
-    project-type: freestyle
-    concurrent: true
-    node: 'ubuntu1604-docker-8c-8g'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-          submodule-recursive: '{submodule-recursive}'
-      - git-extra-project:
-          project: '{extra-project}'
-          refspec: '{extra-refspec}'
-          branch: '{extra-branch}'
-          checkout-dir: '{checkout-dir}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '{mvn-goals}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - docker-login
-      - shell: '{script}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for merged submission.  triggered on
-    # gerrit-trigger-patch-merged,does scm of 2 repos, mvn with passed in
-    # goals, then run script
-    #
-    # Required Variables:
-    #   branch:         git branch
-    #   script:         build script to execute
-    #   extra-project:  extra gerrit project to checkout
-    #   extra-refspec:  refspec for the extra project
-    #   extra-branch:   branch to checkout for the extra project
-    #   checkout-dir:   directory to checkout the extra project to
-    #                     DO NOT SET THIS TO anything that translates to
-    #                     $WORKSPACE as it will destroy the initial
-    #                     project checkout
-    #   mvn-goals:      space separated list of maven build goals (--version
-    #                   for noop, clean deploy for mvn project)
-
-    name: '{project-name}-{stream}-merge-2scm-mvn-script'
-
-    project-type: freestyle
-    concurrent: true
-    node: 'ubuntu1604-docker-8c-8g'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-      - git-extra-project:
-          project: '{extra-project}'
-          refspec: '{extra-refspec}'
-          branch: '{extra-branch}'
-          checkout-dir: '{checkout-dir}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-merged:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '{mvn-goals}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - docker-login
-      - shell: '{script}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for merged submission.  triggered on
-    # gerrit-trigger-patch-merged, does scm x2, mvn with passed-in goals,
-    # then run script
-    #
-    # Required Variables:
-    #   branch:         git branch
-    #   script:         build script to execute
-    #   extra-project:  extra gerrit project to checkout
-    #   extra-refspec:  refspec for the extra project
-    #   extra-branch:   branch to checkout for the extra project
-    #   checkout-dir:   directory to checkout the extra project to
-    #                     DO NOT SET THIS TO anything that translates to
-    #                     $WORKSPACE as it will destroy the initial
-    #                     project checkout
-    #   mvn-goals:      space separated list of maven build goals (--version
-    #                   for noop, clean deploy for mvn project)
-    #   mvn-goals-versioning:      space separated list of maven build goals
-    #                   (--version for no op, clean deploy for mvn project)
-
-    name: '{project-name}-{stream}-daily-release-2scm-mvn-script'
-
-    project-type: freestyle
-    node: 'ubuntu1604-docker-8c-8g'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: ''
-          choosing-strategy: 'default'
-          submodule-recursive: '{submodule-recursive}'
-      - git-extra-project:
-          project: '{extra-project}'
-          refspec: '{extra-refspec}'
-          branch: '{extra-branch}'
-          checkout-dir: '{checkout-dir}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - timed: 'H 11 * * *'
-      - gerrit-trigger-release-manually:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      - inject:
-          properties-file: version.properties
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '{mvn-goals-versioning}'
-          properties:
-            - 'newVersion=${{release_version}}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '{mvn-goals}'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - docker-login
-      - shell: '{script}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
-
-- job-template:
-    # Job template for basic scm and script trigger
-    #
-    # Required Variables:
-    #   branch:         git branch
-    #   build-node:     what build node to run on
-    #   script:         build script to execute
-
-    name: '{project-name}-{stream}-verify-script'
-
-    project-type: freestyle
-    concurrent: true
-    node: '{build-node}'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-          submodule-recursive: '{submodule-recursive}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      # make sure maven gets installed / setup
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '--version'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - shell: '{script}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
 
 - job-template:
     # Job template for 2 scm and script trigger
@@ -665,89 +140,6 @@
           maven-version: '{maven-version}'
 
 
-- job-template:
-    # Job template for 3 scm and script trigger
-    #
-    # Required Variables:
-    #   branch:         git branch
-    #   build-node:     what build node to run on
-    #   script:         build script to execute
-    #   extra-project1:  extra gerrit project to checkout
-    #   extra-refspec1:  refspec for the extra project
-    #   extra-branch1:   branch to checkout for the extra project
-    #   checkout-dir1:   directory to checkout the extra project to
-    #                     DO NOT SET THIS TO anything that translates to
-    #                     $WORKSPACE as it will destroy the initial
-    #                     project checkout
-    #   extra-project2:  extra gerrit project to checkout
-    #   extra-refspec2:  refspec for the extra project
-    #   extra-branch2:   branch to checkout for the extra project
-    #   checkout-dir2:   directory to checkout the extra project to
-    #                     DO NOT SET THIS TO anything that translates to
-    #                     $WORKSPACE as it will destroy the initial
-    #                     project checkout
-    name: '{project-name}-{stream}-three-scm-verify-script'
-
-    project-type: freestyle
-    concurrent: true
-    node: '{build-node}'
-
-    properties:
-      - infra-properties:
-          build-days-to-keep: '{build-days-to-keep}'
-
-    parameters:
-      - infra-parameters:
-          project: '{project}'
-          branch: '{branch}'
-          refspec: 'refs/heads/{branch}'
-          artifacts: '{archive-artifacts}'
-      - maven-exec:
-          maven-version: '{maven-version}'
-    scm:
-      - gerrit-trigger-scm:
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-          submodule-recursive: '{submodule-recursive}'
-      - git-extra-project:
-          project: '{extra-project1}'
-          refspec: '{extra-refspec1}'
-          branch: '{extra-branch1}'
-          checkout-dir: '{checkout-dir1}'
-      - git-extra-project:
-          project: '{extra-project2}'
-          refspec: '{extra-refspec2}'
-          branch: '{extra-branch2}'
-          checkout-dir: '{checkout-dir2}'
-
-    wrappers:
-      - infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-submitted:
-          server: '{server-name}'
-          project: '{project}'
-          branch: '{branch}'
-          files: '**'
-
-    builders:
-      - provide-maven-settings:
-          global-settings-file: 'global-settings'
-          settings-file: '{mvn-settings}'
-      # make sure maven gets installed / setup
-      - maven-target:
-          maven-version: '{maven-version}'
-          goals: '--version'
-          settings: '{mvn-settings}'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - shell: '{script}'
-
-    publishers:
-      - infra-shiplogs:
-          maven-version: '{maven-version}'
 
 # vim: sw=2 ts=2 sts=2 et :
 
diff --git a/jjb/logging-analytics/logging-analytics-pomba-pomba-aai-context-builder.yaml b/jjb/logging-analytics/logging-analytics-pomba-pomba-aai-context-builder.yaml
index d2a10f8..9940403 100644
--- a/jjb/logging-analytics/logging-analytics-pomba-pomba-aai-context-builder.yaml
+++ b/jjb/logging-analytics/logging-analytics-pomba-pomba-aai-context-builder.yaml
@@ -7,6 +7,10 @@
       - '{project-name}-{stream}-verify-java'
       - '{project-name}-{stream}-merge-java'
       - '{project-name}-{stream}-release-version-java-daily'
+      - '{project-name}-{stream}-docker-java-daily':
+          docker-pom: 'pom.xml'
+          mvn-profile: 'docker'
+          mvn-params: '-Dmaven.test.skip=true'
     project: logging-analytics/pomba/pomba-aai-context-builder
     stream:
       - 'master':
diff --git a/jjb/logging-analytics/logging-analytics-pomba-pomba-context-aggregator.yaml b/jjb/logging-analytics/logging-analytics-pomba-pomba-context-aggregator.yaml
index 534c995..e0eae9c 100644
--- a/jjb/logging-analytics/logging-analytics-pomba-pomba-context-aggregator.yaml
+++ b/jjb/logging-analytics/logging-analytics-pomba-pomba-context-aggregator.yaml
@@ -7,6 +7,11 @@
       - '{project-name}-{stream}-verify-java'
       - '{project-name}-{stream}-merge-java'
       - '{project-name}-{stream}-release-version-java-daily'
+      - '{project-name}-{stream}-docker-java-daily':
+          docker-pom: 'pom.xml'
+          mvn-goals: 'docker:build'
+          mvn-profile: 'docker'
+          mvn-params: '-Dmaven.test.skip=true'
     project: logging-analytics/pomba/pomba-context-aggregator
     stream:
       - 'master':
diff --git a/jjb/logging-analytics/logging-analytics-pomba-pomba-network-discovery-context-builder.yaml b/jjb/logging-analytics/logging-analytics-pomba-pomba-network-discovery-context-builder.yaml
index 0b87b8f..34d161f 100644
--- a/jjb/logging-analytics/logging-analytics-pomba-pomba-network-discovery-context-builder.yaml
+++ b/jjb/logging-analytics/logging-analytics-pomba-pomba-network-discovery-context-builder.yaml
@@ -7,6 +7,10 @@
       - '{project-name}-{stream}-verify-java'
       - '{project-name}-{stream}-merge-java'
       - '{project-name}-{stream}-release-version-java-daily'
+      - '{project-name}-{stream}-docker-java-daily':
+          docker-pom: 'pom.xml'
+          mvn-profile: 'docker'
+          mvn-params: '-Dmaven.test.skip=true'
     project: logging-analytics/pomba/pomba-network-discovery-context-builder
     stream:
       - 'master':
diff --git a/jjb/logging-analytics/logging-analytics-pomba-pomba-sdc-context-builder.yaml b/jjb/logging-analytics/logging-analytics-pomba-pomba-sdc-context-builder.yaml
index f9822f2..20acd63 100644
--- a/jjb/logging-analytics/logging-analytics-pomba-pomba-sdc-context-builder.yaml
+++ b/jjb/logging-analytics/logging-analytics-pomba-pomba-sdc-context-builder.yaml
@@ -7,6 +7,10 @@
       - '{project-name}-{stream}-verify-java'
       - '{project-name}-{stream}-merge-java'
       - '{project-name}-{stream}-release-version-java-daily'
+      - '{project-name}-{stream}-docker-java-daily':
+          docker-pom: 'pom.xml'
+          mvn-profile: 'docker'
+          mvn-params: '-Dmaven.test.skip=true'
     project: logging-analytics/pomba/pomba-sdc-context-builder
     stream:
       - 'master':
diff --git a/jjb/logging-analytics/logging-analytics-pomba-pomba-sdnc-context-builder.yaml b/jjb/logging-analytics/logging-analytics-pomba-pomba-sdnc-context-builder.yaml
index b0eab1f..3c48c66 100644
--- a/jjb/logging-analytics/logging-analytics-pomba-pomba-sdnc-context-builder.yaml
+++ b/jjb/logging-analytics/logging-analytics-pomba-pomba-sdnc-context-builder.yaml
@@ -7,6 +7,10 @@
       - '{project-name}-{stream}-verify-java'
       - '{project-name}-{stream}-merge-java'
       - '{project-name}-{stream}-release-version-java-daily'
+      - '{project-name}-{stream}-docker-java-daily':
+          docker-pom: 'pom.xml'
+          mvn-profile: 'docker'
+          mvn-params: '-Dmaven.test.skip=true'
     project: logging-analytics/pomba/pomba-sdnc-context-builder
     stream:
       - 'master':
diff --git a/jjb/oom/oom-helm.yaml b/jjb/oom/oom-helm.yaml
new file mode 100644
index 0000000..003a743
--- /dev/null
+++ b/jjb/oom/oom-helm.yaml
@@ -0,0 +1,83 @@
+---
+- project:
+    name: oom
+    project-name: oom
+    project: oom
+    mvn-settings: oom-settings
+    archive-artifacts: ''
+    build-node: ubuntu1604-helm-2c-1g
+    pre_build_script: !include-raw-escape: shell/helm-repo-init.sh
+    stream:
+      - 'master':
+          branch: 'master'
+
+    subproject:
+      - 'aaf':
+          files: 'kubernetes/aaf/**'
+      - 'aai':
+          files: 'kubernetes/aai/**'
+      - 'appc':
+          files: 'kubernetes/appc/**'
+      - 'clamp':
+          files: 'kubernetes/clamp/**'
+      - 'cli':
+          files: 'kubernetes/cli/**'
+      - 'common':
+          files: 'kubernetes/common/**'
+      - 'consul':
+          files: 'kubernetes/consul/**'
+      - 'dcaegen2':
+          files: 'kubernetes/dcaegen2/**'
+      - 'dmaap':
+          files: 'kubernetes/dmaap/**'
+      - 'esr':
+          files: 'kubernetes/esr/**'
+      - 'log':
+          files: 'kubernetes/log/**'
+      - 'msb':
+          files: 'kubernetes/msb/**'
+      - 'multicloud':
+          files: 'kubernetes/multicloud/**'
+      - 'nbi':
+          files: 'kubernetes/nbi/**'
+      - 'oof':
+          files: 'kubernetes/oof/**'
+      - 'policy':
+          files: 'kubernetes/policy/**'
+      - 'portal':
+          files: 'kubernetes/portal/**'
+      - 'readiness':
+          files: 'kubernetes/readiness/**'
+      - 'robot':
+          files: 'kubernetes/robot/**'
+      - 'sdc':
+          files: 'kubernetes/sdc/**'
+      - 'sdnc':
+          files: 'kubernetes/sdnc/**'
+      - 'sniro-emulator':
+          files: 'kubernetes/sniro-emulator/**'
+      - 'so':
+          files: 'kubernetes/so/**'
+      - 'uui':
+          files: 'kubernetes/uui/**'
+      - 'vfc':
+          files: 'kubernetes/vfc/**'
+      - 'vid':
+          files: 'kubernetes/vid/**'
+      - 'vnfsdk':
+          files: 'kubernetes/vnfsdk/**'
+
+    jobs:
+      - '{project-name}-{stream}-verify-helm':
+          build_script: 'cd kubernetes/ && make all'
+          files: '**'
+      - '{project-name}-{stream}-merge-helm':
+          build_script: 'cd kubernetes/ && make all'
+          files: '**'
+      - '{project-name}-{subproject}-{stream}-verify-helm':
+          build_script: 'cd kubernetes/ && make {subproject}'
+      - '{project-name}-{subproject}-{stream}-merge-helm':
+          build_script: 'cd kubernetes/ && make {subproject}'
+      - '{project-name}-{stream}-update-helm-weekly':
+          files: '**'
+          build_script: 'cd kubernetes/ && make all'
diff --git a/jjb/optf/optf-has.yaml b/jjb/optf/optf-has.yaml
index 60e984e..2301524 100644
--- a/jjb/optf/optf-has.yaml
+++ b/jjb/optf/optf-has.yaml
@@ -21,16 +21,42 @@
       - '{project-name}-{stream}-verify-java'
       - '{project-name}-{stream}-{subproject}-merge-java'
       - '{project-name}-{stream}-{subproject}-release-version-java-daily'
-      - '{project-name}-{stream}-{subproject}-docker-java-version-shell-daily':
-          docker-pom: 'pom.xml'
-          mvn-goals: 'install'
-          script:
-            !include-raw-escape: 'build-optf-has-docker-image.sh'
     files: '**'
     archive-artifacts: ''
     build-node: 'ubuntu1604-builder-4c-4g'
 
 - project:
+    name: optf-has-docker
+    project-name: 'optf-has'
+    project: 'optf/has'
+    stream:
+      - 'master':
+          branch: 'master'
+      - 'beijing':
+          branch: 'beijing'
+    mvn-settings: 'optf-has-settings'
+    subproject:
+      - 'conductor':
+          path: 'conductor'
+          pattern: 'conductor/**'
+          pom: 'pom.xml'
+    jobs:
+      - '{project-name}-{stream}-{subproject}-docker-java-version-shell-daily':
+          docker-pom: 'pom.xml'
+          mvn-goals: 'install'
+          mvn-params: '-Dmaven.test.skip=true'
+          script:
+            !include-raw-escape: 'build-optf-has-docker-image.sh'
+          build-node: queue-docker-4c-4g
+      - '{project-name}-{stream}-{subproject}-docker-java-shell-daily':
+          docker-pom: 'pom.xml'
+          mvn-goals: 'install'
+          mvn-params: '-Dmaven.test.skip=true'
+          script:
+            !include-raw-escape: 'build-optf-has-docker-image.sh'
+          build-node: queue-docker-4c-4g
+
+- project:
     name: optf-has-sonar
     jobs:
       - gerrit-maven-sonar
diff --git a/jjb/optf/optf-osdf.yaml b/jjb/optf/optf-osdf.yaml
index 23d4144..4c98b32 100644
--- a/jjb/optf/optf-osdf.yaml
+++ b/jjb/optf/optf-osdf.yaml
@@ -20,16 +20,42 @@
       - '{project-name}-{stream}-{subproject}-verify-java'
       - '{project-name}-{stream}-{subproject}-merge-java'
       - '{project-name}-{stream}-{subproject}-release-version-java-daily'
-      - '{project-name}-{stream}-{subproject}-docker-java-version-shell-daily':
-          docker-pom: 'pom.xml'
-          mvn-goals: 'install'
-          script:
-            !include-raw-escape: 'build-optf-osdf-docker-image.sh'
     files: '**'
     archive-artifacts: ''
     build-node: 'ubuntu1604-builder-4c-4g'
 
 - project:
+    name: optf-osdf-docker
+    project-name: 'optf-osdf'
+    project: 'optf/osdf'
+    stream:
+      - 'master':
+          branch: 'master'
+      - 'beijing':
+          branch: 'beijing'
+    mvn-settings: 'optf-osdf-settings'
+    subproject:
+      - 'osdf':
+          path: '.'
+          pattern: '**'
+          pom: 'pom.xml'
+    jobs:
+      - '{project-name}-{stream}-{subproject}-docker-java-version-shell-daily':
+          docker-pom: 'pom.xml'
+          mvn-goals: 'install'
+          mvn-params: '-Dmaven.test.skip=true'
+          script:
+            !include-raw-escape: 'build-optf-osdf-docker-image.sh'
+          build-node: queue-docker-4c-4g
+      - '{project-name}-{stream}-{subproject}-docker-java-shell-daily':
+          docker-pom: 'pom.xml'
+          mvn-goals: 'install'
+          mvn-params: '-Dmaven.test.skip=true'
+          script:
+            !include-raw-escape: 'build-optf-osdf-docker-image.sh'
+          build-node: queue-docker-4c-4g
+
+- project:
     name: optf-osdf-sonar
     jobs:
       - gerrit-maven-sonar
diff --git a/jjb/sdnc/sdnc-plugins.yaml b/jjb/sdnc/sdnc-plugins.yaml
index 633a9cd..551b79d 100644
--- a/jjb/sdnc/sdnc-plugins.yaml
+++ b/jjb/sdnc/sdnc-plugins.yaml
@@ -4,7 +4,8 @@
     project-name: 'sdnc-plugins'
     jobs:
       - gerrit-maven-clm
-      - '{project-name}-{stream}-verify-java-skip-tests'
+      - '{project-name}-{stream}-verify-java':
+          mvn-params: '-DskipTests=true'
       - '{project-name}-{stream}-merge-java'
       - '{project-name}-{stream}-release-version-java-daily'
 
diff --git a/jjb/vfc/build-nfvo-db-docker-image.sh b/jjb/vfc/build-nfvo-db-docker-image.sh
new file mode 100755
index 0000000..99eab5d
--- /dev/null
+++ b/jjb/vfc/build-nfvo-db-docker-image.sh
@@ -0,0 +1,10 @@
+#!/bin/bash
+#
+echo '============== CALLING SCRIPT TO BUILD DOCKER IMAGES ================='
+
+CURRENTDIR="$(pwd)"
+echo $CURRENTDIR
+
+chmod 755 ./docker/*.*
+
+./docker/build_image.sh
diff --git a/jjb/vfc/vfc-nfvo-db.yaml b/jjb/vfc/vfc-nfvo-db.yaml
new file mode 100644
index 0000000..32d1333
--- /dev/null
+++ b/jjb/vfc/vfc-nfvo-db.yaml
@@ -0,0 +1,33 @@
+---
+- project:
+    name: vfc-nfvo-db
+    project: 'vfc/nfvo/db'
+    project-name: 'vfc-nfvo-db'
+    mvn-settings: 'vfc-nfvo-db-settings'
+    stream:
+      - 'master':
+          branch: 'master'
+    build-node: ubuntu1604-builder-4c-4g
+    jobs:
+      - gerrit-maven-clm
+      - '{project-name}-{stream}-verify-java'
+      - '{project-name}-{stream}-merge-java'
+      - '{project-name}-{stream}-release-version-java-daily'
+      - '{project-name}-{stream}-docker-java-version-shell-daily':
+          docker-pom: 'pom.xml'
+          mvn-goals: 'install'
+          script:
+            !include-raw-escape: 'build-nfvo-db-docker-image.sh'
+
+- project:
+    name: vfc-nfvo-db-sonar
+    jobs:
+      - gerrit-maven-sonar
+    cron: 'H 11 * * *'
+    build-node: ubuntu1604-builder-4c-4g
+    project: 'vfc/nfvo/db'
+    project-name: 'vfc-nfvo-db'
+    branch: 'master'
+    mvn-settings: 'vfc-nfvo-db-settings'
+    mvn-goals: 'clean install'
+    mvn-opts: '-Xmx1024m -XX:MaxPermSize=256m'
diff --git a/jjb/vfc/vfc-nfvo-driver-vnfm-svnfm-root.yaml b/jjb/vfc/vfc-nfvo-driver-vnfm-svnfm-root.yaml
index b8ba2d6..a5cbe02 100644
--- a/jjb/vfc/vfc-nfvo-driver-vnfm-svnfm-root.yaml
+++ b/jjb/vfc/vfc-nfvo-driver-vnfm-svnfm-root.yaml
@@ -9,10 +9,12 @@
     mvn-settings: 'vfc-nfvo-driver-vnfm-svnfm-settings'
     mvn-profile: rootOnly
     jobs:
-      - '{project-name}-{stream}-verify-profile-java'
+      - '{project-name}-{stream}-verify-java':
+          mvn-params: '-P rootOnly'
+          pattern: 'pom.xml'
       - '{project-name}-{stream}-merge-profile-java':
-            build-node: ubuntu1604-docker-8c-8g
+          build-node: ubuntu1604-docker-8c-8g
+          pattern: 'pom.xml'
       - '{project-name}-{stream}-release-version-profile-java-daily'
-    files: 'pom.xml'
     archive-artifacts: ''
     build-node: ubuntu1604-builder-4c-4g
diff --git a/packer/provision/local-docker.yaml b/packer/provision/local-docker.yaml
index 6de720c..31369b9 100644
--- a/packer/provision/local-docker.yaml
+++ b/packer/provision/local-docker.yaml
@@ -32,3 +32,31 @@
         - name: 'Add golang to PATH'
           command: 'echo "export PATH=$PATH:/usr/local/go/bin" >> /etc/profile'
           become: true
+
+    - name: Install libxml2-utils
+      apt:
+        name: libxml2-utils
+        state: present
+      become: true
+
+    - name: Add Google Chrome key
+      apt-key:
+        url: https://dl-ssl.google.com/linux/linux_signing_key.pub
+        state: present
+      become: true
+
+    - name: Add Google Chrome repo
+      copy: content="deb http://dl.google.com/linux/chrome/deb/ stable main" dest={{apt_file}} owner=root group=root mode=644
+      when: google_apt_exists.rc == 1
+      become: true
+
+    - name: Update apt cache
+      apt: update_cache=yes
+      when: google_apt_exists.rc == 1
+      become: true
+
+    - name: Install Google Chrome
+      apt:
+        name: pkg=google-chrome-stable state=installed
+        state: installed
+      become: true
diff --git a/shell/helm-repo-init.sh b/shell/helm-repo-init.sh
new file mode 100644
index 0000000..fb2f810
--- /dev/null
+++ b/shell/helm-repo-init.sh
@@ -0,0 +1,9 @@
+#!/bin/bash
+# Ensure we fail the job if any steps fail
+set -e -o pipefail
+
+# client only init, tiller will not be installed
+helm init --client-only
+cd kubernetes/ || exit
+make repo
+cd ..