--- # jenkins job templates for Daisy # TODO # [ ] enable baremetal jobs after baremetal deployment finish # [ ] enable jobs in danuble # [ ] add more scenarios # [ ] integration with yardstick - project: name: 'daisy' project: '{name}' installer: '{name}' # ------------------------------- # BRANCH ANCHORS # ------------------------------- master: &master stream: master branch: '{stream}' disabled: true gs-pathname: '' fraser: &fraser stream: fraser branch: 'stable/{stream}' gs-pathname: '/{stream}' disabled: true # ------------------------------- # POD, INSTALLER, AND BRANCH MAPPING # ------------------------------- pod: # ------------------------------- # CI PODs # ------------------------------- - baremetal: slave-label: daisy-baremetal <<: *master - virtual: slave-label: daisy-virtual <<: *master - baremetal: slave-label: daisy-baremetal <<: *fraser - virtual: slave-label: daisy-virtual <<: *fraser # ------------------------------- # None-CI PODs # ------------------------------- - zte-pod3: slave-label: zte-pod3 <<: *master - zte-pod3: slave-label: zte-pod3 <<: *fraser - zte-pod9: slave-label: zte-pod9 <<: *master - zte-pod9: slave-label: zte-pod9 <<: *fraser # ------------------------------- # scenarios # ------------------------------- scenario: # HA scenarios - 'os-nosdn-nofeature-ha': auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' # NOHA scenarios - 'os-nosdn-nofeature-noha': auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' # ODL_L3 scenarios - 'os-odl-nofeature-ha': auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' # ovs_dpdk scenarios - 'os-nosdn-ovs_dpdk-noha': auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger' jobs: - '{project}-{scenario}-{pod}-daily-{stream}' - '{project}-deploy-{pod}-daily-{stream}' ######################## # job templates ######################## - job-template: name: '{project}-{scenario}-{pod}-daily-{stream}' disabled: '{obj:disabled}' 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: - 'daisy-os-.*?-{pod}-daily-.*?' - 'daisy-daily-.*' - 'daisy-kolla-build-.*' blocking-level: 'NODE' wrappers: - build-name: name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO' triggers: - '{auto-trigger-name}' parameters: - project-parameter: project: '{project}' branch: '{branch}' - '{installer}-defaults' - '{slave-label}-defaults': installer: '{installer}' - 'testapi-parameter' - 'daisy-project-parameter': gs-pathname: '{gs-pathname}' - string: name: DEPLOY_SCENARIO default: '{scenario}' builders: - description-setter: description: "POD: $NODE_NAME" - trigger-builds: - project: 'daisy-deploy-{pod}-daily-{stream}' current-parameters: false predefined-parameters: | DEPLOY_SCENARIO={scenario} INSTALLER_VERSION={stream} UPSTREAM_JOB_NAME=$JOB_NAME UPSTREAM_BUILD_ID=$BUILD_ID same-node: true block: true - trigger-builds: - project: 'functest-daisy-{pod}-daily-{stream}' current-parameters: false predefined-parameters: | DEPLOY_SCENARIO={scenario} INSTALLER_VERSION={stream} UPSTREAM_JOB_NAME=$JOB_NAME UPSTREAM_BUILD_ID=$BUILD_ID same-node: true block: true block-thresholds: build-step-failure-threshold: 'never' failure-threshold: 'never' unstable-threshold: 'FAILURE' - trigger-builds: - project: 'yardstick-daisy-{pod}-daily-{stream}' current-parameters: false predefined-parameters: | DEPLOY_SCENARIO={scenario} INSTALLER_VERSION={stream} UPSTREAM_JOB_NAME=$JOB_NAME UPSTREAM_BUILD_ID=$BUILD_ID block: true same-node: true block-thresholds: build-step-failure-threshold: 'never' failure-threshold: 'never' unstable-threshold: 'FAILURE' - job-template: name: '{project}-deploy-{pod}-daily-{stream}' disabled: '{obj:disabled}' 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: - 'daisy-kolla-build-.*' - '{installer}-(build|deploy|test)-daily-(fraser|master)' - '{installer}-deploy-(baremetal|virtual|zte-pod3|zte-pod9)-daily-(fraser|master)' - '(functest|yardstick)-{installer}-(baremetal|virtual|zte-pod3|zte-pod9)-daily-(fraser|master)' blocking-level: 'NODE' parameters: - project-parameter: project: '{project}' branch: '{branch}' - '{installer}-defaults' - '{slave-label}-defaults': installer: '{installer}' - 'testapi-parameter' - 'daisy-project-parameter': gs-pathname: '{gs-pathname}' - 'deploy-scenario' - string: name: DEPLOY_TIMEOUT default: '150' description: 'Deployment timeout in minutes' scm: - git-scm wrappers: - build-name: name: '$BUILD_NUMBER - Scenario: $DEPLOY_SCENARIO' builders: - description-setter: description: "POD: $NODE_NAME" - 'track-begin-timestamp' - shell: !include-raw-escape: ./daisy4nfv-download-artifact.sh - shell: !include-raw-escape: ./daisy-deploy.sh publishers: - 'report-provision-result' ######################## # trigger macros ######################## # ---------------------------------------------- # Triggers for job running on daisy-baremetal against master branch # ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-baremetal-daily-master-trigger' triggers: - timed: '' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-baremetal-daily-master-trigger' triggers: - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-baremetal-daily-master-trigger' triggers: - timed: '' # ovs_dpdk Scenarios - trigger: name: 'daisy-os-nosdn-ovs_dpdk-noha-baremetal-daily-master-trigger' triggers: - timed: '' # ---------------------------------------------- # Triggers for job running on daisy-virtual against master branch # ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-virtual-daily-master-trigger' triggers: - timed: '0 16 * * *' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-virtual-daily-master-trigger' triggers: - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-virtual-daily-master-trigger' triggers: - timed: '0 12 * * *' # ovs_dpdk Scenarios - trigger: name: 'daisy-os-nosdn-ovs_dpdk-noha-virtual-daily-master-trigger' triggers: - timed: '' # ---------------------------------------------- # Triggers for job running on daisy-baremetal against fraser branch # ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-baremetal-daily-fraser-trigger' triggers: - timed: '0 0,6 * * *' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-baremetal-daily-fraser-trigger' triggers: - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-baremetal-daily-fraser-trigger' triggers: - timed: '0 12,18 * * *' # ovs_dpdk Scenarios - trigger: name: 'daisy-os-nosdn-ovs_dpdk-noha-baremetal-daily-fraser-trigger' triggers: - timed: '' # ---------------------------------------------- # Triggers for job running on daisy-virtual against fraser branch # ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-virtual-daily-fraser-trigger' triggers: - timed: '0 0 * * *' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-virtual-daily-fraser-trigger' triggers: - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-virtual-daily-fraser-trigger' triggers: - timed: '0 20 * * *' # ovs_dpdk Scenarios - trigger: name: 'daisy-os-nosdn-ovs_dpdk-noha-virtual-daily-fraser-trigger' triggers: - timed: '' # ---------------------------------------------- # Triggers for job running on zte-pod3 against master branch # ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-zte-pod3-daily-master-trigger' triggers: - timed: '' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-zte-pod3-daily-master-trigger' triggers: - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-zte-pod3-daily-master-trigger' triggers: - timed: '' # ovs_dpdk Scenarios - trigger: name: 'daisy-os-nosdn-ovs_dpdk-noha-zte-pod3-daily-master-trigger' triggers: - timed: '' # ---------------------------------------------- # Triggers for job running on zte-pod3 against fraser branch # ---------------------------------------------- # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-zte-pod3-daily-fraser-trigger' triggers: - timed: '' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-zte-pod3-daily-fraser-trigger' triggers: - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-zte-pod3-daily-fraser-trigger' triggers: - timed: '0 16,22 * * *' # ovs_dpdk Scenarios - trigger: name: 'daisy-os-nosdn-ovs_dpdk-noha-zte-pod3-daily-fraser-trigger' triggers: - timed: '' # ---------------------------------------------- # ZTE POD9 Triggers running against master branch # ---------------------------------------------- # ovs_dpdk Scenarios - trigger: name: 'daisy-os-nosdn-ovs_dpdk-noha-zte-pod9-daily-master-trigger' triggers: - timed: '0 20 * * *' # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-zte-pod9-daily-master-trigger' triggers: - timed: '' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-zte-pod9-daily-master-trigger' triggers: - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-zte-pod9-daily-master-trigger' triggers: - timed: '' # ---------------------------------------------- # ZTE POD9 Triggers running against fraser branch # ---------------------------------------------- # ovs_dpdk Scenarios - trigger: name: 'daisy-os-nosdn-ovs_dpdk-noha-zte-pod9-daily-fraser-trigger' triggers: - timed: '0 10 * * *' # Basic HA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-ha-zte-pod9-daily-fraser-trigger' triggers: - timed: '' # Basic NOHA Scenarios - trigger: name: 'daisy-os-nosdn-nofeature-noha-zte-pod9-daily-fraser-trigger' triggers: - timed: '' # ODL Scenarios - trigger: name: 'daisy-os-odl-nofeature-ha-zte-pod9-daily-fraser-trigger' triggers: - timed: ''