-# this is the job configuration for bgs
- project:
name: compass
installer: 'compass'
jobs:
- - 'compass-verify'
- - 'compass-verify-on-ericsson-node'
- - 'compass-merge'
+ - 'compass-verify-{stream}'
- 'compass-daily-{stream}'
- - 'compass-build-iso'
- - 'compass-build-ppa'
+ - 'compass-build-iso-{stream}'
+ - 'compass-build-ppa-{stream}'
- 'compass-deploy-virtual-{flavor}'
+ - 'compass-deploy-bare-huawei-us'
- # stream: branch with - in place of / (eg. stable-helium)
- # branch: branch (eg. stable/helium)
+# only master branch is enabled at the moment to keep no of jobs sane
stream:
- master:
branch: 'master'
+ gs-pathname: ''
+# - brahmaputra:
+# branch: 'stable/brahmaputra'
+# gs-pathname: '/brahmaputra'
flavor:
- - five:
- conf: 'virtual_five'
- node: 'huawei-build'
+ - cluster-odl:
+ conf: 'virtual_cluster_odl'
+ node: 'huawei-deploy-vm'
+ - cluster-onos:
+ conf: 'virtual_cluster_onos'
+ node: 'huawei-deploy-vm'
- cluster:
conf: 'virtual_cluster'
- node: 'huawei-build'
-
-
+ node: 'huawei-deploy-vm'
project: 'compass4nfv'
# job templates
########################
- job-template:
- name: 'compass-verify-on-ericsson-node'
-
- project-type: freestyle
-
- disabled: true
-
- node: ericsson-build
-
- logrotate:
- daysToKeep: 30
- numToKeep: 10
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
-
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: 'master'
- - compass-parameter:
- installer: '{installer}'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: '{ssh-credentials}'
- refspec: '$GERRIT_REFSPEC'
- choosing-strategy: 'gerrit'
-
- wrappers:
- - ssh-agent-credentials:
- user: '{ssh-credentials}'
-
- triggers:
- - gerrit:
- 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: '**/master'
- forbidden-file-paths:
- - compare-type: ANT
- pattern: 'docs/**'
-
- builders:
- - 'builder-compass-build-iso'
- - 'builder-compass-workspace-cleanup'
-
-- job-template:
- name: 'compass-verify'
-
- project-type: freestyle
+ name: 'compass-verify-{stream}'
disabled: false
- node: huawei-build
+ node: 'huawei-deploy-vm'
- logrotate:
- daysToKeep: 30
- numToKeep: 10
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
+ concurrent: true
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 3
+ max-per-node: 1
parameters:
- project-parameter:
project: '{project}'
- gerrit-parameter:
- branch: 'master'
+ branch: '{branch}'
- compass-parameter:
installer: '{installer}'
- string:
refspec: '$GERRIT_REFSPEC'
choosing-strategy: 'gerrit'
- wrappers:
- - ssh-agent-credentials:
- user: '{ssh-credentials}'
-
triggers:
- gerrit:
trigger-on:
project-pattern: '{project}'
branches:
- branch-compare-type: 'ANT'
- branch-pattern: '**/master'
+ branch-pattern: '**/{branch}'
forbidden-file-paths:
- compare-type: ANT
- pattern: 'docs/**'
+ pattern: 'docs/**|.gitignore'
builders:
- 'builder-compass-build-iso'
-# - 'builder-compass-deploy-virtual-flavor'
-# - 'builder-compass-backup-logs'
-# publishers:
-# - archive:
-# artifacts: 'ansible.log'
-# allow-empty: 'true'
-# fingerprint: true
+ - 'builder-compass-deploy-virtual-flavor'
+ publishers:
+ - archive:
+ artifacts: 'ansible.log'
+ allow-empty: 'true'
+ fingerprint: true
- job-template:
- name: 'compass-merge'
-
- # builder-merge job to run JJB update
- #
- # This job's purpose is to update all the JJB
-
- project-type: freestyle
+ name: 'compass-daily-{stream}'
node: huawei-build
- logrotate:
- daysToKeep: 30
- numToKeep: 40
- artifactDaysToKeep: -1
- artifactNumToKeep: 5
+ concurrent: true
- parameters:
- - project-parameter:
- project: '{project}'
- - gerrit-parameter:
- branch: 'master'
- - compass-parameter:
- installer: '{installer}'
-
- scm:
- - gerrit-trigger-scm:
- credentials-id: '{ssh-credentials}'
- refspec: ''
- choosing-strategy: 'default'
-
- wrappers:
- - ssh-agent-credentials:
- user: '{ssh-credentials}'
-
- triggers:
- - gerrit:
- trigger-on:
- - change-merged-event
- - comment-added-contains-event:
- comment-contains-value: 'remerge'
- projects:
- - project-compare-type: 'ANT'
- project-pattern: '{project}'
- branches:
- - branch-compare-type: 'ANT'
- branch-pattern: '**/master'
-
- builders:
- - 'builder-compass-merge'
-
-- job-template:
- name: 'compass-daily-{stream}'
-
- project-type: freestyle
-
- node: huawei-build
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
parameters:
- project-parameter:
triggers:
- timed: '@midnight'
- logrotate:
- daysToKeep: 30
- numToKeep: 10
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
-
builders:
- trigger-builds:
- - project: 'compass-build'
+ - project: 'compass-build-iso'
git-revision: true
block: true
- trigger-builds:
- project: 'compass-deploy-virtual-cluster'
git-revision: true
block: true
+# - trigger-builds:
+# - project: 'compass-deploy-virtual-cluster-odl'
+# git-revision: true
+# block: true
+ - trigger-builds:
+ - project: 'compass-deploy-virtual-cluster-onos'
+ git-revision: true
+ block: true
- job-template:
- name: 'compass-build-iso'
-
- project-type: freestyle
+ name: 'compass-build-iso-{stream}'
node: ericsson-build
- logrotate:
- daysToKeep: 30
- numToKeep: 10
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
+ concurrent: true
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
parameters:
- project-parameter:
- git-scm:
credentials-id: '{ssh-credentials}'
refspec: ''
- branch: 'master'
+ branch: '{branch}'
builders:
- 'builder-compass-build-iso'
- 'builder-compass-workspace-cleanup'
- job-template:
- name: 'compass-build-ppa'
+ name: 'compass-build-ppa-{stream}'
description: "build ppa(using docker) in huawei lab"
- project-type: freestyle
-
node: huawei-build
- logrotate:
- daysToKeep: 30
- numToKeep: 10
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
+ concurrent: true
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
parameters:
- project-parameter:
- git-scm:
credentials-id: '{ssh-credentials}'
refspec: ''
- branch: 'master'
+ branch: '{branch}'
triggers:
- - timed: 'H 4-18/2 * * *'
+ - timed: 'H 16 * * *'
builders:
- 'builder-compass-make-ppa'
- job-template:
name: 'compass-deploy-virtual-{flavor}'
- project-type: freestyle
-
disabled: false
node: '{node}'
+ concurrent: true
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+
parameters:
- project-parameter:
project: '{project}'
default: '{conf}'
description: ""
+ builders:
+ - 'builder-compass-ci-preclean-workspace'
+ - 'builder-compass-download-artifact'
+ - 'builder-compass-deploy-virtual-flavor'
+ publishers:
+ - archive:
+ artifacts: 'ansible.log'
+ allow-empty: 'true'
+ fingerprint: true
- logrotate:
- daysToKeep: 30
- numToKeep: 10
- artifactDaysToKeep: -1
- artifactNumToKeep: -1
+- job-template:
+ name: 'compass-deploy-bare-huawei-us'
+
+ disabled: false
+ node: 'huawei-us-deploy-bare-1'
+
+ concurrent: true
+
+ properties:
+ - throttle:
+ enabled: true
+ max-total: 1
+ max-per-node: 1
+
+ parameters:
+ - project-parameter:
+ project: '{project}'
+ - compass-parameter:
+ installer: '{installer}'
builders:
- 'builder-compass-ci-preclean-workspace'
- 'builder-compass-download-artifact'
- - 'builder-compass-deploy-virtual-flavor'
- - 'builder-compass-backup-logs'
+ - 'builder-compass-deploy-bare'
+
publishers:
- archive:
artifacts: 'ansible.log'
description: "URL to Google Storage proxy"
- string:
name: installer_ip
- default: "10.1.0.12"
+ default: "192.168.200.2"
- string:
name: PPA_REPO
- default: "http://58.251.166.184:9999"
+ default: "http://205.177.226.235:9999"
- string:
name: PPA_CACHE
default: "$WORKSPACE/work/repo/"
+ - choice:
+ name: COMPASS-OPENSTACK-VERSION
+ choices:
+ - 'liberty'
+ - 'juno'
+ - choice:
+ name: COMPASS-OS-VERSION
+ choices:
+ - 'ubuntu-trusty'
+ - 'rhel7'
########################
# builder macros
########################
-- builder:
- name: 'builder-compass-merge'
- builders:
- - shell: |
- #!/bin/bash
- echo "Hello World!"
-
- builder:
name: 'builder-compass-make-ppa'
builders:
do
md5=$(md5sum $i | cut -d ' ' -f1)
echo $md5 > $i.md5
- done
- # upload PPA
- for i in $(find *.gz *.iso *.img *.md5 -type f)
- do
curl -T $i $PPA_REPO
+ curl -T $i.md5 $PPA_REPO
done
- builder:
builders:
- shell: |
#!/bin/bash
- set -o errexit
- set -o nounset
- set -o pipefail
set -x
# log info to console
echo
export ISO_URL=file://$BUILD_DIRECTORY/compass.iso
+ sudo brctl addbr vnic_ci
+ sudo ifconfig vnic_ci up
+ export EXTERNAL_NIC=vnic_ci
cd $WORKSPACE
+
./deploy.sh $FLAVOR_CONF
+ if [ $? -ne 0 ]; then
+ echo "depolyment failed!"
+ deploy_ret=1
+ fi
echo
echo "--------------------------------------------------------"
echo "Done!"
+ ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
+ sshpass -p root scp 2>/dev/null $ssh_options root@${installer_ip}:/var/ansible/run/openstack_${COMPASS-OPENSTACK-VERSION}-opnfv2/ansible.log ./ &> /dev/null
+
+ exit $deploy_ret
+
+- builder:
+ name: 'builder-compass-deploy-bare'
+ builders:
+ - shell: |
+ #!/bin/bash
+ set -x
+
+ # log info to console
+ echo "Starting the deployment on baremetal environment using $INSTALLER. This could take some time..."
+ echo "--------------------------------------------------------"
+ echo
+
+ export CONFDIR=$WORKSPACE/deploy/conf/hardware_environment/huawei_us_lab/pod1
+ export ISO_URL=file://$BUILD_DIRECTORY/compass.iso
+ export EXTERNAL_NIC=eth0
+ export INSTALL_NIC=eth1
+
+ cd $WORKSPACE
+
+ export OS_VERSION=${COMPASS-OS-VERSION}
+ export OPENSTACK_VERSION=${COMPASS-OPENSTACK-VERSION}
+ ./deploy.sh --dha $CONFDIR/dha.yml --network $CONFDIR/network.yml
+ if [ $? -ne 0 ]; then
+ echo "depolyment failed!"
+ deploy_ret=1
+ fi
+
+ echo
+ echo "--------------------------------------------------------"
+ echo "Done!"
+
+ ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
+ sshpass -p root scp 2>/dev/null $ssh_options root@${installer_ip}:/var/ansible/run/openstack_${COMPASS-OPENSTACK-VERSION}-opnfv2/ansible.log ./ &> /dev/null
+
+ exit $deploy_ret
+
- builder:
name: 'builder-compass-upload-artifact'
builders:
gsutil cp $BUILD_DIRECTORY/opnfv.properties gs://$GS_URL/opnfv-$OPNFV_ARTIFACT_VERSION.properties > gsutil.properties.log 2>&1
gsutil cp $BUILD_DIRECTORY/opnfv.properties gs://$GS_URL/latest.properties > gsutil.latest.log 2>&1
-
echo
echo "--------------------------------------------------------"
echo "Done!"
sudo rm $WORKSPACE -rf
git clone $GIT_BASE $WORKSPACE
-- builder:
- name: 'builder-compass-backup-logs'
- builders:
- - shell: |
- ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
- sshpass -p root scp 2>/dev/null $ssh_options root@${installer_ip}:/var/ansible/run/openstack_juno-opnfv2/ansible.log ./ &> /dev/null