Add jobs for branch stable/2005 73/29273/2
authorMauro Sardara <msardara@cisco.com>
Tue, 6 Oct 2020 20:32:12 +0000 (22:32 +0200)
committerMauro Sardara <msardara@cisco.com>
Thu, 8 Oct 2020 13:23:48 +0000 (15:23 +0200)
Refactoring of JJB yaml configuration

Signed-off-by: Mauro Sardara <msardara@cisco.com>
Change-Id: I5af065d0edbdd9f7df54366ae13be3c4488e065c
Signed-off-by: Mauro Sardara <msardara@cisco.com>
jjb/hicn/hicn.yaml

index 4f6f18f..61bb68b 100644 (file)
 ---
 - project:
-    name: hicn-verify
+    name: hicn-x86_64
     jobs:
-      - 'hicn-verify-{stream}-{os}'
+      - "hicn-verify-{stream}-{os}-{executor-arch}"
+      - "hicn-merge-{stream}-{os}-{executor-arch}"
 
-    project: 'hicn'
+    project: "hicn"
     os:
       - ubuntu1804:
-          repo-os-part: 'ubuntu.bionic.main'
+          repo-os-part: "ubuntu.bionic.main"
+      - ubuntu2004:
+          repo-os-part: "ubuntu.focal.main"
       - centos7:
-          repo-os-part: 'centos7'
+          repo-os-part: "centos7"
+
+    executor-arch: "x86_64"
 
     stream:
       - master:
-          branch: 'master'
-          repo-stream-part: 'master'
-      - lightng:
-          branch: 'hicn-light-ng'
-          repo-stream-part: 'hicn-light-ng'
+          branch: "master"
+          repo-stream-part: "master"
+          repository-name: "hicn"
+      - "2005":
+          branch: "stable/2005"
+          repo-stream-part: "stable.2005"
+          repository-name: "hicn"
 
     type:
       - short
       - long
 
 - project:
-    name: hicn-merge
+    name: hicn-aarch64
     jobs:
-      - 'hicn-merge-{stream}-{os}'
+      - "hicn-verify-{stream}-{os}-{executor-arch}"
+      - "hicn-merge-{stream}-{os}-{executor-arch}"
+
+    project: "hicn"
 
-    project: 'hicn'
     os:
       - ubuntu1804:
-          repo-os-part: 'ubuntu.bionic.main'
-      - centos7:
-          repo-os-part: 'centos7'
+          repo-os-part: "ubuntu-arm.bionic.main"
+
+    executor-arch: "aarch64"
 
     stream:
       - master:
-          branch: 'master'
-          repo-stream-part: 'master'
+          branch: "master"
+          repo-stream-part: "master"
+          repository-name: "hicn"
+      - "2005":
+          branch: "stable/2005"
+          repo-stream-part: "stable.2005"
+          repository-name: "hicn"
 
     type:
       - short
       - long
 
 - project:
-    name: hicn-arm-verify
+    name: hicn-beta-x86_64
     jobs:
-      - 'hicn-arm-verify-{stream}-{os}'
+      - "hicn-verify-{stream}-{os}-{executor-arch}"
 
-    project: 'hicn'
+    project: "hicn"
     os:
       - ubuntu1804:
-          repo-os-part: 'ubuntu-arm.bionic.main'
+          repo-os-part: "ubuntu.bionic.main"
+      - ubuntu2004:
+          repo-os-part: "ubuntu.focal.main"
+      - centos7:
+          repo-os-part: "centos7"
+
+    executor-arch: "x86_64"
 
     stream:
-      - master:
-          branch: 'master'
-          repo-stream-part: 'master'
       - lightng:
-          branch: 'hicn-light-ng'
-          repo-stream-part: 'hicn-light-ng'
+          branch: "hicn-light-ng"
+          repo-stream-part: "hicn-light-ng"
 
     type:
       - short
       - long
 
 - project:
-    name: hicn-arm-merge
+    name: hicn-beta-aarch64
     jobs:
-      - 'hicn-arm-merge-{stream}-{os}'
+      - "hicn-verify-{stream}-{os}-{executor-arch}"
 
-    project: 'hicn'
+    project: "hicn"
     os:
       - ubuntu1804:
-          repo-os-part: 'ubuntu-arm.bionic.main'
+          repo-os-part: "ubuntu-arm.bionic.main"
+
+    executor-arch: "aarch64"
 
     stream:
