From: mei mei Date: Wed, 29 Aug 2018 01:24:11 +0000 (+0000) Subject: Merge "Add option --deploy-scenario to support DPDK" X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=commitdiff_plain;h=15ccaf5db6e057878c2ebd12abdf6c0636adc29b;hp=944c43aa00ca2612f4281cb5f9011401a9cffb53;p=releng.git Merge "Add option --deploy-scenario to support DPDK" --- diff --git a/jjb/compass4nfv/compass-ci-jobs.yaml b/jjb/compass4nfv/compass-ci-jobs.yaml index f9d222a7d..3a263d451 100644 --- a/jjb/compass4nfv/compass-ci-jobs.yaml +++ b/jjb/compass4nfv/compass-ci-jobs.yaml @@ -129,6 +129,9 @@ - 'k8-nosdn-stor4nfv-noha': disabled: false auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger' + - 'os-nosdn-stor4nfv-ha': + disabled: false + auto-trigger-name: 'compass-{scenario}-{pod}-{stream}-trigger' jobs: - 'compass-{scenario}-{pod}-daily-{stream}' @@ -511,6 +514,10 @@ name: 'compass-k8-nosdn-stor4nfv-ha-baremetal-centos-master-trigger' triggers: - timed: '' +- trigger: + name: 'compass-os-nosdn-stor4nfv-ha-baremetal-centos-master-trigger' + triggers: + - timed: '' # ---------------------------- # noha-baremetal-centos-master @@ -604,6 +611,10 @@ name: 'compass-k8-nosdn-stor4nfv-ha-huawei-pod7-danube-trigger' triggers: - timed: '' +- trigger: + name: 'compass-os-nosdn-stor4nfv-ha-huawei-pod7-danube-trigger' + triggers: + - timed: '' # ---------------------------- # noha-huawei-pod7-danube @@ -696,6 +707,10 @@ name: 'compass-k8-nosdn-stor4nfv-ha-baremetal-master-trigger' triggers: - timed: '0 16 1-29/2 * *' +- trigger: + name: 'compass-os-nosdn-stor4nfv-ha-baremetal-master-trigger' + triggers: + - timed: '0 20 1-29/2 * *' # --------------------- # noha-baremetal-master @@ -788,6 +803,10 @@ name: 'compass-k8-nosdn-stor4nfv-ha-baremetal-fraser-trigger' triggers: - timed: '0 7 2-30/2 * *' +- trigger: + name: 'compass-os-nosdn-stor4nfv-ha-baremetal-fraser-trigger' + triggers: + - timed: '' # --------------------- # noha-baremetal-fraser @@ -880,6 +899,10 @@ name: 'compass-k8-nosdn-stor4nfv-ha-virtual-master-trigger' triggers: - timed: '0 15 2-30/2 * *' +- trigger: + name: 'compass-os-nosdn-stor4nfv-ha-virtual-master-trigger' + triggers: + - timed: '0 19 2-30/2 * *' # ------------------- # noha-virtual-master @@ -972,6 +995,10 @@ name: 'compass-k8-nosdn-stor4nfv-ha-virtual-fraser-trigger' triggers: - timed: '0 15 1-29/2 * *' +- trigger: + name: 'compass-os-nosdn-stor4nfv-ha-virtual-fraser-trigger' + triggers: + - timed: '' # ------------------- # noha-virtual-fraser diff --git a/jjb/container4nfv/arm64/compass-build.sh b/jjb/container4nfv/arm64/compass-build.sh index 696f7ff76..48381cb00 100755 --- a/jjb/container4nfv/arm64/compass-build.sh +++ b/jjb/container4nfv/arm64/compass-build.sh @@ -7,8 +7,8 @@ COMPASS_WORK_DIR=$WORKSPACE/../compass-work mkdir -p $COMPASS_WORK_DIR ln -s $COMPASS_WORK_DIR work -#TODO: remove workaround after all arm64 patches merged -curl -s http://people.linaro.org/~yibo.cai/compass/compass4nfv-arm64-fixup.sh | bash -s {scenario} +sudo docker rm -f `docker ps | grep compass | cut -f1 -d' '` || true -# build tarball -COMPASS_ISO_REPO='http://people.linaro.org/~yibo.cai/compass' ./build.sh +curl -s http://people.linaro.org/~yibo.cai/compass/compass4nfv-arm64-fixup.sh | bash || true + +./build.sh diff --git a/jjb/container4nfv/arm64/compass-deploy.sh b/jjb/container4nfv/arm64/compass-deploy.sh index a22af09ba..7889c3bba 100755 --- a/jjb/container4nfv/arm64/compass-deploy.sh +++ b/jjb/container4nfv/arm64/compass-deploy.sh @@ -5,11 +5,11 @@ cd compass4nfv export ADAPTER_OS_PATTERN='(?i)CentOS-7.*arm.*' export OS_VERSION="centos7" -export KUBERNETES_VERSION="v1.7.5" +export KUBERNETES_VERSION="v1.9.1" if [[ "$NODE_NAME" =~ "-virtual" ]]; then export DHA="deploy/conf/vm_environment/k8-nosdn-nofeature-noha.yml" export NETWORK="deploy/conf/vm_environment/network.yml" - export VIRT_NUMBER=2 VIRT_CPUS=4 VIRT_MEM=8192 VIRT_DISK=50G + export VIRT_NUMBER=2 VIRT_CPUS=8 VIRT_MEM=8192 VIRT_DISK=50G else export DHA="deploy/conf/hardware_environment/huawei-pod8/k8-nosdn-nofeature-noha.yml" export NETWORK="deploy/conf/hardware_environment/huawei-pod8/network.yml" diff --git a/jjb/container4nfv/arm64/deploy-cni.sh b/jjb/container4nfv/arm64/deploy-cni.sh new file mode 100755 index 000000000..9afb98048 --- /dev/null +++ b/jjb/container4nfv/arm64/deploy-cni.sh @@ -0,0 +1,17 @@ +#!/bin/bash -e + +cd container4nfv/src/arm/cni-deploy + +DEPLOY_SCENARIO={scenario} + +virtualenv .venv +source .venv/bin/activate +pip install ansible==2.6.1 + +ansible-playbook -i inventory/inventory.cfg deploy.yml --tags flannel,multus + +if [ "$DEPLOY_SCENARIO" == "k8-sriov-nofeature-noha" ]; then + ansible-playbook -i inventory/inventory.cfg deploy.yml --tags sriov +elif [ "$DEPLOY_SCENARIO" == "k8-vpp-nofeature-noha" ]; then + ansible-playbook -i inventory/inventory.cfg deploy.yml --tags vhost-vpp +fi diff --git a/jjb/container4nfv/container4nfv-arm64.yaml b/jjb/container4nfv/container4nfv-arm64.yaml index 5f5bc8627..b66667471 100644 --- a/jjb/container4nfv/container4nfv-arm64.yaml +++ b/jjb/container4nfv/container4nfv-arm64.yaml @@ -14,21 +14,28 @@ disabled: false - 'k8-sriov-nofeature-noha': disabled: false + - 'k8-vpp-nofeature-noha': + disabled: false pod: - virtual: slave-label: arm-packet01 - baremetal: slave-label: compass-baremetal-arm jobs: + - 'container4nfv-arm-deploy-{pod}-daily-{stream}' - 'container4nfv-{scenario}-{pod}-daily-{stream}' - job-template: - name: 'container4nfv-{scenario}-{pod}-daily-{stream}' - disabled: '{obj:disabled}' - concurrent: false + name: 'container4nfv-arm-deploy-{pod}-daily-{stream}' + disabled: false node: '{slave-label}' + wrappers: + - timeout: + timeout: 210 + fail: true + scm: - git: url: https://gerrit.opnfv.org/gerrit/compass4nfv @@ -38,12 +45,7 @@ wipe-workspace: true triggers: - - 'trigger-{scenario}-{pod}-{stream}' - - wrappers: - - timeout: - timeout: 150 - fail: true + - 'trigger-deploy-{pod}-{stream}' builders: - shell: @@ -54,42 +56,68 @@ - project: yardstick-arm64-compass-arm-virtual03-daily-master current-parameters: false same-node: true - block: false + block: true + block-thresholds: + build-step-failure-threshold: 'never' + failure-threshold: 'never' + unstable-threshold: 'Failure' + - project: container4nfv-k8-multus-nofeature-noha-{pod}-daily-{stream} + current-parameters: true + same-node: true + block: true + block-thresholds: + build-step-failure-threshold: 'never' + failure-threshold: 'never' + unstable-threshold: 'Failure' + - project: container4nfv-k8-sriov-nofeature-noha-{pod}-daily-{stream} + current-parameters: true + same-node: true + block: true + block-thresholds: + build-step-failure-threshold: 'never' + failure-threshold: 'never' + unstable-threshold: 'Failure' + - project: container4nfv-k8-vpp-nofeature-noha-{pod}-daily-{stream} + current-parameters: true + same-node: true + block: true + block-thresholds: + build-step-failure-threshold: 'never' + failure-threshold: 'never' + unstable-threshold: 'never' -- trigger: - name: 'trigger-k8-multus-nofeature-noha-virtual-master' - triggers: - - timed: '0 12 * * *' -- trigger: - name: 'trigger-k8-sriov-nofeature-noha-virtual-master' - triggers: - - timed: '0 15 * * *' +- job-template: + name: 'container4nfv-{scenario}-{pod}-daily-{stream}' + disabled: '{obj:disabled}' + node: '{slave-label}' -- trigger: - name: 'trigger-k8-multus-nofeature-noha-virtual-fraser' - triggers: - - timed: '0 18 * * *' -- trigger: - name: 'trigger-k8-sriov-nofeature-noha-virtual-fraser' - triggers: - - timed: '0 21 * * *' + scm: + - git: + url: https://gerrit.opnfv.org/gerrit/container4nfv + branches: + - master + basedir: container4nfv + wipe-workspace: true + + builders: + - shell: + !include-raw: arm64/deploy-cni.sh - trigger: - name: 'trigger-k8-multus-nofeature-noha-baremetal-master' + name: 'trigger-deploy-virtual-master' triggers: - timed: '0 12 * * *' - trigger: - name: 'trigger-k8-sriov-nofeature-noha-baremetal-master' + name: 'trigger-deploy-virtual-fraser' triggers: - - timed: '0 15 * * *' - + - timed: '0 18 * * *' - trigger: - name: 'trigger-k8-multus-nofeature-noha-baremetal-fraser' + name: 'trigger-deploy-baremetal-master' triggers: - - timed: '0 18 * * *' + - timed: '0 12 * * *' - trigger: - name: 'trigger-k8-sriov-nofeature-noha-baremetal-fraser' + name: 'trigger-deploy-baremetal-fraser' triggers: - - timed: '0 21 * * *' + - timed: '0 18 * * *' diff --git a/jjb/cperf/cperf-robot-netvirt-csit.sh b/jjb/cperf/cperf-robot-netvirt-csit.sh index 15f8669a6..4fdcd102b 100755 --- a/jjb/cperf/cperf-robot-netvirt-csit.sh +++ b/jjb/cperf/cperf-robot-netvirt-csit.sh @@ -167,7 +167,6 @@ docker run -i --net=host \ opnfv/cperf:$DOCKER_TAG \ /bin/bash -c "source /tmp/overcloudrc; mkdir -p \$HOME/.ssh; cp /tmp/id_rsa \$HOME/.ssh; \ cd /home/opnfv/repos/odl_test/ && git pull origin master; \ - yum remove -y python-chardet; \ pip install odltools; \ ${robot_cmd} ${suites};" diff --git a/jjb/doctor/doctor.yaml b/jjb/doctor/doctor.yaml index 7e15c303e..469023037 100644 --- a/jjb/doctor/doctor.yaml +++ b/jjb/doctor/doctor.yaml @@ -99,15 +99,6 @@ GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE kill-phase-on: FAILURE git-revision: true - - name: 'doctor-verify-daisy-congress-x86_64-{stream}' - predefined-parameters: | - PROJECT=$PROJECT - GERRIT_BRANCH=$GERRIT_BRANCH - GERRIT_REFSPEC=$GERRIT_REFSPEC - GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER - GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE - kill-phase-on: FAILURE - git-revision: true - job-template: name: 'doctor-verify-{installer}-{inspector}-{arch}-{stream}' diff --git a/jjb/dovetail/dovetail-run.sh b/jjb/dovetail/dovetail-run.sh index bdc8c8640..23fbe9b6d 100755 --- a/jjb/dovetail/dovetail-run.sh +++ b/jjb/dovetail/dovetail-run.sh @@ -395,7 +395,7 @@ sudo chown -R ${CURRENT_USER}:${PRIMARY_GROUP} ./results #remove useless files to save disk space sudo rm -rf ./results/workspace sudo rm -f ./results/yardstick.img -sudo rm -f ./results/tmp* +sudo rm -f ./results/bottlenecks/tmp* echo "Dovetail: done!" diff --git a/jjb/fuel/fuel-docker-jobs.yaml b/jjb/fuel/fuel-docker-jobs.yaml new file mode 100644 index 000000000..98ed66da7 --- /dev/null +++ b/jjb/fuel/fuel-docker-jobs.yaml @@ -0,0 +1,200 @@ +--- +############################################## +# job configuration for docker build and push +############################################## +- project: + + name: fuel-docker + + project: fuel + + stream: + - master: + branch: '{stream}' + disabled: false + - gambia: + branch: 'stable/{stream}' + disabled: true + + arch_tag: + - 'amd64': + slave_label: 'opnfv-build-ubuntu' + - 'arm64': + slave_label: 'opnfv-build-ubuntu-arm' + + # settings for jobs run in multijob phases + build-job-settings: &build-job-settings + current-parameters: false + git-revision: true + node-parameters: false + predefined-parameters: | + PUSH_IMAGE=$PUSH_IMAGE + COMMIT_ID=$COMMIT_ID + GERRIT_REFNAME=$GERRIT_REFNAME + kill-phase-on: FAILURE + abort-all-jobs: false + + manifest-job-settings: &manifest-job-settings + current-parameters: false + git-revision: true + node-parameters: false + predefined-parameters: + GERRIT_REFNAME=$GERRIT_REFNAME + kill-phase-on: FAILURE + abort-all-jobs: false + + jobs: + - "fuel-docker-{stream}" + - "fuel-docker-build-{arch_tag}-{stream}" + - "fuel-docker-manifest-{stream}" + +######################## +# job templates +######################## +- job-template: + name: 'fuel-docker-{stream}' + + project-type: multijob + + disabled: '{obj:disabled}' + + parameters: + - fuel-job-parameters: + project: '{project}' + branch: '{branch}' + slave_label: 'opnfv-build-ubuntu' + arch_tag: 'amd64' + + properties: + - throttle: + max-per-node: 1 + option: 'project' + + scm: + - git-scm + + triggers: + - pollscm: + cron: "*/25 * * * *" + - gerrit-trigger-tag-created: + project: '{project}' + + builders: + - multijob: + name: 'build fuel images' + execution-type: PARALLEL + projects: + - name: 'fuel-docker-build-amd64-{stream}' + <<: *build-job-settings + - name: 'fuel-docker-build-arm64-{stream}' + <<: *build-job-settings + - multijob: + name: 'publish fuel manifests' + condition: SUCCESSFUL + execution-type: PARALLEL + projects: + - name: 'fuel-docker-manifest-{stream}' + <<: *manifest-job-settings + + publishers: + - email-fuel-ptl + +- job-template: + name: 'fuel-docker-build-{arch_tag}-{stream}' + disabled: '{obj:disabled}' + parameters: + - fuel-job-parameters: + project: '{project}' + branch: '{branch}' + slave_label: '{slave_label}' + arch_tag: '{arch_tag}' + scm: + - git-scm + builders: + - shell: | + #!/bin/bash -ex + case "{stream}" in + "master") + tag="latest" ;; + *) + tag="{stream}" ;; + esac + sudo ./ci/build.sh $tag + +- job-template: + name: 'fuel-docker-manifest-{stream}' + + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + - label: + name: SLAVE_LABEL + default: 'opnfv-build-ubuntu' + description: 'Slave label on Jenkins' + - string: + name: PROJECT + default: "{project}" + description: "Project name used to enable job conditions" + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on this Jenkins Slave' + - string: + name: REPO + default: "opnfv" + description: "Repository name for fuel-docker images" + + + disabled: '{obj:disabled}' + + builders: + - shell: | + #!/bin/bash -ex + case "{stream}" in + "master") + tag="latest" ;; + *) + tag="{stream}" ;; + esac + sudo manifest-tool push from-args \ + --platforms linux/amd64,linux/arm64 \ + --template $REPO/fuel:saltmaster-reclass-ARCH-$tag \ + --target $REPO/fuel:saltmaster-reclass-$tag + exit $? + +# parameter macro +- parameter: + name: fuel-job-parameters + parameters: + - project-parameter: + project: '{project}' + branch: '{branch}' + - label: + name: SLAVE_LABEL + default: '{slave_label}' + description: 'Slave label on Jenkins' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on this Jenkins Slave' + - string: + name: PUSH_IMAGE + default: "true" + description: "To enable/disable pushing the image to Dockerhub." + - string: + name: COMMIT_ID + default: "" + description: "commit id to make a snapshot docker image" + - string: + name: GERRIT_REFNAME + default: "" + description: "Docker tag to be built, e.g. refs/tags/5.0.0, refs/tags/opnfv-5.0.0, refs/tags/5.0.RC1" + - string: + name: PROJECT + default: "{project}" + description: "Project name used to enable job conditions" + - string: + name: REPO + default: "opnfv" + description: "Repository name for fuel-docker images" diff --git a/jjb/xci/xci-daily-jobs.yaml b/jjb/xci/xci-daily-jobs.yaml index c1132ab85..47bd83c8a 100644 --- a/jjb/xci/xci-daily-jobs.yaml +++ b/jjb/xci/xci-daily-jobs.yaml @@ -1,15 +1,9 @@ --- -# ------------------------------- -# These jobs run on a daily basis and deploy OpenStack -# using the pinned versions of opnfv/releng, openstack/bifrost -# and openstack/openstack-ansible. Due to this, there is no -# version/branch is set/passed to jobs and instead the versions -# are checked out based on what is configured. -# ------------------------------- - project: project: 'releng-xci' name: 'xci-daily' + # ------------------------------- # Branch Anchors # ------------------------------- @@ -17,55 +11,87 @@ stream: master opnfv-releng-version: master gs-pathname: '' + # ------------------------------- # Scenarios # ------------------------------- scenario: - - 'os-nosdn-nofeature-ha': - auto-trigger-name: 'daily-trigger-disabled' - xci-flavor: 'ha' - 'os-nosdn-nofeature-noha': auto-trigger-name: 'daily-trigger-disabled' - xci-flavor: 'noha' - - 'os-odl-sfc-ha': + deploy-scenario: 'os-nosdn-nofeature' + installer-type: 'osa' + xci-flavor: 'mini' + - 'os-nosdn-osm-noha': + auto-trigger-name: 'daily-trigger-disabled' + deploy-scenario: 'os-nosdn-osm' + installer-type: 'osa' + xci-flavor: 'mini' + - 'os-odl-nofeature-noha': auto-trigger-name: 'daily-trigger-disabled' - xci-flavor: 'ha' + deploy-scenario: 'os-odl-nofeature' + installer-type: 'osa' + xci-flavor: 'mini' + - 'os-odl-bgpvpn-noha': + auto-trigger-name: 'daily-trigger-disabled' + deploy-scenario: 'os-odl-bgpvpn' + installer-type: 'osa' + xci-flavor: 'mini' - 'os-odl-sfc-noha': auto-trigger-name: 'daily-trigger-disabled' - xci-flavor: 'noha' + deploy-scenario: 'os-odl-sfc' + installer-type: 'osa' + xci-flavor: 'mini' + - 'k8-nosdn-nofeature-noha': + auto-trigger-name: 'daily-trigger-disabled' + deploy-scenario: 'k8-nosdn-nofeature' + installer-type: 'kubespray' + xci-flavor: 'mini' + - 'k8-canal-nofeature-noha': + auto-trigger-name: 'daily-trigger-disabled' + deploy-scenario: 'k8-canal-nofeature' + installer-type: 'kubespray' + xci-flavor: 'mini' + - 'k8-calico-nofeature-noha': + auto-trigger-name: 'daily-trigger-disabled' + deploy-scenario: 'k8-calico-nofeature' + installer-type: 'kubespray' + xci-flavor: 'mini' + - 'k8-contiv-nofeature-noha': + auto-trigger-name: 'daily-trigger-disabled' + deploy-scenario: 'k8-contiv-nofeature' + installer-type: 'kubespray' + xci-flavor: 'mini' + - 'k8-flannel-nofeature-noha': + auto-trigger-name: 'daily-trigger-disabled' + deploy-scenario: 'k8-flannel-nofeature' + installer-type: 'kubespray' + xci-flavor: 'mini' + - 'k8-nosdn-istio-noha': + auto-trigger-name: 'daily-trigger-disabled' + deploy-scenario: 'k8-nosdn-istio' + installer-type: 'kubespray' + xci-flavor: 'mini' + # ------------------------------- # XCI PODs # ------------------------------- pod: - virtual: <<: *master + # ------------------------------- # Supported Distros # ------------------------------- distro: - - 'xenial': + - 'ubuntu': disabled: false - slave-label: xci-xenial-virtual - dib-os-release: 'xenial' - dib-os-element: 'ubuntu-minimal' - # yamllint disable rule:line-length - dib-os-packages: 'vlan,vim,less,bridge-utils,sudo,language-pack-en,iputils-ping,rsyslog,curl,python,debootstrap,ifenslave,ifenslave-2.6,lsof,lvm2,tcpdump,nfs-kernel-server,chrony,iptabls' - # yamllint enable rule:line-length - extra-dib-elements: 'openssh-server' - - 'centos7': - disabled: true - slave-label: xci-centos7-virtual - dib-os-release: '7' - dib-os-element: 'centos7' - dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl' - extra-dib-elements: 'openssh-server' - - 'suse': + slave-label: xci-virtual + - 'centos': disabled: true - slave-label: xci-suse-virtual - dib-os-release: '42.3' - dib-os-element: 'opensuse-minimal' - dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl' - extra-dib-elements: 'openssh-server' + slave-label: xci-virtual + - 'opensuse': + disabled: false + slave-label: xci-virtual # ------------------------------- # Phases @@ -73,6 +99,7 @@ phase: - 'deploy' - 'functest' + # ------------------------------- # jobs # ------------------------------- @@ -94,7 +121,10 @@ - build-blocker: use-build-blocker: true blocking-jobs: + - '^xci-verify.*' + - '^xci-merge.*' - '^xci-os.*' + - '^xci-k8.*' - '^xci-deploy.*' - '^xci-functest.*' - '^bifrost-.*periodic.*' @@ -105,33 +135,54 @@ parameters: - string: name: DEPLOY_SCENARIO - default: '{scenario}' + default: '{deploy-scenario}' + - string: + name: INSTALLER_TYPE + default: '{installer-type}' - string: name: XCI_FLAVOR default: '{xci-flavor}' - label: name: SLAVE_LABEL default: '{slave-label}' + - string: + name: XCI_DISTRO + default: '{distro}' + - string: + name: FUNCTEST_MODE + default: 'tier' + - string: + name: FUNCTEST_SUITE_NAME + default: 'healthcheck' - string: name: CI_LOOP default: 'daily' + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT + description: 'Git URL to use on this Jenkins Slave' triggers: - '{auto-trigger-name}' wrappers: + - ssh-agent-wrapper + - build-timeout: + timeout: 240 - fix-workspace-permissions builders: - description-setter: - description: "Built on $NODE_NAME" + description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME" - trigger-builds: - project: 'xci-deploy-{pod}-{distro}-daily-{stream}' current-parameters: false predefined-parameters: | DEPLOY_SCENARIO=$DEPLOY_SCENARIO + INSTALLER_TYPE=$INSTALLER_TYPE XCI_FLAVOR=$XCI_FLAVOR CI_LOOP=$CI_LOOP + XCI_DISTRO=$XCI_DISTRO same-node: true block: true - trigger-builds: @@ -139,8 +190,12 @@ current-parameters: false predefined-parameters: | DEPLOY_SCENARIO=$DEPLOY_SCENARIO + INSTALLER_TYPE=$INSTALLER_TYPE XCI_FLAVOR=$XCI_FLAVOR CI_LOOP=$CI_LOOP + XCI_DISTRO=$XCI_DISTRO + FUNCTEST_MODE=$FUNCTEST_MODE + FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME same-node: true block: true block-thresholds: @@ -150,42 +205,37 @@ publishers: # yamllint disable rule:line-length - - email: - recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com # yamllint enable rule:line-length - email-jenkins-admins-on-failure - - postbuildscript: - builders: - - role: BOTH - build-on: - - ABORTED - - FAILURE - - NOT_BUILT - - SUCCESS - - UNSTABLE - build-steps: - - shell: !include-raw: ./xci-cleanup.sh - mark-unstable-if-failed: true - job-template: name: 'xci-{phase}-{pod}-{distro}-daily-{stream}' - disabled: '{obj:disabled}' + disabled: false - concurrent: false + concurrent: true properties: - build-blocker: use-build-blocker: true blocking-jobs: + - '^xci-verify.*' + - '^xci-merge.*' - '^xci-deploy.*' - '^xci-functest.*' - '^bifrost-.*periodic.*' - '^osa-.*periodic.*' block-level: 'NODE' + - throttle: + enabled: true + max-per-node: 1 + option: 'project' - logrotate-default wrappers: + - ssh-agent-wrapper + - build-timeout: + timeout: 240 - fix-workspace-permissions scm: @@ -195,77 +245,83 @@ - project-parameter: project: '{project}' branch: '{opnfv-releng-version}' - - string: - name: GIT_BASE - default: https://gerrit.opnfv.org/gerrit/$PROJECT - string: name: DEPLOY_SCENARIO - default: 'os-nosdn-nofeature-ha' - - string: - name: XCI_FLAVOR - default: 'ha' - - string: - name: DISTRO - default: '{distro}' - - string: - name: DIB_OS_RELEASE - default: '{dib-os-release}' + default: 'os-nosdn-nofeature-noha' - string: - name: DIB_OS_ELEMENT - default: '{dib-os-element}' - - string: - name: DIB_OS_PACKAGES - default: '{dib-os-packages}' + name: INSTALLER_TYPE + default: 'osa' - string: - name: EXTRA_DIB_ELEMENTS - default: '{extra-dib-elements}' + name: XCI_FLAVOR + default: 'mini' - string: - name: CLEAN_DIB_IMAGES - default: 'true' + name: XCI_DISTRO + default: 'ubuntu' - label: name: SLAVE_LABEL default: '{slave-label}' - - string: - name: CI_LOOP - default: 'daily' - - string: - name: INSTALLER_TYPE - default: 'osa' - string: name: FUNCTEST_MODE - default: 'daily' + default: 'tier' - string: name: FUNCTEST_SUITE_NAME + default: 'healthcheck' + - string: + name: CI_LOOP default: 'daily' - description: "Daily suite name to run" + - string: + name: GIT_BASE + default: https://gerrit.opnfv.org/gerrit/$PROJECT builders: - description-setter: - description: "Built on $NODE_NAME - Scenario: $DEPLOY_SCENARIO" - - 'xci-{phase}-builder' + description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME" + - 'xci-daily-{phase}-macro' # -------------------------- # builder macros # -------------------------- +# These need to be properly fixed once the basic deployment and functest +# jobs are working outside of clean vm. +# One of the ugly fixes is moving functest preparation step into the +# deployment job itself since functest preparation requires some of the +# things from deployment job. With clean VM, this wasn't an issue +# since everything was on clean VM. When we move things out of clean +# VM, things are done in workspaces of the jobs that are different. +# +# Apart from these things, we will need to go through the scripts +# used for verify jobs and make them updated in order to be able to +# use them for jobs that don't use clean VM. - builder: - name: xci-deploy-builder + name: 'xci-daily-deploy-macro' builders: - - shell: - !include-raw: ./xci-deploy.sh + - shell: | + #!/bin/bash + set -o errexit + set -o pipefail + + cd $WORKSPACE/xci && ./xci-deploy.sh + + echo "Prepare OPNFV VM for Functest" + echo "---------------------------------------------------------------------------------" + export XCI_PATH=$WORKSPACE + export XCI_VENV=${XCI_PATH}/venv + source $XCI_VENV/bin/activate + while read var; do + declare -x "\${var}" 2>/dev/null + echo $var + done < ${XCI_PATH}/.cache/xci.env && cd ${XCI_PATH}/xci && \ + ansible-playbook -i playbooks/dynamic_inventory.py playbooks/prepare-functest.yml + + echo "Run Functest" + echo "---------------------------------------------------------------------------------" - builder: - name: xci-functest-builder + name: 'xci-daily-functest-macro' builders: - shell: | #!/bin/bash + set -o errexit + set -o pipefail - echo "Hello World!" - -# this will be enabled once the xci is prepared -# - builder: -# name: xci-functest-builder -# builders: -# - shell: -# !include-raw: -# - ../../utils/fetch_os_creds.sh -# - ../functest/functest-alpine.sh + ssh root@192.168.122.2 "/root/run-functest.sh" diff --git a/jjb/xci/xci-merge-jobs.yaml b/jjb/xci/xci-merge-jobs.yaml index cb438ad5d..0cf1ab9e5 100644 --- a/jjb/xci/xci-merge-jobs.yaml +++ b/jjb/xci/xci-merge-jobs.yaml @@ -223,6 +223,8 @@ blocking-jobs: - 'xci-verify-{distro}-.*' - 'xci-merge-{distro}-.*' + - 'xci-os.*' + - 'xci-k8.*' - 'openstack-bifrost-verify-{distro}-.*' - 'xci-osa-verify-{distro}-.*' - 'xci-osa-periodic-{distro}-.*' diff --git a/jjb/xci/xci-verify-jobs.yaml b/jjb/xci/xci-verify-jobs.yaml index baff0c99e..cc6de488f 100644 --- a/jjb/xci/xci-verify-jobs.yaml +++ b/jjb/xci/xci-verify-jobs.yaml @@ -67,6 +67,8 @@ blocking-jobs: - 'xci-verify-{distro}-.*' - 'xci-merge-{distro}-.*' + - 'xci-os-.*' + - 'xci-k8-.*' - 'openstack-bifrost-verify-{distro}-.*' - 'xci-osa-verify-{distro}-.*' - 'xci-osa-periodic-{distro}-.*' diff --git a/utils/artifacts.opnfv.org.sh b/utils/artifacts.opnfv.org.sh index 1984b4992..2b35006d4 100755 --- a/utils/artifacts.opnfv.org.sh +++ b/utils/artifacts.opnfv.org.sh @@ -31,7 +31,7 @@ do for index in $(gsutil ls -l gs://artifacts.opnfv.org/logs/"$project"/ |awk 'NF==1'| sed s,gs://artifacts.opnfv.org/,, ) do index="$(echo ${index%/*} | sed s,/,_,g)" - echo "
  • "$index"
  • " >> $OUTPUT + echo "
  • "$index"
  • " >> $OUTPUT done done @@ -55,7 +55,7 @@ rm -f $OUTPUT echo "
  • $path
  • " >> $OUTPUT echo "" >> $OUTPUT else - echo "
  • "$filepath"
  • " >> $OUTPUT + echo "
  • "$filepath"
  • " >> $OUTPUT fi done @@ -85,7 +85,7 @@ rm -f $OUTPUT echo "
  • $path
  • " >> $OUTPUT echo "" >> $OUTPUT else - echo "
  • "$filepath"
  • " >> $OUTPUT + echo "
  • "$filepath"
  • " >> $OUTPUT fi done @@ -119,7 +119,7 @@ do echo "
  • $path
  • " >> $OUTPUT echo "" >> $OUTPUT else - echo "
  • "$filepath"
  • " >> $OUTPUT + echo "
  • "$filepath"
  • " >> $OUTPUT fi diff --git a/utils/push-test-logs.sh b/utils/push-test-logs.sh index 9debb45b7..d5ab8b91c 100644 --- a/utils/push-test-logs.sh +++ b/utils/push-test-logs.sh @@ -64,11 +64,11 @@ if [ -d "$dir_result" ]; then else echo "Uploading logs to artifact $project_artifact" gsutil -m cp -r "$dir_result"/* gs://artifacts.opnfv.org/"$project_artifact"/ >/dev/null 2>&1 - echo "Logs can be found in http://artifacts.opnfv.org/logs_${project}_${testbed}.html" + echo "Logs can be found in https://artifacts.opnfv.org/logs_${project}_${testbed}.html" cd $dir_result files=($(find . -name \* -print|sed 's/^\.//'|sed '/^\s*$/d')) for f in ${files[@]}; do - echo "http://artifacts.opnfv.org/${project_artifact}${f}" + echo "https://artifacts.opnfv.org/${project_artifact}${f}" done fi fi