- 'apex-verify-gate-{stream}'
- 'apex-verify-unit-tests-{stream}'
- 'apex-runner-cperf-{stream}'
+ - 'apex-virtual-{stream}'
- 'apex-deploy-{platform}-{stream}'
- 'apex-daily-{stream}'
- 'apex-csit-promote-daily-{stream}'
scenario_stream: 'master'
- euphrates: &euphrates
branch: 'stable/euphrates'
- gs-pathname: ''
+ gs-pathname: '/euphrates'
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
properties:
- logrotate-default
- - build-blocker:
- use-build-blocker: true
- block-level: 'NODE'
- blocking-jobs:
- - 'apex-verify.*'
- throttle:
- max-per-node: 1
+ max-per-node: 3
max-total: 10
option: 'project'
name: deploy-virtual
condition: SUCCESSFUL
projects:
- - name: 'apex-deploy-virtual-{stream}'
+ - name: 'apex-virtual-{stream}'
current-parameters: false
predefined-parameters: |
ARTIFACT_VERSION=$ARTIFACT_VERSION
kill-phase-on: FAILURE
abort-all-job: true
git-revision: true
- - multijob:
- name: functest-smoke
- condition: SUCCESSFUL
- projects:
- - name: 'functest-apex-virtual-suite-{stream}'
- current-parameters: false
- predefined-parameters: |
- DEPLOY_SCENARIO={verify-scenario}
- FUNCTEST_SUITE_NAME=healthcheck
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: true
- git-revision: false
# Verify Scenario Gate
- job-template:
block-level: 'NODE'
blocking-jobs:
- 'apex-verify.*'
+ - 'apex-virtual.*'
- throttle:
max-per-node: 1
max-total: 10
- 'clean-workspace'
+# Virtual Deploy and Test
+- job-template:
+ name: 'apex-virtual-{stream}'
+
+ project-type: 'multijob'
+
+ disabled: false
+
+ scm:
+ - git-scm-gerrit
+
+ parameters:
+ - '{project}-defaults'
+ - '{project}-virtual-{stream}-defaults'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - apex-parameter:
+ gs-pathname: '{gs-pathname}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{verify-scenario}'
+ description: "Scenario to deploy with."
+ - string:
+ name: ARTIFACT_VERSION
+ default: dev
+ description: "Used for overriding the ARTIFACT_VERSION"
+ properties:
+ - logrotate-default
+ - build-blocker:
+ use-build-blocker: true
+ block-level: 'NODE'
+ blocking-jobs:
+ - 'apex-runner.*'
+ - 'apex-.*-promote.*'
+ - 'apex-run.*'
+ - 'apex-virtual-.*'
+ - 'apex-verify-gate-.*'
+ - throttle:
+ max-per-node: 1
+ max-total: 10
+ option: 'project'
+ builders:
+ - description-setter:
+ description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+ - multijob:
+ name: deploy-virtual
+ condition: SUCCESSFUL
+ projects:
+ - name: 'apex-deploy-virtual-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ ARTIFACT_VERSION=$ARTIFACT_VERSION
+ DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ OPNFV_CLEAN=yes
+ GERRIT_BRANCH=$GERRIT_BRANCH
+ GERRIT_REFSPEC=$GERRIT_REFSPEC
+ GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ node-parameters: true
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ git-revision: true
+ - multijob:
+ name: functest-smoke
+ condition: SUCCESSFUL
+ projects:
+ - name: 'functest-apex-virtual-suite-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ FUNCTEST_SUITE_NAME=healthcheck
+ GERRIT_BRANCH=$GERRIT_BRANCH
+ GERRIT_REFSPEC=$GERRIT_REFSPEC
+ GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ node-parameters: true
+ kill-phase-on: NEVER
+ abort-all-job: true
+ git-revision: false
+
# Baremetal Deploy and Test
- job-template:
name: 'apex-{scenario}-baremetal-{scenario_stream}'
- 'apex-verify-gate-{stream}'
- 'apex-verify-unit-tests-{stream}'
- 'apex-runner-cperf-{stream}'
+ - 'apex-virtual-{stream}'
- 'apex-deploy-{platform}-{stream}'
- 'apex-daily-{stream}'
- 'apex-csit-promote-daily-{stream}'
scenario_stream: 'master'
- euphrates: &euphrates
branch: 'stable/euphrates'
- gs-pathname: ''
+ gs-pathname: '/euphrates'
build-slave: 'apex-build-master'
virtual-slave: 'apex-virtual-master'
baremetal-slave: 'apex-baremetal-master'
properties:
- logrotate-default
- - build-blocker:
- use-build-blocker: true
- block-level: 'NODE'
- blocking-jobs:
- - 'apex-verify.*'
- throttle:
- max-per-node: 1
+ max-per-node: 3
max-total: 10
option: 'project'
name: deploy-virtual
condition: SUCCESSFUL
projects:
- - name: 'apex-deploy-virtual-{stream}'
+ - name: 'apex-virtual-{stream}'
current-parameters: false
predefined-parameters: |
ARTIFACT_VERSION=$ARTIFACT_VERSION
kill-phase-on: FAILURE
abort-all-job: true
git-revision: true
- - multijob:
- name: functest-smoke
- condition: SUCCESSFUL
- projects:
- - name: 'functest-apex-virtual-suite-{stream}'
- current-parameters: false
- predefined-parameters: |
- DEPLOY_SCENARIO={verify-scenario}
- FUNCTEST_SUITE_NAME=healthcheck
- GERRIT_BRANCH=$GERRIT_BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: true
- kill-phase-on: NEVER
- abort-all-job: true
- git-revision: false
# Verify Scenario Gate
- job-template:
block-level: 'NODE'
blocking-jobs:
- 'apex-verify.*'
+ - 'apex-virtual.*'
- throttle:
max-per-node: 1
max-total: 10
- 'clean-workspace'
+# Virtual Deploy and Test
+- job-template:
+ name: 'apex-virtual-{stream}'
+
+ project-type: 'multijob'
+
+ disabled: false
+
+ scm:
+ - git-scm-gerrit
+
+ parameters:
+ - '{project}-defaults'
+ - '{project}-virtual-{stream}-defaults'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - apex-parameter:
+ gs-pathname: '{gs-pathname}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{verify-scenario}'
+ description: "Scenario to deploy with."
+ - string:
+ name: ARTIFACT_VERSION
+ default: dev
+ description: "Used for overriding the ARTIFACT_VERSION"
+ properties:
+ - logrotate-default
+ - build-blocker:
+ use-build-blocker: true
+ block-level: 'NODE'
+ blocking-jobs:
+ - 'apex-runner.*'
+ - 'apex-.*-promote.*'
+ - 'apex-run.*'
+ - 'apex-virtual-.*'
+ - 'apex-verify-gate-.*'
+ - throttle:
+ max-per-node: 1
+ max-total: 10
+ option: 'project'
+ builders:
+ - description-setter:
+ description: "Deployed on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+ - multijob:
+ name: deploy-virtual
+ condition: SUCCESSFUL
+ projects:
+ - name: 'apex-deploy-virtual-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ ARTIFACT_VERSION=$ARTIFACT_VERSION
+ DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ OPNFV_CLEAN=yes
+ GERRIT_BRANCH=$GERRIT_BRANCH
+ GERRIT_REFSPEC=$GERRIT_REFSPEC
+ GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ node-parameters: true
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ git-revision: true
+ - multijob:
+ name: functest-smoke
+ condition: SUCCESSFUL
+ projects:
+ - name: 'functest-apex-virtual-suite-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ FUNCTEST_SUITE_NAME=healthcheck
+ GERRIT_BRANCH=$GERRIT_BRANCH
+ GERRIT_REFSPEC=$GERRIT_REFSPEC
+ GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ node-parameters: true
+ kill-phase-on: NEVER
+ abort-all-job: true
+ git-revision: false
+
# Baremetal Deploy and Test
- job-template:
name: 'apex-{scenario}-baremetal-{scenario_stream}'
+---
# jenkins job templates for Armband
- project:
name: 'armband-ci'
project: 'armband'
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
+ # -------------------------------
+ # BRANCH ANCHORS
+ # -------------------------------
master: &master
- stream: master
- branch: '{stream}'
- gs-pathname: ''
- disabled: false
+ stream: master
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
euphrates: &euphrates
- stream: euphrates
- branch: 'stable/{stream}'
- gs-pathname: '/{stream}'
- disabled: true
-#--------------------------------
-# POD, INSTALLER, AND BRANCH MAPPING
-#--------------------------------
-# CI POD's
-#--------------------------------
-# euphrates
-#--------------------------------
+ stream: euphrates
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
+ disabled: true
+ # -------------------------------
+ # POD, INSTALLER, AND BRANCH MAPPING
+ # -------------------------------
+ # CI POD's
+ # -------------------------------
+ # euphrates
+ # -------------------------------
pod:
- - armband-baremetal:
- slave-label: armband-baremetal
- installer: fuel
- <<: *euphrates
- - armband-virtual:
- slave-label: armband-virtual
- installer: fuel
- <<: *euphrates
-#--------------------------------
-# master
-#--------------------------------
- - armband-baremetal:
- slave-label: armband-baremetal
- installer: fuel
- <<: *master
- - armband-virtual:
- slave-label: armband-virtual
- installer: fuel
- <<: *master
-#--------------------------------
-# scenarios
-#--------------------------------
+ - armband-baremetal:
+ slave-label: armband-baremetal
+ installer: fuel
+ <<: *euphrates
+ - armband-virtual:
+ slave-label: armband-virtual
+ installer: fuel
+ <<: *euphrates
+ # -------------------------------
+ # master
+ # -------------------------------
+ - armband-baremetal:
+ slave-label: armband-baremetal
+ installer: fuel
+ <<: *master
+ - armband-virtual:
+ slave-label: armband-virtual
+ installer: fuel
+ <<: *master
+ # -------------------------------
+ # scenarios
+ # -------------------------------
scenario:
- # HA scenarios
- - 'os-nosdn-nofeature-ha':
- auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
- - 'os-odl-nofeature-ha':
- auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
+ # HA scenarios
+ - 'os-nosdn-nofeature-ha':
+ auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
+ - 'os-odl-nofeature-ha':
+ auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
- # NOHA scenarios
- - 'os-nosdn-nofeature-noha':
- auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
+ # NOHA scenarios
+ - 'os-nosdn-nofeature-noha':
+ auto-trigger-name: '{installer}-{scenario}-{pod}-{stream}-trigger'
jobs:
- - '{installer}-{scenario}-{pod}-daily-{stream}'
- - '{installer}-deploy-{pod}-daily-{stream}'
+ - '{installer}-{scenario}-{pod}-daily-{stream}'
+ - '{installer}-deploy-{pod}-daily-{stream}'
########################
# job templates
concurrent: false
properties:
- - logrotate-default
- - throttle:
- enabled: true
- max-total: 4
- max-per-node: 1
- option: 'project'
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - '{installer}-os-.*?-{pod}-daily-.*'
- - 'armband-verify-.*'
- block-level: 'NODE'
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 4
+ max-per-node: 1
+ option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - '{installer}-os-.*?-{pod}-daily-.*'
+ - 'armband-verify-.*'
+ block-level: 'NODE'
wrappers:
- - build-name:
- name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+ - build-name:
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
triggers:
- - '{auto-trigger-name}'
+ - '{auto-trigger-name}'
parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - '{installer}-defaults':
- gs-pathname: '{gs-pathname}'
- - '{slave-label}-defaults':
- installer: '{installer}'
- - string:
- name: DEPLOY_SCENARIO
- default: '{scenario}'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - '{installer}-defaults':
+ gs-pathname: '{gs-pathname}'
+ - '{slave-label}-defaults':
+ installer: '{installer}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
builders:
- - trigger-builds:
- - project: '{installer}-deploy-{pod}-daily-{stream}'
- current-parameters: false
- predefined-parameters:
- DEPLOY_SCENARIO={scenario}
- same-node: true
- block: true
- - trigger-builds:
- - project: 'functest-{installer}-{pod}-arm-daily-{stream}'
- current-parameters: false
- predefined-parameters:
- DEPLOY_SCENARIO={scenario}
- block: true
- same-node: true
- block-thresholds:
- build-step-failure-threshold: 'never'
- failure-threshold: 'never'
- unstable-threshold: 'FAILURE'
- - trigger-builds:
- - project: 'yardstick-{installer}-{pod}-daily-{stream}'
- current-parameters: false
- predefined-parameters:
- DEPLOY_SCENARIO={scenario}
- block: true
- same-node: true
- block-thresholds:
- build-step-failure-threshold: 'never'
- failure-threshold: 'never'
- unstable-threshold: 'FAILURE'
- # 1.dovetail only master, based on D release
- # 2.here the stream means the SUT stream, dovetail stream is defined in its own job
- # 3.only proposed_tests testsuite here(refstack, ha, ipv6, bgpvpn)
- # 4.not used for release criteria or compliance,
- # only to debug the dovetail tool bugs with arm pods
- # 5.only run against scenario os-(nosdn|odl)-(nofeature-bgpvpn)-ha
- - conditional-step:
- condition-kind: regex-match
- regex: os-(nosdn|odl)-(nofeature|bgpvpn)-ha
- label: '{scenario}'
- steps:
- - trigger-builds:
- - project: 'dovetail-{installer}-{pod}-proposed_tests-{stream}'
- current-parameters: false
- predefined-parameters:
- DEPLOY_SCENARIO={scenario}
- block: true
- same-node: true
- block-thresholds:
- build-step-failure-threshold: 'never'
- failure-threshold: 'never'
- unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: '{installer}-deploy-{pod}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters:
+ DEPLOY_SCENARIO={scenario}
+ same-node: true
+ block: true
+ - trigger-builds:
+ - project: 'functest-{installer}-{pod}-arm-daily-{stream}'
+ current-parameters: false
+ predefined-parameters:
+ DEPLOY_SCENARIO={scenario}
+ block: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
+ - trigger-builds:
+ - project: 'yardstick-{installer}-{pod}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters:
+ DEPLOY_SCENARIO={scenario}
+ block: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
+ # 1.dovetail only master, based on D release
+ # 2.here the stream means the SUT stream, dovetail stream is defined in its own job
+ # 3.only proposed_tests testsuite here(refstack, ha, ipv6, bgpvpn)
+ # 4.not used for release criteria or compliance,
+ # only to debug the dovetail tool bugs with arm pods
+ # 5.only run against scenario os-(nosdn|odl)-(nofeature-bgpvpn)-ha
+ - conditional-step:
+ condition-kind: regex-match
+ regex: os-(nosdn|odl)-(nofeature|bgpvpn)-ha
+ label: '{scenario}'
+ steps:
+ - trigger-builds:
+ - project: 'dovetail-{installer}-{pod}-proposed_tests-{stream}'
+ current-parameters: false
+ predefined-parameters:
+ DEPLOY_SCENARIO={scenario}
+ block: true
+ same-node: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
- job-template:
name: '{installer}-deploy-{pod}-daily-{stream}'
concurrent: true
properties:
- - logrotate-default
- - throttle:
- enabled: true
- max-total: 4
- max-per-node: 1
- option: 'project'
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - '{installer}-deploy-{pod}-daily-{stream}'
- - '{installer}-deploy-generic-daily-.*'
- block-level: 'NODE'
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 4
+ max-per-node: 1
+ option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - '{installer}-deploy-{pod}-daily-{stream}'
+ - '{installer}-deploy-generic-daily-.*'
+ block-level: 'NODE'
parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - '{installer}-defaults':
- gs-pathname: '{gs-pathname}'
- - '{slave-label}-defaults':
- installer: '{installer}'
- - string:
- name: DEPLOY_SCENARIO
- default: 'os-odl-nofeature-ha'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - '{installer}-defaults':
+ gs-pathname: '{gs-pathname}'
+ - '{slave-label}-defaults':
+ installer: '{installer}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: 'os-odl-nofeature-ha'
scm:
- - git-scm
+ - git-scm
wrappers:
- - build-name:
- name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
+ - build-name:
+ name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO'
builders:
- - shell:
- !include-raw-escape: ../fuel/fuel-deploy.sh
+ - shell:
+ !include-raw-escape: ../fuel/fuel-deploy.sh
publishers:
- - email:
- recipients: armband@enea.com
- - email-jenkins-admins-on-failure
+ - email:
+ recipients: armband@enea.com
+ - email-jenkins-admins-on-failure
########################
# trigger macros
########################
# CI PODs
-#-----------------------------------------------------------------
+# ----------------------------------------------------------------
# Enea Armband CI Baremetal Triggers running against master branch
-#-----------------------------------------------------------------
+# ----------------------------------------------------------------
- trigger:
name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-master-trigger'
triggers:
- - timed: '0 1 * * *'
+ - timed: '0 1 * * *'
- trigger:
name: 'fuel-os-nosdn-nofeature-noha-armband-baremetal-master-trigger'
triggers:
- - timed: ''
+ - timed: ''
- trigger:
name: 'fuel-os-odl-nofeature-ha-armband-baremetal-master-trigger'
triggers:
- - timed: '0 16 * * *'
-#----------------------------------------------------------------------
+ - timed: '0 16 * * *'
+# ---------------------------------------------------------------------
# Enea Armband CI Baremetal Triggers running against euphrates branch
-#----------------------------------------------------------------------
+# ---------------------------------------------------------------------
- trigger:
name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-euphrates-trigger'
triggers:
- - timed: ''
+ - timed: ''
- trigger:
name: 'fuel-os-nosdn-nofeature-noha-armband-baremetal-euphrates-trigger'
triggers:
- - timed: ''
+ - timed: ''
- trigger:
name: 'fuel-os-odl-nofeature-ha-armband-baremetal-euphrates-trigger'
triggers:
- - timed: ''
-#---------------------------------------------------------------
+ - timed: ''
+# --------------------------------------------------------------
# Enea Armband CI Virtual Triggers running against master branch
-#---------------------------------------------------------------
+# --------------------------------------------------------------
- trigger:
name: 'fuel-os-nosdn-nofeature-ha-armband-virtual-master-trigger'
triggers:
- - timed: ''
+ - timed: ''
- trigger:
name: 'fuel-os-nosdn-nofeature-noha-armband-virtual-master-trigger'
triggers:
- - timed: ''
+ - timed: ''
- trigger:
name: 'fuel-os-odl-nofeature-ha-armband-virtual-master-trigger'
triggers:
- - timed: ''
-#--------------------------------------------------------------------
+ - timed: ''
+# -------------------------------------------------------------------
# Enea Armband CI Virtual Triggers running against euphrates branch
-#--------------------------------------------------------------------
+# -------------------------------------------------------------------
- trigger:
name: 'fuel-os-nosdn-nofeature-ha-armband-virtual-euphrates-trigger'
triggers:
- - timed: ''
+ - timed: ''
- trigger:
name: 'fuel-os-nosdn-nofeature-noha-armband-virtual-euphrates-trigger'
triggers:
- - timed: ''
+ - timed: ''
- trigger:
name: 'fuel-os-odl-nofeature-ha-armband-virtual-euphrates-trigger'
triggers:
- - timed: ''
+ - timed: ''
+---
- project:
name: 'armband-verify-jobs'
project: 'armband'
installer: 'fuel'
-#####################################
-# branch definitions
-#####################################
+ #####################################
+ # branch definitions
+ #####################################
stream:
- - master:
- branch: '{stream}'
- gs-pathname: ''
- disabled: false
- - euphrates:
- branch: 'stable/{stream}'
- gs-pathname: '/{stream}'
- disabled: true
-#####################################
-# patch verification phases
-#####################################
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+ - euphrates:
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
+ disabled: true
+ #####################################
+ # patch verification phases
+ #####################################
phase:
- - 'basic':
- slave-label: 'armband-virtual'
- - 'deploy-virtual':
- slave-label: 'armband-virtual'
- - 'smoke-test':
- slave-label: 'armband-virtual'
-#####################################
-# jobs
-#####################################
+ - 'basic':
+ slave-label: 'armband-virtual'
+ - 'deploy-virtual':
+ slave-label: 'armband-virtual'
+ - 'smoke-test':
+ slave-label: 'armband-virtual'
+ #####################################
+ # jobs
+ #####################################
jobs:
- - 'armband-verify-{stream}'
- - 'armband-verify-{phase}-{stream}'
+ - 'armband-verify-{stream}'
+ - 'armband-verify-{phase}-{stream}'
#####################################
# job templates
#####################################
concurrent: true
properties:
- - logrotate-default
- - throttle:
- enabled: true
- max-total: 4
- option: 'project'
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'fuel-os-.*?-virtual-daily-.*'
- block-level: 'NODE'
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 4
+ option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - 'fuel-os-.*?-virtual-daily-.*'
+ block-level: 'NODE'
scm:
- - git-scm-gerrit
+ - git-scm-gerrit
wrappers:
- - ssh-agent-wrapper
- - timeout:
- timeout: 360
- fail: true
+ - ssh-agent-wrapper
+ - timeout:
+ timeout: 360
+ fail: true
triggers:
- - gerrit:
- server-name: 'gerrit.opnfv.org'
- trigger-on:
- - patchset-created-event:
- exclude-drafts: 'false'
- exclude-trivial-rebase: 'false'
- exclude-no-code-change: 'false'
- - draft-published-event
- - comment-added-contains-event:
- comment-contains-value: 'recheck'
- - comment-added-contains-event:
- comment-contains-value: 'reverify'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/{branch}'
- file-paths:
- - compare-type: ANT
- pattern: 'ci/**'
- - compare-type: ANT
- pattern: 'patches/**'
- disable-strict-forbidden-file-verification: 'true'
- forbidden-file-paths:
- - compare-type: ANT
- pattern: 'docs/**'
- readable-message: true
+ - gerrit:
+ server-name: 'gerrit.opnfv.org'
+ trigger-on:
+ - patchset-created-event:
+ exclude-drafts: 'false'
+ exclude-trivial-rebase: 'false'
+ exclude-no-code-change: 'false'
+ - draft-published-event
+ - comment-added-contains-event:
+ comment-contains-value: 'recheck'
+ - comment-added-contains-event:
+ comment-contains-value: 'reverify'
+ projects:
+ - project-compare-type: 'ANT'
+ project-pattern: '{project}'
+ branches:
+ - branch-compare-type: 'ANT'
+ branch-pattern: '**/{branch}'
+ file-paths:
+ - compare-type: ANT
+ pattern: 'ci/**'
+ - compare-type: ANT
+ pattern: 'patches/**'
+ disable-strict-forbidden-file-verification: 'true'
+ forbidden-file-paths:
+ - compare-type: ANT
+ pattern: 'docs/**'
+ readable-message: true
parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - 'armband-virtual-defaults':
- installer: '{installer}'
- - '{installer}-defaults':
- gs-pathname: '{gs-pathname}'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - 'armband-virtual-defaults':
+ installer: '{installer}'
+ - '{installer}-defaults':
+ gs-pathname: '{gs-pathname}'
builders:
- - description-setter:
- description: "Built on $NODE_NAME"
- - multijob:
- name: basic
- condition: SUCCESSFUL
- projects:
- - name: 'armband-verify-basic-{stream}'
- current-parameters: false
- predefined-parameters: |
- BRANCH=$BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: false
- kill-phase-on: FAILURE
- abort-all-job: true
- - multijob:
- name: deploy-virtual
- condition: SUCCESSFUL
- projects:
- - name: 'armband-verify-deploy-virtual-{stream}'
- current-parameters: false
- predefined-parameters: |
- BRANCH=$BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: false
- kill-phase-on: FAILURE
- abort-all-job: true
- - multijob:
- name: smoke-test
- condition: SUCCESSFUL
- projects:
- - name: 'armband-verify-smoke-test-{stream}'
- current-parameters: false
- predefined-parameters: |
- BRANCH=$BRANCH
- GERRIT_REFSPEC=$GERRIT_REFSPEC
- GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
- GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
- node-parameters: false
- kill-phase-on: FAILURE
- abort-all-job: true
+ - description-setter:
+ description: "Built on $NODE_NAME"
+ - multijob:
+ name: basic
+ condition: SUCCESSFUL
+ projects:
+ - name: 'armband-verify-basic-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ BRANCH=$BRANCH
+ GERRIT_REFSPEC=$GERRIT_REFSPEC
+ GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ node-parameters: false
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ - multijob:
+ name: deploy-virtual
+ condition: SUCCESSFUL
+ projects:
+ - name: 'armband-verify-deploy-virtual-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ BRANCH=$BRANCH
+ GERRIT_REFSPEC=$GERRIT_REFSPEC
+ GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ node-parameters: false
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ - multijob:
+ name: smoke-test
+ condition: SUCCESSFUL
+ projects:
+ - name: 'armband-verify-smoke-test-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ BRANCH=$BRANCH
+ GERRIT_REFSPEC=$GERRIT_REFSPEC
+ GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+ node-parameters: false
+ kill-phase-on: FAILURE
+ abort-all-job: true
- job-template:
name: 'armband-verify-{phase}-{stream}'
concurrent: true
properties:
- - logrotate-default
- - throttle:
- enabled: true
- max-total: 2
- max-per-node: 1
- option: 'project'
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - 'armband-verify-deploy-.*'
- - 'armband-verify-test-.*'
- block-level: 'NODE'
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 2
+ max-per-node: 1
+ option: 'project'
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - 'armband-verify-deploy-.*'
+ - 'armband-verify-test-.*'
+ block-level: 'NODE'
scm:
- - git-scm-gerrit
+ - git-scm-gerrit
wrappers:
- - ssh-agent-wrapper
- - timeout:
- timeout: 360
- fail: true
+ - ssh-agent-wrapper
+ - timeout:
+ timeout: 360
+ fail: true
+
parameters:
- - project-parameter:
- project: '{project}'
- branch: '{branch}'
- - '{slave-label}-defaults'
- - 'armband-virtual-defaults':
- installer: '{installer}'
- - '{installer}-defaults':
- gs-pathname: '{gs-pathname}'
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - '{slave-label}-defaults'
+ - 'armband-virtual-defaults':
+ installer: '{installer}'
+ - '{installer}-defaults':
+ gs-pathname: '{gs-pathname}'
builders:
- - description-setter:
- description: "Built on $NODE_NAME"
- - '{project}-verify-{phase}-macro'
+ - description-setter:
+ description: "Built on $NODE_NAME"
+ - '{project}-verify-{phase}-macro'
#####################################
# builder macros
#####################################
- builder:
name: 'armband-verify-basic-macro'
builders:
- - shell: |
- #!/bin/bash
+ - shell: |
+ #!/bin/bash
- echo "Not activated!"
+ echo "Not activated!"
- builder:
name: 'armband-verify-deploy-virtual-macro'
builders:
- - shell:
- !include-raw: ../fuel/fuel-deploy.sh
+ - shell:
+ !include-raw: ../fuel/fuel-deploy.sh
- builder:
name: 'armband-verify-smoke-test-macro'
builders:
- - shell: |
- #!/bin/bash
+ - shell: |
+ #!/bin/bash
- echo "Not activated!"
+ echo "Not activated!"
gs-pathname: ''
docker-tag: 'latest'
disabled: false
- - danube:
+ - euphrates:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
docker-tag: 'stable'
branch: '{stream}'
gs-pathname: ''
disabled: false
- - danube:
+ - euphrates:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
disabled: false
cd "${WORKSPACE}" || exit 1
if [[ "${LAB_CONFIG_URL}" =~ ^(git|ssh):// ]]; then
echo "Cloning securedlab repo ${BRANCH}"
- git clone --quiet --branch "${BRANCH}" "${LAB_CONFIG_URL}" lab-config
- LAB_CONFIG_URL=file://${WORKSPACE}/lab-config
+ LOCAL_CFG="${TMPDIR}/securedlab"
+ rm -rf "${LOCAL_CFG}"
+ git clone --quiet --branch "${BRANCH}" "${LAB_CONFIG_URL}" "${LOCAL_CFG}"
+ LAB_CONFIG_URL="file://${LOCAL_CFG}"
# Source local_env if present, which contains POD-specific config
- local_env="${WORKSPACE}/lab-config/labs/${LAB_NAME}/${POD_NAME}/fuel/config/local_env"
+ local_env="${LOCAL_CFG}/labs/${LAB_NAME}/${POD_NAME}/fuel/config/local_env"
if [ -e "${local_env}" ]; then
echo "-- Sourcing local environment file"
source "${local_env}"
branch: '{stream}'
gs-pathname: ''
disabled: false
- - danube:
+ - euphrates:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
disabled: false
branch: '{stream}'
gs-pathname: ''
disabled: false
- - danube:
+ - euphrates:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
disabled: true
- master:
branch: '{stream}'
gs-pathname: ''
+ - euphrates:
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
- job-template:
name: 'moon-verify-{stream}'
branch: '{stream}'
gs-pathname: ''
disabled: false
+ - euphrates:
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
+ disabled: false
################################
## job templates
branch: '{stream}'
gs-pathname: ''
disabled: false
- - danube:
+ - euphrates:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
disabled: false
stream: danube
branch: 'stable/{stream}'
disabled: false
+ euphrates: &euphrates
+ stream: euphrates
+ branch: 'stable/{stream}'
+ disabled: false
functest-arm-receivers: &functest-arm-receivers
receivers: >
cristina.pauna@enea.com
project: 'yardstick'
<<: *master
<<: *yardstick-arm-receivers
- # projects with jobs for stable
+ # projects with jobs for stable/euphrates
+ - 'storperf-master':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-master'
+ dockerfile: 'Dockerfile'
+ docker_repo_name: 'opnfv/storperf-master'
+ arch_tag: 'aarch64'
+ <<: *euphrates
+ <<: *storperf-arm-receivers
+ - 'storperf-graphite':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-graphite'
+ dockerfile: 'Dockerfile'
+ docker_repo_name: 'opnfv/storperf-graphite'
+ arch_tag: 'aarch64'
+ <<: *euphrates
+ <<: *storperf-arm-receivers
+ - 'storperf-httpfrontend':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-httpfrontend'
+ dockerfile: 'Dockerfile'
+ docker_repo_name: 'opnfv/storperf-httpfrontend'
+ arch_tag: 'aarch64'
+ <<: *euphrates
+ <<: *storperf-arm-receivers
+ - 'storperf-reporting':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-reporting'
+ dockerfile: 'Dockerfile'
+ docker_repo_name: 'opnfv/storperf-reporting'
+ arch_tag: 'aarch64'
+ <<: *euphrates
+ <<: *storperf-arm-receivers
+ - 'storperf-swaggerui':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-swaggerui'
+ dockerfile: 'Dockerfile'
+ docker_repo_name: 'opnfv/storperf-swaggerui'
+ arch_tag: 'aarch64'
+ <<: *euphrates
+ <<: *storperf-arm-receivers
jobs:
- '{dockerrepo}-docker-build-arm-push-{stream}'
stream: danube
branch: 'stable/{stream}'
disabled: false
+ euphrates: &euphrates
+ stream: euphrates
+ branch: 'stable/{stream}'
+ disabled: false
functest-receivers: &functest-receivers
receivers: >
jose.lausuch@ericsson.com morgan.richomme@orange.com
project: 'yardstick'
<<: *master
<<: *other-receivers
- # projects with jobs for stable
+ # projects with jobs for Danube
- 'bottlenecks':
project: 'bottlenecks'
<<: *danube
<<: *functest-receivers
- 'qtip':
project: 'qtip'
- <<: *danube
- <<: *other-receivers
- - 'storperf':
- project: 'storperf'
- <<: *danube
+ <<: *euphrates
<<: *other-receivers
- 'yardstick':
project: 'yardstick'
<<: *danube
<<: *other-receivers
+ # projects with jobs for euphrates
+ - 'storperf-master':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-master'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
+ - 'storperf-graphite':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-graphite'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
+ - 'storperf-httpfrontend':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-httpfrontend'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
+ - 'storperf-reporting':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-reporting'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
+ - 'storperf-swaggerui':
+ project: 'storperf'
+ dockerdir: 'docker/storperf-swaggerui'
+ arch_tag: 'x86_64'
+ <<: *euphrates
+ <<: *storperf-receivers
jobs:
- "{dockerrepo}-docker-build-push-{stream}"
branch: '{stream}'
gs-pathname: ''
disabled: false
- - danube:
+ - euphrates:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
- disabled: true
+ disabled: false
- job-template:
name: 'sfc-verify-{stream}'
branch: '{stream}'
gs-pathname: ''
docker-tag: 'latest'
+ euphrates: &euphrates
+ stream: euphrates
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
+ disabled: false
+ docker-tag: 'stable'
#--------------------------------
# POD, INSTALLER, AND BRANCH MAPPING
#--------------------------------
slave-label: apex-baremetal-master
installer: apex
<<: *master
+ - baremetal:
+ slave-label: apex-baremetal-master
+ installer: apex
+ <<: *euphrates
## armband CI PODs
# - armband-baremetal:
# slave-label: armband-baremetal
gs-pathname: ''
disabled: false
docker-tag: 'latest'
+ - euphrates:
+ branch: 'stable/{stream}'
+ gs-pathname: '/{stream}'
+ disabled: false
+ docker-tag: 'stable'
#--------------------------------
# patch verification phases
#--------------------------------
zoom-coverage-chart: "true"
targets:
- files:
- healthy: 10
- unhealthy: 20
- failing: 30
+ healthy: 60
+ unhealthy: 50
+ failing: 40
- method:
- healthy: 50
- unhealthy: 40
- failing: 30
+ healthy: 60
+ unhealthy: 50
+ failing: 40
- email-jenkins-admins-on-failure
- publisher:
name: 'storperf-verify-build-x86_64-publishers-macro'
gs-pathname: ''
disabled: false
docker-tag: 'latest'
- - danube:
+ - euphrates:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
disabled: false
gs-pathname: ''
disabled: false
slave-label: 'opnfv-build-ubuntu'
- - danube:
+ - euphrates:
branch: 'stable/{stream}'
gs-pathname: '/{stream}'
disabled: false