-      - master:
-          branch: 'master'
-          repo-stream-part: 'master'
+      - lightng:
+          branch: "hicn-light-ng"
+          repo-stream-part: "hicn-light-ng"
 
     type:
       - short
 - project:
     name: hicn-misc
     jobs:
-      - 'hicn-checkstyle-verify-{stream}'
-    project: 'hicn'
+      - "hicn-checkstyle-verify-{stream}-{os}-{executor-arch}"
+    project: "hicn"
     stream:
       - master:
-          branch: 'master'
-          repo-stream-part: 'master'
+          branch: "master"
+          repo-stream-part: "master"
       - lightng:
-          branch: 'hicn-light-ng'
-          repo-stream-part: 'hicn-light-ng'
-    os: ubuntu1804
+          branch: "hicn-light-ng"
+          repo-stream-part: "hicn-light-ng"
+    os:
+      - ubuntu2004:
+          repo-os-part: "ubuntu.focal.main"
+    executor-arch: "x86_64"
 
 - project:
-    name: hicn-extras
+    name: hicn-extras-x86_64
     jobs:
-      - 'hicn-extras-verify-{stream}-{os}'
-      - 'hicn-extras-build-{stream}-{os}'
-    project: 'hicn'
+      - "hicn-extras-verify-{stream}-{os}-{executor-arch}"
+      - "hicn-extras-build-{stream}-{os}-{executor-arch}"
+    project: "hicn"
     os:
       - ubuntu1804:
-          repo-os-part: 'ubuntu.bionic.main'
+          repo-os-part: "ubuntu.bionic.main"
+      - ubuntu2004:
+          repo-os-part: "ubuntu.focal.main"
       - centos7:
-          repo-os-part: 'centos7'
+          repo-os-part: "centos7"
+
+    executor-arch: "x86_64"
 
     stream:
       - master:
-          branch: 'master'
-          repo-stream-part: 'master'
+          branch: "master"
+          repo-stream-part: "master"
 
     type:
       - short
       - long
 
 - project:
-    name: hicn-extras-arm
+    name: hicn-extras-aarch64
     jobs:
-      - 'hicn-extras-arm-verify-{stream}-{os}'
-      - 'hicn-extras-arm-build-{stream}-{os}'
+      - "hicn-extras-verify-{stream}-{os}-{executor-arch}"
+      - "hicn-extras-build-{stream}-{os}-{executor-arch}"
 
-    project: 'hicn'
+    project: "hicn"
     os:
       - ubuntu1804:
-          repo-os-part: 'ubuntu-arm.bionic.main'
+          repo-os-part: "ubuntu-arm.bionic.main"
+
+    executor-arch: "aarch64"
 
     stream:
       - master:
-          branch: 'master'
-          repo-stream-part: 'master'
+          branch: "master"
+          repo-stream-part: "master"
 
     type:
       - short
       - long
 
-
 - project:
     name: hicn-view
     views:
     project-name: hicn
 
 - job-template:
-    name: 'hicn-checkstyle-verify-{stream}'
+    name: "hicn-checkstyle-verify-{stream}-{os}-{executor-arch}"
 
     project-type: freestyle
-    node: '{os}-us'
+    node: "builder-{os}-prod-{executor-arch}"
     concurrent: true
-    archive-artifacts: '**/tmp/hicn-failed-unittests/*/* **/core'
+    archive-artifacts: "**/tmp/hicn-failed-unittests/*/* **/core"
 
     build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: '{build-num-to-keep}'
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
+      daysToKeep: "{build-days-to-keep}"
+      numToKeep: "{build-num-to-keep}"
+      artifactDaysToKeep: "{build-artifact-days-to-keep}"
+      artifactNumToKeep: "{build-artifact-num-to-keep}"
 
     parameters:
       - project-parameter:
-          project: '{project}'
+          project: "{project}"
       - gerrit-parameter:
-          branch: '{branch}'
+          branch: "{branch}"
       - os-parameter:
-          os: '{os}'
+          os: "{os}"
       - repo-name-parameter:
-          repo-name: '{repo-stream-part}.ubuntu.bionic.main'
+          repo-name: "{repo-stream-part}.ubuntu.bionic.main"
       - string:
           name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
