<<: *master
- 'os-odl-bgpvpn-ha':
<<: *master
+ - 'os-ovn-nofeature-noha':
+ <<: *master
platform:
- 'baremetal'
abort-all-job: true
git-revision: false
+ - name: 'apex-os-ovn-nofeature-noha-baremetal-master'
+ node-parameters: false
+ current-parameters: false
+ predefined-parameters: |
+ OPNFV_CLEAN=yes
+ kill-phase-on: NEVER
+ abort-all-job: true
+ git-revision: false
+
# snapshot create
- 'os-odl-nofeature-ha'
- 'os-odl-nofeature-noha'
- 'os-odl-bgpvpn-ha'
+ - 'os-ovn-nofeature-noha'
danube:
- 'os-nosdn-nofeature-noha'
- 'os-nosdn-nofeature-ha'
fi
fi
-if [[ "$NODE_NAME" =~ "virtual" ]]; then
- POD_NAME="virtual_kvm"
-fi
-
# releng wants us to use nothing else but opnfv.iso for now. We comply.
ISO_FILE=$WORKSPACE/opnfv.iso
- 'os-nosdn-nofeature-noha':
auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
# ODL_L3 scenarios
- - 'os-odl_l3-nofeature-noha':
+ - 'os-odl_l3-nofeature-ha':
auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
# ODL_L2 scenarios
- - 'os-odl_l2-nofeature-noha':
+ - 'os-odl_l2-nofeature-ha':
auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
jobs:
installer: '{installer}'
- string:
name: DEPLOY_SCENARIO
- default: 'os-nosdn-nofeature-noha'
+ default: 'os-nosdn-nofeature-ha'
- 'daisy-project-parameter':
gs-pathname: '{gs-pathname}'
- string:
- trigger:
name: 'daisy-os-nosdn-nofeature-ha-baremetal-daily-master-trigger'
triggers:
- - timed: ''
+ - timed: '0 12 * * *'
# NOHA Scenarios
- trigger:
name: 'daisy-os-nosdn-nofeature-noha-baremetal-daily-master-trigger'
triggers:
- - timed: 'H 12 * * *'
+ - timed: ''
# ODL_L3 Scenarios
- trigger:
- name: 'daisy-os-odl_l3-nofeature-noha-baremetal-daily-master-trigger'
+ name: 'daisy-os-odl_l3-nofeature-ha-baremetal-daily-master-trigger'
triggers:
- - timed: 'H 16 * * *'
+ - timed: '0 16 * * *'
# ODL_L2 Scenarios
- trigger:
- name: 'daisy-os-odl_l2-nofeature-noha-baremetal-daily-master-trigger'
+ name: 'daisy-os-odl_l2-nofeature-ha-baremetal-daily-master-trigger'
triggers:
- timed: ''
#-----------------------------------------------
- trigger:
name: 'daisy-os-nosdn-nofeature-ha-virtual-daily-master-trigger'
triggers:
- - timed: ''
+ - timed: '0 12 * * *'
# NOHA Scenarios
- trigger:
name: 'daisy-os-nosdn-nofeature-noha-virtual-daily-master-trigger'
triggers:
- - timed: 'H 12 * * *'
+ - timed: ''
# ODL_L3 Scenarios
- trigger:
- name: 'daisy-os-odl_l3-nofeature-noha-virtual-daily-master-trigger'
+ name: 'daisy-os-odl_l3-nofeature-ha-virtual-daily-master-trigger'
triggers:
- - timed: 'H 16 * * *'
+ - timed: '0 16 * * *'
# ODL_L3 Scenarios
- trigger:
- name: 'daisy-os-odl_l2-nofeature-noha-virtual-daily-master-trigger'
+ name: 'daisy-os-odl_l2-nofeature-ha-virtual-daily-master-trigger'
triggers:
- timed: ''
description: 'Git URL to use on this Jenkins Slave'
- string:
name: DEPLOY_SCENARIO
- default: 'os-nosdn-nofeature-noha'
+ default: 'os-nosdn-nofeature-ha'
- '{installer}-project-parameter':
gs-pathname: '{gs-pathname}'
options="-u root -p root"
elif [[ ${INSTALLER_TYPE} == fuel ]]; then
options="-u root -p r00tme"
+elif [[ ${INSTALLER_TYPE} == apex ]]; then
+ options="-u stack -k /root/.ssh/id_rsa"
else
echo "Don't support to generate pod.yaml on ${INSTALLER_TYPE} currently."
echo "HA test cases may not run properly."
sshpass -p r00tme sudo scp $ssh_options root@${INSTALLER_IP}:~/.ssh/id_rsa ${DOVETAIL_CONFIG}/id_rsa
fi
+if [ "$INSTALLER_TYPE" == "apex" ]; then
+ echo "Fetching id_rsa file from jump_server $INSTALLER_IP..."
+ scp $ssh_options stack@${INSTALLER_IP}:~/.ssh/id_rsa ${DOVETAIL_CONFIG}/id_rsa
+fi
+
# sdnvpn test case needs to download this image first before running
echo "Download image ubuntu-16.04-server-cloudimg-amd64-disk1.img ..."
wget -q -nc http://artifacts.opnfv.org/sdnvpn/ubuntu-16.04-server-cloudimg-amd64-disk1.img -P ${DOVETAIL_CONFIG}
- zte-pod1:
slave-label: zte-pod1
<<: *master
- - zte-pod2:
- slave-label: zte-pod2
- <<: *master
- zte-pod3:
slave-label: zte-pod3
<<: *master
- trigger:
name: 'fuel-os-nosdn-ovs-ha-zte-pod1-daily-master-trigger'
triggers:
- - timed: ''
+ - timed: '0 18 * * *'
- trigger:
name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod1-daily-master-trigger'
triggers:
name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-master-trigger'
triggers:
- timed: ''
-
-#-----------------------------------------------
-# ZTE POD2 Triggers running against master branch
-#-----------------------------------------------
-- trigger:
- name: 'fuel-os-nosdn-nofeature-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-nofeature-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l3-nofeature-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-onos-sfc-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-onos-nofeature-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-sfc-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-ovs-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-# NOHA Scenarios
-- trigger:
- name: 'fuel-os-nosdn-nofeature-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-nofeature-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l3-nofeature-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-onos-sfc-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-onos-nofeature-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-sfc-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-ovs-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod2-daily-master-trigger'
- triggers:
- - timed: ''
#-----------------------------------------------
# ZTE POD3 Triggers running against master branch
#-----------------------------------------------
- trigger:
name: 'fuel-os-nosdn-nofeature-ha-zte-pod3-daily-master-trigger'
triggers:
- - timed: ''
+ - timed: '0 10 * * *'
- trigger:
name: 'fuel-os-odl_l2-nofeature-ha-zte-pod3-daily-master-trigger'
triggers:
- trigger:
name: 'fuel-os-nosdn-kvm-ha-zte-pod3-daily-master-trigger'
triggers:
- - timed: '0 10 * * *'
+ - timed: ''
- trigger:
name: 'fuel-os-nosdn-ovs-ha-zte-pod3-daily-master-trigger'
triggers:
name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod1-daily-danube-trigger'
triggers:
- timed: ''
-
-#-----------------------------------------------
-# ZTE POD2 Triggers running against danube branch
-#-----------------------------------------------
-- trigger:
- name: 'fuel-os-nosdn-nofeature-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-nofeature-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l3-nofeature-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-onos-sfc-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-onos-nofeature-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-bgpvpn-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-sfc-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-ovs-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm_ovs_dpdk-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-ha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-# NOHA Scenarios
-- trigger:
- name: 'fuel-os-nosdn-nofeature-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-nofeature-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l3-nofeature-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-onos-sfc-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-onos-nofeature-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-sfc-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-odl_l2-bgpvpn-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-ovs-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm_ovs_dpdk-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
-- trigger:
- name: 'fuel-os-nosdn-kvm_ovs_dpdk_bar-noha-zte-pod2-daily-danube-trigger'
- triggers:
- - timed: ''
#-----------------------------------------------
# ZTE POD3 Triggers running against danube branch
#-----------------------------------------------
envs=${env}" -e OPENO_MSB_ENDPOINT=${openo_msb_endpoint}"
fi
-volumes="${images_vol} ${results_vol} ${sshkey_vol} ${rc_file_vol}"
+volumes="${images_vol} ${results_vol} ${sshkey_vol} ${rc_file_vol} ${cacert_file_vol}"
tiers=(healthcheck smoke)
slave-label: '{alpine-pod}'
installer: fuel
<<: *master
+ - huawei-virtual5:
+ slave-label: '{alpine-pod}'
+ installer: compass
+ <<: *master
testsuite:
- 'suite':
description: 'Model to deploy (os|k8)'
- string:
name: OS_RELEASE
- default: 'newton'
- description: 'OpenStack release (mitaka|newton)'
+ default: 'ocata'
+ description: 'OpenStack release (mitaka|newton|ocata)'
- string:
name: EXTERNAL_NETWORK
default: ext-net
- string:
name: GIT_BASE
default: https://gerrit.opnfv.org/gerrit/$PROJECT
+- parameter:
+ name: 'huawei-virtual5-defaults'
+ parameters:
+ - label:
+ name: SLAVE_LABEL
+ default: 'huawei-virtual5'
+ - string:
+ name: GIT_BASE
+ default: https://gerrit.opnfv.org/gerrit/$PROJECT
- parameter:
name: 'huawei-virtual7-defaults'
parameters:
--- /dev/null
+###################################
+# job configuration for orchestra
+###################################
+- project:
+ name: 'orchestra-daily-jobs'
+
+ project: 'orchestra'
+
+#--------------------------------
+# BRANCH ANCHORS
+#--------------------------------
+ master: &master
+ stream: master
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+#-------------------------------------------------------
+# POD, INSTALLER, AND BRANCH MAPPING
+#-------------------------------------------------------
+ pod:
+ - virtual:
+ slave-label: 'joid-virtual'
+ os-version: 'xenial'
+ <<: *master
+
+ jobs:
+ - 'orchestra-{pod}-daily-{stream}'
+
+################################
+# job template
+################################
+- job-template:
+ name: 'orchestra-{pod}-daily-{stream}'
+
+ project-type: multijob
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ properties:
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+ option: 'project'
+
+ scm:
+ - git-scm
+
+ wrappers:
+ - ssh-agent-wrapper
+
+ - timeout:
+ timeout: 240
+ fail: true
+
+ triggers:
+ - timed: '@daily'
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: os-nosdn-openbaton-ha
+ - '{slave-label}-defaults'
+
+ builders:
+ - description-setter:
+ description: "Built on $NODE_NAME"
+ - multijob:
+ name: deploy
+ condition: SUCCESSFUL
+ projects:
+ - name: 'joid-deploy-{pod}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ DEPLOY_SCENARIO=os-nosdn-openbaton-ha
+ COMPASS_OS_VERSION=xenial
+ node-parameters: true
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ - multijob:
+ name: functest
+ condition: SUCCESSFUL
+ projects:
+ - name: 'functest-joid-{pod}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ DEPLOY_SCENARIO=os-nosdn-openbaton-ha
+ FUNCTEST_SUITE_NAME=orchestra_ims
+ node-parameters: true
+ kill-phase-on: NEVER
+ abort-all-job: true
--- /dev/null
+- project:
+
+ name: orchestra-project
+
+ project: 'orchestra'
+
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+
+ jobs:
+ - 'orchestra-build-{stream}'
+
+- job-template:
+ name: 'orchestra-build-{stream}'
+
+ concurrent: true
+
+ properties:
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+ option: 'project'
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+
+ scm:
+ - git-scm
+
+ triggers:
+ - timed: 'H 23 * * *'
+
+ builders:
+ - 'orchestra-build-macro'
+
+- builder:
+ name: 'orchestra-build-macro'
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo "Hello world!"
+
+
--- /dev/null
+- project:
+ name: 'ovn4nfv-daily-jobs'
+
+ project: 'ovn4nfv'
+
+ master: &master
+ stream: master
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+ pod:
+ - virtual:
+ slave-label: 'joid-virtual'
+ os-version: 'xenial'
+ <<: *master
+
+ jobs:
+ - 'ovn4nfv-{pod}-daily-{stream}'
+
+- job-template:
+ name: 'ovn4nfv-{pod}-daily-{stream}'
+
+ project-type: multijob
+
+ disabled: '{obj:disabled}'
+
+ concurrent: false
+
+ properties:
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+ option: 'project'
+
+ scm:
+ - git-scm
+
+ wrappers:
+ - ssh-agent-wrapper
+
+ - timeout:
+ timeout: 240
+ fail: true
+
+ triggers:
+ - timed: '@daily'
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: os-ovn-nofeature-noha
+ - '{slave-label}-defaults'
+
+ builders:
+ - description-setter:
+ description: "Built on $NODE_NAME"
+ - multijob:
+ name: deploy
+ condition: SUCCESSFUL
+ projects:
+ - name: 'joid-deploy-{pod}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ DEPLOY_SCENARIO=os-ovn-nofeature-noha
+ COMPASS_OS_VERSION=xenial
+ node-parameters: true
+ kill-phase-on: FAILURE
+ abort-all-job: true
+ - multijob:
+ name: functest
+ condition: SUCCESSFUL
+ projects:
+ - name: 'functest-joid-{pod}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ DEPLOY_SCENARIO=os-ovn-nofeature-ha
+ FUNCTEST_SUITE_NAME=ovn4nfv_test_suite
+ node-parameters: true
+ kill-phase-on: NEVER
+ abort-all-job: true
+
--- /dev/null
+- project:
+ name: ovn4nfv
+
+ project: '{name}'
+
+
+ stream:
+ - master:
+ branch: '{stream}'
+ gs-pathname: ''
+ disabled: false
+
+ jobs:
+ - 'ovn4nfv-build-{stream}'
+
+- job-template:
+ name: 'ovn4nfv-build-{stream}'
+
+ concurrent: true
+
+ disabled: '{obj:disabled}'
+
+ properties:
+ - logrotate-default
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+ option: 'project'
+
+ parametert:
+ - project-parameter:
+ project: '{project}'
+ branch: '{branch}'
+
+ scm:
+ - git-scm
+
+ triggers:
+ - timed: 'H 23 * * *'
+
+ builders:
+ - 'ovn4nfv-build-macro'
+
+- builder:
+ name: 'ovn4nfv-build-macro'
+ builders:
+ - shell: |
+ #!/bin/bash
+
+ echo "hello world"
echo "Document link(s):" >> gerrit_comment.txt
find "$local_path" | grep -e 'ipynb$' | \
- sed -e "s|^$local_path| https://nbviewer.jupyter.org/urls/$gs_path|" >> gerrit_comment.txt
+ sed -e "s|^$local_path| https://nbviewer.jupyter.org/url/$gs_path|" >> gerrit_comment.txt
project: 'qtip'
<<: *master
<<: *other-receivers
- - 'storperf':
- project: 'storperf'
- <<: *master
- <<: *other-receivers
- 'storperf-master':
project: 'storperf'
dockerdir: 'docker/storperf-master'
args.user, installer_pwd=args.password)
-def create_file(handler):
+def create_file(handler, INSTALLER_TYPE):
"""
Create the yaml file of nodes info.
As Yardstick required, node name must be node1, node2, ... and node1 must
nodes = handler.nodes
node_list = []
index = 1
+ user = 'root'
+ if INSTALLER_TYPE == 'apex':
+ user = 'heat-admin'
for node in nodes:
try:
if node.roles[0].lower() == "controller":
node_info = {'name': "node%s" % index, 'role': node.roles[0],
- 'ip': node.ip, 'user': 'root'}
+ 'ip': node.ip, 'user': user}
node_list.append(node_info)
index += 1
except Exception:
node_info = {'name': node.name, 'role': 'unknown', 'ip': node.ip,
- 'user': 'root'}
+ 'user': user}
node_list.append(node_info)
for node in nodes:
try:
if node.roles[0].lower() == "compute":
node_info = {'name': "node%s" % index, 'role': node.roles[0],
- 'ip': node.ip, 'user': 'root'}
+ 'ip': node.ip, 'user': user}
node_list.append(node_info)
index += 1
except Exception:
node_info = {'name': node.name, 'role': 'unknown', 'ip': node.ip,
- 'user': 'root'}
+ 'user': user}
node_list.append(node_info)
if args.INSTALLER_TYPE == 'compass':
for item in node_list:
if not handler:
print("Error: failed to get the node's handler.")
return 1
- create_file(handler)
+ create_file(handler, args.INSTALLER_TYPE)
if __name__ == '__main__':