+---
+# -------------------------------
+# 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:
- name: 'bifrost-osa-daily'
-#--------------------------------
-# BRANCH ANCHORS
-#--------------------------------
-# the versions stated here default to branches which then later
-# on used for checking out the branches, pulling in head of the branch.
-# but they also allow us to state sha1 so instead of checking out the
-# branches, we can check out sha1 if we want to use locked/specific
-# sha1 or manually enter sha1.
+ project: 'releng-xci'
+
+ name: 'xci-daily'
+ # -------------------------------
+ # Branch Anchors
+ # -------------------------------
master: &master
- stream: master
- openstack-osa-version: '{stream}'
- openstack-bifrost-version: '{stream}'
- opnfv-releng-version: 'master'
- gs-pathname: ''
- ocata: &ocata
- stream: ocata
- openstack-osa-version: 'stable/{stream}'
- openstack-bifrost-version: 'stable/{stream}'
- opnfv-releng-version: 'master'
- gs-pathname: '/{stream}'
-#--------------------------------
-# scenarios
-#--------------------------------
+ stream: master
+ opnfv-releng-version: master
+ gs-pathname: ''
+ # -------------------------------
+ # Scenarios
+ # -------------------------------
scenario:
- # HA scenarios
- - 'os-nosdn-nofeature-ha':
- auto-trigger-name: 'daily-trigger-disabled'
-#--------------------------------
-# XCI PODs
-#--------------------------------
+ - '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':
+ auto-trigger-name: 'daily-trigger-disabled'
+ xci-flavor: 'ha'
+ - 'os-odl-sfc-noha':
+ auto-trigger-name: 'daily-trigger-disabled'
+ xci-flavor: 'noha'
+ # -------------------------------
+ # XCI PODs
+ # -------------------------------
pod:
- - virtual:
- <<: *master
- - virtual:
- <<: *ocata
-#--------------------------------
-# Supported Distros
-#--------------------------------
+ - virtual:
+ <<: *master
+ # -------------------------------
+ # Supported Distros
+ # -------------------------------
distro:
- - 'xenial':
- disabled: false
- slave-label: xci-xenial-virtual
- dib-os-release: 'xenial'
- dib-os-element: 'ubuntu-minimal'
- 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'
- 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':
- disabled: true
- slave-label: xci-suse-virtual
- dib-os-release: '42.2'
- dib-os-element: 'opensuse-minimal'
- dib-os-packages: 'vim,less,bridge-utils,iputils,rsyslog,curl'
- extra-dib-elements: 'openssh-server'
+ - 'xenial':
+ 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':
+ 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'
-#--------------------------------
-# Phases
-#--------------------------------
+ # -------------------------------
+ # Phases
+ # -------------------------------
phase:
- - 'provision'
- - 'deploy'
- - 'functest'
-#--------------------------------
-# jobs
-#--------------------------------
+ - 'deploy'
+ - 'functest'
+ # -------------------------------
+ # jobs
+ # -------------------------------
jobs:
- - 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
- - 'xci-{phase}-{pod}-{distro}-daily-{stream}'
-
-#--------------------------------
-# VM defaults
-#--------------------------------
-- defaults:
- name: daily_vm_defaults
- test-vm-num-nodes: '6'
- test-vm-node-names: 'xcimaster controller00 controller01 controller02 compute00 compute01'
- vm-domain-type: 'kvm'
- vm-cpu: '8'
- vm-disk: '100'
- vm-memory-size: '16384'
- vm-disk-cache: 'unsafe'
+ - 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
+ - 'xci-{phase}-{pod}-{distro}-daily-{stream}'
-#--------------------------------
+# -------------------------------
# job templates
-#--------------------------------
+# -------------------------------
- job-template:
name: 'xci-{scenario}-{pod}-{distro}-daily-{stream}'
concurrent: false
properties:
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - '^xci-os.*'
- block-level: 'NODE'
- - logrotate-default
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - '^xci-os.*'
+ - '^xci-deploy.*'
+ - '^xci-functest.*'
+ - '^bifrost-.*periodic.*'
+ - '^osa-.*periodic.*'
+ block-level: 'NODE'
+ - logrotate-default
parameters:
- - string:
- name: OPENSTACK_OSA_VERSION
- default: '{openstack-osa-version}'
- - string:
- name: OPENSTACK_BIFROST_VERSION
- default: '{openstack-osa-version}'
- - string:
- name: OPNFV_RELENG_VERSION
- default: '{opnfv-releng-version}'
- - string:
- name: USE_PROMOTED_VERSIONS
- default: 'true'
- - string:
- name: DEPLOY_SCENARIO
- default: '{scenario}'
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
+ - string:
+ name: DEPLOY_SCENARIO
+ default: '{scenario}'
+ - string:
+ name: XCI_FLAVOR
+ default: '{xci-flavor}'
+ - label:
+ name: SLAVE_LABEL
+ default: '{slave-label}'
+ - string:
+ name: CI_LOOP
+ default: 'daily'
triggers:
- - '{auto-trigger-name}'
+ - '{auto-trigger-name}'
wrappers:
- - xci-fix-perms-workspace
+ - fix-workspace-permissions
builders:
- - description-setter:
- description: "Built on $NODE_NAME"
- - trigger-builds:
- - project: 'xci-provision-{pod}-{distro}-daily-{stream}'
- current-parameters: false
- predefined-parameters: |
- OPENSTACK_OSA_VERSION=$OPENSTACK_OSA_VERSION
- OPENSTACK_BIFROST_VERSION=$OPENSTACK_BIFROST_VERSION
- OPNFV_RELENG_VERSION=$OPNFV_RELENG_VERSION
- USE_PROMOTED_VERSIONS=$USE_PROMOTED_VERSIONS
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- same-node: true
- block: true
- - trigger-builds:
- - project: 'xci-deploy-{pod}-{distro}-daily-{stream}'
- current-parameters: false
- predefined-parameters: |
- OPENSTACK_OSA_VERSION=$OPENSTACK_OSA_VERSION
- OPENSTACK_BIFROST_VERSION=$OPENSTACK_BIFROST_VERSION
- OPNFV_RELENG_VERSION=$OPNFV_RELENG_VERSION
- USE_PROMOTED_VERSIONS=$USE_PROMOTED_VERSIONS
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- same-node: true
- block: true
- - trigger-builds:
- - project: 'xci-functest-{pod}-{distro}-daily-{stream}'
- current-parameters: false
- predefined-parameters: |
- OPENSTACK_OSA_VERSION=$OPENSTACK_OSA_VERSION
- OPENSTACK_BIFROST_VERSION=$OPENSTACK_BIFROST_VERSION
- OPNFV_RELENG_VERSION=$OPNFV_RELENG_VERSION
- USE_PROMOTED_VERSIONS=$USE_PROMOTED_VERSIONS
- DEPLOY_SCENARIO=$DEPLOY_SCENARIO
- same-node: true
- block: true
- block-thresholds:
- build-step-failure-threshold: 'never'
- failure-threshold: 'never'
- unstable-threshold: 'FAILURE'
+ - description-setter:
+ description: "Built on $NODE_NAME"
+ - trigger-builds:
+ - project: 'xci-deploy-{pod}-{distro}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ XCI_FLAVOR=$XCI_FLAVOR
+ CI_LOOP=$CI_LOOP
+ same-node: true
+ block: true
+ - trigger-builds:
+ - project: 'xci-functest-{pod}-{distro}-daily-{stream}'
+ current-parameters: false
+ predefined-parameters: |
+ DEPLOY_SCENARIO=$DEPLOY_SCENARIO
+ XCI_FLAVOR=$XCI_FLAVOR
+ CI_LOOP=$CI_LOOP
+ same-node: true
+ block: true
+ block-thresholds:
+ build-step-failure-threshold: 'never'
+ failure-threshold: 'never'
+ unstable-threshold: 'FAILURE'
publishers:
- - email:
- recipients: fatih.degirmenci@ericsson.com yroblamo@redhat.com mchandras@suse.de jack.morgan@intel.com julienjut@gmail.com
+ # 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:
+ script-only-if-succeeded: false
+ script-only-if-failed: false
+ builders:
+ - shell:
+ !include-raw: ./xci-cleanup.sh
- job-template:
name: 'xci-{phase}-{pod}-{distro}-daily-{stream}'
disabled: '{obj:disabled}'
- defaults: daily_vm_defaults
-
concurrent: false
properties:
- - build-blocker:
- use-build-blocker: true
- blocking-jobs:
- - '^xci-provision.*'
- - '^xci-deploy.*'
- - '^xci-functest.*'
- block-level: 'NODE'
- - logrotate-default
-
- parameters:
- - string:
- name: OPENSTACK_OSA_VERSION
- default: '{openstack-osa-version}'
- - string:
- name: OPENSTACK_BIFROST_VERSION
- default: '{openstack-osa-version}'
- - string:
- name: OPNFV_RELENG_VERSION
- default: '{opnfv-releng-version}'
- - string:
- name: USE_PROMOTED_VERSIONS
- default: 'true'
- - string:
- name: DEPLOY_SCENARIO
- default: 'os-nosdn-nofeature-ha'
- - string:
- name: DISTRO
- default: '{distro}'
- - string:
- name: DIB_OS_RELEASE
- default: '{dib-os-release}'
- - string:
- name: DIB_OS_ELEMENT
- default: '{dib-os-element}'
- - string:
- name: EXTRA_DIB_ELEMENTS
- default: '{extra-dib-elements}'
- - string:
- name: DIB_OS_PACKAGES
- default: '{dib-os-packages}'
- - string:
- name: TEST_VM_NUM_NODES
- default: '{test-vm-num-nodes}'
- - string:
- name: TEST_VM_NODE_NAMES
- default: '{test-vm-node-names}'
- - string:
- name: VM_DOMAIN_TYPE
- default: '{vm-domain-type}'
- - string:
- name: VM_CPU
- default: '{vm-cpu}'
- - string:
- name: VM_DISK
- default: '{vm-disk}'
- - string:
- name: VM_MEMORY_SIZE
- default: '{vm-memory-size}'
- - string:
- name: VM_DISK_CACHE
- default: '{vm-disk-cache}'
- - string:
- name: CLEAN_DIB_IMAGES
- default: 'true'
- - label:
- name: SLAVE_LABEL
- default: '{slave-label}'
- - string:
- name: ANSIBLE_VERBOSITY
- default: ''
+ - build-blocker:
+ use-build-blocker: true
+ blocking-jobs:
+ - '^xci-deploy.*'
+ - '^xci-functest.*'
+ - '^bifrost-.*periodic.*'
+ - '^osa-.*periodic.*'
+ block-level: 'NODE'
+ - logrotate-default
wrappers:
- - xci-fix-perms-workspace
+ - fix-workspace-permissions
- builders:
- - description-setter:
- description: "Built on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
- - 'xci-{phase}-builder'
+ scm:
+ - git-scm
-#---------------------------
-# wrapper macros
-#---------------------------
-- wrapper:
- name: xci-fix-perms-workspace
- wrappers:
- - pre-scm-buildstep:
- - shell: |
- #!/bin/bash
- sudo chown -R $USER $WORKSPACE || exit 1
+ parameters:
+ - 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}'
+ - string:
+ name: DIB_OS_ELEMENT
+ default: '{dib-os-element}'
+ - string:
+ name: DIB_OS_PACKAGES
+ default: '{dib-os-packages}'
+ - string:
+ name: EXTRA_DIB_ELEMENTS
+ default: '{extra-dib-elements}'
+ - string:
+ name: CLEAN_DIB_IMAGES
+ default: 'true'
+ - 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'
+ - string:
+ name: FUNCTEST_SUITE_NAME
+ default: 'daily'
+ description: "Daily suite name to run"
-#---------------------------
-# builder macros
-#---------------------------
-- builder:
- name: xci-provision-builder
builders:
- - shell:
- !include-raw: ./xci-provision.sh
+ - description-setter:
+ description: "Built on $NODE_NAME - Scenario: $DEPLOY_SCENARIO"
+ - 'xci-{phase}-builder'
+
+# --------------------------
+# builder macros
+# --------------------------
- builder:
name: xci-deploy-builder
builders:
- - shell:
- !include-raw: ./xci-deploy.sh
+ - shell:
+ !include-raw: ./xci-deploy.sh
+
- builder:
name: xci-functest-builder
builders:
- - shell:
- !include-raw: ./xci-functest.sh
+ - shell: |
+ #!/bin/bash
+
+ 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