+          default: "{archive-artifacts}"
           description: Artifacts to archive to the logs server.
 
     scm:
       - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
+          credentials-id: "jenkins-gerrit-credentials"
+          refspec: "$GERRIT_REFSPEC"
+          choosing-strategy: "gerrit"
 
     wrappers:
       - fdio-infra-wrappers:
-          build-timeout: '{build-timeout}'
+          build-timeout: "{build-timeout}"
 
     triggers:
       - gerrit:
-          server-name: 'Primary'
+          server-name: "Primary"
           trigger-on:
             - patchset-created-event:
-                exclude-drafts: 'true'
-                exclude-trivial-rebase: 'false'
-                exclude-no-code-change: 'true'
+                exclude-drafts: "true"
+                exclude-trivial-rebase: "false"
+                exclude-no-code-change: "true"
             - draft-published-event
             - comment-added-contains-event:
-                comment-contains-value: 'checkstylecheck'
+                comment-contains-value: "checkstylecheck"
             - comment-added-contains-event:
-                comment-contains-value: 'docsonly'
+                comment-contains-value: "docsonly"
             - comment-added-contains-event:
-                comment-contains-value: 'recheck'
+                comment-contains-value: "recheck"
             - comment-added-contains-event:
-                comment-contains-value: 'reverify'
+                comment-contains-value: "reverify"
           projects:
-            - project-compare-type: 'ANT'
-              project-pattern: '{project}'
+            - project-compare-type: "ANT"
+              project-pattern: "{project}"
               branches:
-                - branch-compare-type: 'ANT'
-                  branch-pattern: '**/{branch}'
+                - branch-compare-type: "ANT"
+                  branch-pattern: "**/{branch}"
               file-paths:
                 - compare-type: REG_EXP
                   pattern: ^((?!\/COMMIT_MSG|docs|_abc|_def[\/\.]).)*$
-              disable-strict-forbidden-file-verification: 'true'
+              disable-strict-forbidden-file-verification: "true"
           override-votes: true
           gerrit-build-notbuilt-verified-value: 0
           gerrit-build-successful-verified-value: 1
           # yamllint disable-line rule:line-length
-          notbuilt-message: 'Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes.'
+          notbuilt-message: "Automatic retry of failed jobs may be in process. A proper vote should be set when retry completes."
           # yamllint disable-line rule:line-length
-          failed-message: 'Checkstyle failed. No further verify jobs will be started.'
-          successful-message: 'checkstyle_success'
+          failed-message: "Checkstyle failed. No further verify jobs will be started."
+          successful-message: "checkstyle_success"
           skip-vote:
             successful: true
             failed: false
             notbuilt: false
 
     builders:
-      - shell:
-          !include-raw-escape: include-raw-hicn-checkstyle.sh
+      - shell: !include-raw-escape:
+            include-raw-hicn-checkstyle.sh
 
     publishers:
       - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
+          maven-version: "mvn36"
       - naginator:
           rerun-unstable-builds: true
           max-failed-builds: 1
           fixed-delay: 90
 
 - job-template:
-    name: 'hicn-verify-{stream}-{os}'
+    name: "hicn-verify-{stream}-{os}-{executor-arch}"
 
     project-type: freestyle
-    node: '{os}-us'
+    node: "builder-{os}-prod-{executor-arch}"
     concurrent: true
 
     build-discarder:
-      daysToKeep: '{build-days-to-keep}'
+      daysToKeep: "{build-days-to-keep}"
       numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
+      artifactDaysToKeep: "{build-artifact-days-to-keep}"
+      artifactNumToKeep: "{build-artifact-num-to-keep}"
 
     parameters:
       - project-parameter:
-          project: '{project}'
+          project: "{project}"
       - gerrit-parameter:
-          branch: '{branch}'
+          branch: "{branch}"
       - os-parameter:
-          os: '{os}'
+          os: "{os}"
       - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
+          repo-name: "{repo-stream-part}.{repo-os-part}"
       - stream-parameter:
-          stream: '{stream}'
+          stream: "{stream}"
       - string:
           name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
+          default: "{archive-artifacts}"
           description: Artifacts to archive to the logs server.
 
     scm:
       - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
+          credentials-id: "jenkins-gerrit-credentials"
+          refspec: "$GERRIT_REFSPEC"
+          choosing-strategy: "gerrit"
 
     wrappers:
       - fdio-infra-wrappers:
 
     triggers:
       - gerrit-trigger-checkstyle:
-          name: '{project}'
-          branch: '{branch}'
+          name: "{project}"
+          branch: "{branch}"
 
     builders:
-      - shell:
-          !include-raw-escape:
+      - shell: !include-raw-escape:
           - include-raw-hicn-build.sh
 
     publishers:
       - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
+          maven-version: "mvn36"
       - naginator:
           rerun-unstable-builds: false
           max-failed-builds: 2
           fixed-delay: 90
 
 - job-template:
-    name: 'hicn-arm-verify-{stream}-{os}'
-
-    project-type: freestyle
-    node: '{os}arm-us'
-    concurrent: true
-
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-      - gerrit-parameter:
-          branch: '{branch}'
-      - os-parameter:
-          os: '{os}'
-      - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
-      - stream-parameter:
-          stream: '{stream}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
-
-    scm:
-      - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
-
-    wrappers:
-      - fdio-infra-wrappers:
-          build-timeout: 120
-
-    triggers:
-      - gerrit-trigger-checkstyle:
-          name: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - shell:
-          !include-raw-escape:
-          - include-raw-hicn-build.sh
-
-    publishers:
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
-
-- job-template:
-    name: 'hicn-merge-{stream}-{os}'
-
-    project-type: freestyle
-    node: '{os}-us'
-
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-      - gerrit-parameter:
-          branch: '{branch}'
-      - os-parameter:
-          os: '{os}'
-      - maven-project-parameter:
-          maven: 'mvn33-new'
-      - maven-exec:
-          maven-version: 'mvn33-new'
-      - stream-parameter:
-          stream: 'hicn'
-      - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
-
-    scm:
-      - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: ''
-          choosing-strategy: 'default'
-
-    wrappers:
-      - fdio-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit-trigger-patch-merged:
-          name: '{project}'
-          branch: '{branch}'
-
-    builders:
-      - config-file-provider:
-          files:
-            - file-id: '.packagecloud'
-              target: '/root/.packagecloud'
-      - config-file-provider:
-          files:
-            - file-id: 'packagecloud_api'
-              target: '/root/packagecloud_api'
-      - maven-target:
-          maven-version: 'mvn33-new'
-          goals: '--version'
-          settings: 'hicn-settings'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - shell:
-          !include-raw-escape:
-          - include-raw-hicn-checkstyle.sh
-      - shell:
-          !include-raw-escape:
-          - include-raw-hicn-build.sh
-      - provide-maven-settings:
-          settings-file: 'hicn-settings'
-          global-settings-file: 'global-settings'
-      - shell:
-          !include-raw-escape:
-          - ../scripts/packagecloud_push.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/maven_push_functions.sh
-          - include-raw-hicn-maven-push.sh
-
-    publishers:
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
-
-- job-template:
-    name: 'hicn-arm-merge-{stream}-{os}'
+    name: "hicn-merge-{stream}-{os}-{executor-arch}"
 
     project-type: freestyle
-    node: '{os}arm-us'
+    node: "builder-{os}-prod-{executor-arch}"
 
     build-discarder:
-      daysToKeep: '{build-days-to-keep}'
+      daysToKeep: "{build-days-to-keep}"
       numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
+      artifactDaysToKeep: "{build-artifact-days-to-keep}"
+      artifactNumToKeep: "{build-artifact-num-to-keep}"
 
     parameters:
       - project-parameter:
-          project: '{project}'
+          project: "{project}"
       - gerrit-parameter:
-          branch: '{branch}'
+          branch: "{branch}"
       - os-parameter:
-          os: '{os}'
+          os: "{os}"
       - maven-project-parameter:
-          maven: 'mvn33-new'
+          maven: "mvn33-new"
       - maven-exec:
-          maven-version: 'mvn33-new'
+          maven-version: "mvn33-new"
       - stream-parameter:
-          stream: 'hicn'
+          stream: "{repository-name}"
       - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
+          repo-name: "{repo-stream-part}.{repo-os-part}"
       - string:
           name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
+          default: "{archive-artifacts}"
           description: Artifacts to archive to the logs server.
 
     scm:
       - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: ''
-          choosing-strategy: 'default'
+          credentials-id: "jenkins-gerrit-credentials"
+          refspec: ""
+          choosing-strategy: "default"
 
     wrappers:
       - fdio-infra-wrappers:
-          build-timeout: '{build-timeout}'
+          build-timeout: "{build-timeout}"
 
     triggers:
       - gerrit-trigger-patch-merged:
-          name: '{project}'
-          branch: '{branch}'
+          name: "{project}"
+          branch: "{branch}"
 
     builders:
       - config-file-provider:
           files:
-            - file-id: '.packagecloud'
-              target: '/root'
+            - file-id: ".packagecloud"
+              target: "/root/.packagecloud"
       - config-file-provider:
           files:
-            - file-id: 'packagecloud_api'
-              target: '/root'
+            - file-id: "packagecloud_api"
+              target: "/root/packagecloud_api"
       - maven-target:
-          maven-version: 'mvn33-new'
-          goals: '--version'
-          settings: 'hicn-settings'
+          maven-version: "mvn33-new"
+          goals: "--version"
+          settings: "hicn-settings"
           settings-type: cfp
-          global-settings: 'global-settings'
+          global-settings: "global-settings"
           global-settings-type: cfp
-      - shell:
-          !include-raw-escape:
+      - shell: !include-raw-escape:
           - include-raw-hicn-checkstyle.sh
-      - shell:
-          !include-raw-escape:
+      - shell: !include-raw-escape:
           - include-raw-hicn-build.sh
       - provide-maven-settings:
-          settings-file: 'hicn-settings'
-          global-settings-file: 'global-settings'
-      - shell:
-          !include-raw-escape:
+          settings-file: "hicn-settings"
+          global-settings-file: "global-settings"
+      - shell: !include-raw-escape:
           - ../scripts/packagecloud_push.sh
-      - shell:
-          !include-raw-escape:
+      - shell: !include-raw-escape:
           - ../scripts/maven_push_functions.sh
           - include-raw-hicn-maven-push.sh
 
     publishers:
       - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
+          maven-version: "mvn36"
       - naginator:
           rerun-unstable-builds: false
           max-failed-builds: 1
     project-name: hicn
     mvn-settings: hicn-settings
     sonarcloud: true
-    sonarcloud-project-organization: '{sonarcloud_project_organization}'
-    sonarcloud-api-token: '{sonarcloud_api_token}'
-    sonarcloud-project-key: '{sonarcloud_project_organization}_{project-name}'
+    sonarcloud-project-organization: "{sonarcloud_project_organization}"
+    sonarcloud-api-token: "{sonarcloud_api_token}"
+    sonarcloud-project-key: "{sonarcloud_project_organization}_{project-name}"
     branch: master
     build-node: centos7-docker-2c-2g
     jobs:
       - gerrit-maven-sonar
 
 - job-template:
-    name: 'hicn-extras-verify-{stream}-{os}'
+    name: "hicn-extras-verify-{stream}-{os}-{executor-arch}"
 
     project-type: freestyle
-    node: '{os}-us'
+    node: "builder-{os}-prod-{executor-arch}"
     concurrent: true
 
     build-discarder:
-      daysToKeep: '{build-days-to-keep}'
+      daysToKeep: "{build-days-to-keep}"
       numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
+      artifactDaysToKeep: "{build-artifact-days-to-keep}"
+      artifactNumToKeep: "{build-artifact-num-to-keep}"
 
     parameters:
       - project-parameter:
-          project: '{project}'
+          project: "{project}"
       - gerrit-parameter:
-          branch: '{branch}'
+          branch: "{branch}"
       - os-parameter:
-          os: '{os}'
+          os: "{os}"
       - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
+          repo-name: "{repo-stream-part}.{repo-os-part}"
       - stream-parameter:
-          stream: '{stream}'
+          stream: "{stream}"
       - string:
           name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
+          default: "{archive-artifacts}"
           description: Artifacts to archive to the logs server.
 
     scm:
       - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: '$GERRIT_REFSPEC'
-          choosing-strategy: 'gerrit'
+          credentials-id: "jenkins-gerrit-credentials"
+          refspec: "$GERRIT_REFSPEC"
+          choosing-strategy: "gerrit"
 
     wrappers:
       - fdio-infra-wrappers:
 
     triggers:
       - gerrit:
-          server-name: 'Primary'
+          server-name: "Primary"
           trigger-on:
             - comment-added-contains-event:
-                comment-contains-value: 'verify-extras'
+                comment-contains-value: "verify-extras"
           projects:
-            - project-compare-type: 'ANT'
-              project-pattern: '{project}'
+            - project-compare-type: "ANT"
+              project-pattern: "{project}"
               branches:
-                - branch-compare-type: 'ANT'
-                  branch-pattern: '**/{branch}'
+                - branch-compare-type: "ANT"
+                  branch-pattern: "**/{branch}"
 
     builders:
-      - shell:
-          !include-raw-escape:
+      - shell: !include-raw-escape:
           - include-raw-hicn-extras-build.sh
 
     publishers:
       - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
+          maven-version: "mvn36"
       - naginator:
           rerun-unstable-builds: false
           max-failed-builds: 2
           fixed-delay: 90
 
 - job-template:
-    name: 'hicn-extras-build-{stream}-{os}'
-
-    project-type: freestyle
-    node: '{os}-us'
-
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-      - gerrit-parameter:
-          branch: '{branch}'
-      - os-parameter:
-          os: '{os}'
-      - maven-project-parameter:
-          maven: 'mvn33-new'
-      - maven-exec:
-          maven-version: 'mvn33-new'
-      - stream-parameter:
-          stream: 'hicn'
-      - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
-
-    scm:
-      - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: ''
-          choosing-strategy: 'default'
-
-    wrappers:
-      - fdio-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit:
-          server-name: 'Primary'
-          trigger-on:
-            - comment-added-contains-event:
-                comment-contains-value: 'build-extras'
-          projects:
-            - project-compare-type: 'ANT'
-              project-pattern: '{project}'
-              branches:
-                - branch-compare-type: 'ANT'
-                  branch-pattern: '**/{branch}'
-
-    builders:
-      - config-file-provider:
-          files:
-            - file-id: '.packagecloud'
-              target: '/root/.packagecloud'
-      - config-file-provider:
-          files:
-            - file-id: 'packagecloud_api'
-              target: '/root/packagecloud_api'
-      - maven-target:
-          maven-version: 'mvn33-new'
-          goals: '--version'
-          settings: 'hicn-settings'
-          settings-type: cfp
-          global-settings: 'global-settings'
-          global-settings-type: cfp
-      - shell:
-          !include-raw-escape:
-          - include-raw-hicn-extras-build.sh
-      - provide-maven-settings:
-          settings-file: 'hicn-settings'
-          global-settings-file: 'global-settings'
-      - shell:
-          !include-raw-escape:
-          - ../scripts/packagecloud_push.sh
-      - shell:
-          !include-raw-escape:
-          - ../scripts/maven_push_functions.sh
-          - include-raw-hicn-maven-push.sh
-
-    publishers:
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
-
-- job-template:
-    name: 'hicn-extras-arm-verify-{stream}-{os}'
-
-    project-type: freestyle
-    node: '{os}arm-us'
-
-    build-discarder:
-      daysToKeep: '{build-days-to-keep}'
-      numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
-
-    parameters:
-      - project-parameter:
-          project: '{project}'
-      - gerrit-parameter:
-          branch: '{branch}'
-      - os-parameter:
-          os: '{os}'
-      - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
-      - stream-parameter:
-          stream: '{stream}'
-      - string:
-          name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
-          description: Artifacts to archive to the logs server.
-
-    scm:
-      - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: ''
-          choosing-strategy: 'default'
-
-    wrappers:
-      - fdio-infra-wrappers:
-          build-timeout: '{build-timeout}'
-
-    triggers:
-      - gerrit:
-          server-name: 'Primary'
-          trigger-on:
-            - comment-added-contains-event:
-                comment-contains-value: 'verify-extras'
-          projects:
-            - project-compare-type: 'ANT'
-              project-pattern: '{project}'
-              branches:
-                - branch-compare-type: 'ANT'
-                  branch-pattern: '**/{branch}'
-
-          builders:
-            - shell:
-                !include-raw-escape:
-                - include-raw-hicn-extras-build.sh
-
-    publishers:
-      - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
-      - naginator:
-          rerun-unstable-builds: false
-          max-failed-builds: 1
-          fixed-delay: 90
-
-- job-template:
-    name: 'hicn-extras-arm-build-{stream}-{os}'
+    name: "hicn-extras-build-{stream}-{os}-{executor-arch}"
 
     project-type: freestyle
-    node: '{os}arm-us'
+    node: "builder-{os}-prod-{executor-arch}"
 
     build-discarder:
-      daysToKeep: '{build-days-to-keep}'
+      daysToKeep: "{build-days-to-keep}"
       numToKeep: 100
-      artifactDaysToKeep: '{build-artifact-days-to-keep}'
-      artifactNumToKeep: '{build-artifact-num-to-keep}'
+      artifactDaysToKeep: "{build-artifact-days-to-keep}"
+      artifactNumToKeep: "{build-artifact-num-to-keep}"
 
     parameters:
       - project-parameter:
-          project: '{project}'
+          project: "{project}"
       - gerrit-parameter:
-          branch: '{branch}'
+          branch: "{branch}"
       - os-parameter:
-          os: '{os}'
+          os: "{os}"
       - maven-project-parameter:
-          maven: 'mvn33-new'
+          maven: "mvn33-new"
       - maven-exec:
-          maven-version: 'mvn33-new'
+          maven-version: "mvn33-new"
       - stream-parameter:
-          stream: 'hicn'
+          stream: "hicn"
       - repo-name-parameter:
-          repo-name: '{repo-stream-part}.{repo-os-part}'
+          repo-name: "{repo-stream-part}.{repo-os-part}"
       - string:
           name: ARCHIVE_ARTIFACTS
-          default: '{archive-artifacts}'
+          default: "{archive-artifacts}"
           description: Artifacts to archive to the logs server.
 
     scm:
       - gerrit-trigger-scm:
-          credentials-id: 'jenkins-gerrit-credentials'
-          refspec: ''
-          choosing-strategy: 'default'
+          credentials-id: "jenkins-gerrit-credentials"
+          refspec: ""
+          choosing-strategy: "default"
 
     wrappers:
       - fdio-infra-wrappers:
-          build-timeout: '{build-timeout}'
+          build-timeout: "{build-timeout}"
 
     triggers:
       - gerrit:
-          server-name: 'Primary'
+          server-name: "Primary"
           trigger-on:
             - comment-added-contains-event:
-                comment-contains-value: 'build-extras'
+                comment-contains-value: "build-extras"
           projects:
-            - project-compare-type: 'ANT'
-              project-pattern: '{project}'
+            - project-compare-type: "ANT"
+              project-pattern: "{project}"
               branches:
-                - branch-compare-type: 'ANT'
-                  branch-pattern: '**/{branch}'
+                - branch-compare-type: "ANT"
+                  branch-pattern: "**/{branch}"
 
     builders:
       - config-file-provider:
           files:
-            - file-id: '.packagecloud'
-              target: '/root/.packagecloud'
+            - file-id: ".packagecloud"
+              target: "/root/.packagecloud"
       - config-file-provider:
           files:
-            - file-id: 'packagecloud_api'
-              target: '/root/packagecloud_api'
+            - file-id: "packagecloud_api"
+              target: "/root/packagecloud_api"
       - maven-target:
-          maven-version: 'mvn33-new'
-          goals: '--version'
-          settings: 'hicn-settings'
+          maven-version: "mvn33-new"
+          goals: "--version"
+          settings: "hicn-settings"
           settings-type: cfp
-          global-settings: 'global-settings'
+          global-settings: "global-settings"
           global-settings-type: cfp
-      - shell:
-          !include-raw-escape:
+      - shell: !include-raw-escape:
           - include-raw-hicn-extras-build.sh
       - provide-maven-settings:
-          settings-file: 'hicn-settings'
-          global-settings-file: 'global-settings'
-      - shell:
-          !include-raw-escape:
+          settings-file: "hicn-settings"
+          global-settings-file: "global-settings"
+      - shell: !include-raw-escape:
           - ../scripts/packagecloud_push.sh
-      - shell:
-          !include-raw-escape:
+      - shell: !include-raw-escape:
           - ../scripts/maven_push_functions.sh
           - include-raw-hicn-maven-push.sh
 
     publishers:
       - fdio-infra-shiplogs:
-          maven-version: 'mvn36'
+          maven-version: "mvn36"
       - naginator:
           rerun-unstable-builds: false
           max-failed-builds: 1