add dvsm CI job
This change adds devstack CI job to the sushy-tools library. The job should stand up the libvirt-based Redfish emulator and run Ironic conductor against it. Depends-On: I548f5a19a266436edbb874ea14af67db711240be Change-Id: I5590bb214f25b86e4dcc970c7bedced09f80fd9a
This commit is contained in:
parent
ec39c99fa1
commit
5fa6a96285
@ -0,0 +1,15 @@
|
||||
- hosts: primary
|
||||
tasks:
|
||||
|
||||
- name: Copy files from {{ ansible_user_dir }}/workspace/ on node
|
||||
synchronize:
|
||||
src: '{{ ansible_user_dir }}/workspace/'
|
||||
dest: '{{ zuul.executor.log_root }}'
|
||||
mode: pull
|
||||
copy_links: true
|
||||
verify_host: true
|
||||
rsync_opts:
|
||||
- --include=/logs/**
|
||||
- --include=*/
|
||||
- --exclude=*
|
||||
- --prune-empty-dirs
|
@ -0,0 +1,139 @@
|
||||
- hosts: all
|
||||
name: Autoconverted job legacy-tempest-dsvm-ironic-ipa-partition-redfish-sushy-src
|
||||
from old job gate-tempest-dsvm-ironic-ipa-partition-redfish-sushy-src-ubuntu-xenial
|
||||
tasks:
|
||||
|
||||
- name: Ensure legacy workspace directory
|
||||
file:
|
||||
path: '{{ ansible_user_dir }}/workspace'
|
||||
state: directory
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
set -e
|
||||
set -x
|
||||
cat > clonemap.yaml << EOF
|
||||
clonemap:
|
||||
- name: openstack-infra/devstack-gate
|
||||
dest: devstack-gate
|
||||
EOF
|
||||
/usr/zuul-env/bin/zuul-cloner -m clonemap.yaml --cache-dir /opt/git \
|
||||
git://git.openstack.org \
|
||||
openstack-infra/devstack-gate
|
||||
executable: /bin/bash
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
cat << 'EOF' >> ironic-extra-vars
|
||||
export DEVSTACK_PROJECT_FROM_GIT="sushy-tools,$DEVSTACK_PROJECT_FROM_GIT"
|
||||
|
||||
EOF
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
cat << 'EOF' >> ironic-extra-vars
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_DEPLOY_DRIVER_ISCSI_WITH_IPA=True"
|
||||
# Standardize VM size for each supported ramdisk
|
||||
case "tinyipa" in
|
||||
'tinyipa')
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_SPECS_RAM=384"
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_RAMDISK_TYPE=tinyipa"
|
||||
;;
|
||||
'tinyipa256')
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_SPECS_RAM=256"
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_RAMDISK_TYPE=tinyipa"
|
||||
;;
|
||||
'coreos')
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_SPECS_RAM=1280"
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_RAMDISK_TYPE=coreos"
|
||||
;;
|
||||
# if using a ramdisk without a known good value, use the devstack
|
||||
# default by not exporting any value for IRONIC_VM_SPECS_RAM
|
||||
esac
|
||||
|
||||
EOF
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
cat << 'EOF' >> ironic-extra-vars
|
||||
export DEVSTACK_GATE_TEMPEST_REGEX="ironic"
|
||||
|
||||
EOF
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
cat << 'EOF' >> ironic-vars-early
|
||||
# use tempest plugin
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"TEMPEST_PLUGINS+=' /opt/stack/new/ironic-tempest-plugin'"
|
||||
export TEMPEST_CONCURRENCY=1
|
||||
|
||||
EOF
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
||||
|
||||
- shell:
|
||||
cmd: |
|
||||
set -e
|
||||
set -x
|
||||
export PROJECTS="openstack/ironic $PROJECTS"
|
||||
export PROJECTS="openstack/ironic-lib $PROJECTS"
|
||||
export PROJECTS="openstack/ironic-python-agent $PROJECTS"
|
||||
export PROJECTS="openstack/ironic-tempest-plugin $PROJECTS"
|
||||
export PROJECTS="openstack/python-ironicclient $PROJECTS"
|
||||
export PROJECTS="openstack/pyghmi $PROJECTS"
|
||||
export PROJECTS="openstack/virtualbmc $PROJECTS"
|
||||
export PROJECTS="openstack/sushy-tools $PROJECTS"
|
||||
export PYTHONUNBUFFERED=true
|
||||
export DEVSTACK_GATE_TEMPEST=1
|
||||
export DEVSTACK_GATE_IRONIC=1
|
||||
export DEVSTACK_GATE_NEUTRON=1
|
||||
export DEVSTACK_GATE_VIRT_DRIVER=ironic
|
||||
export DEVSTACK_GATE_CONFIGDRIVE=1
|
||||
export DEVSTACK_GATE_IRONIC_DRIVER=redfish
|
||||
export BRANCH_OVERRIDE=default
|
||||
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
||||
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
||||
fi
|
||||
|
||||
if [[ ! "stable/newton stable/ocata stable/pike" =~ $ZUUL_BRANCH ]] ; then
|
||||
export DEVSTACK_GATE_TLSPROXY=1
|
||||
fi
|
||||
|
||||
# When deploying with redfish we need to enable the "redfish"
|
||||
# hardware type
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_ENABLED_HARDWARE_TYPES=redfish"
|
||||
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_TEMPEST_WHOLE_DISK_IMAGE=False"
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_EPHEMERAL_DISK=1"
|
||||
|
||||
export DEVSTACK_GATE_IRONIC_BUILD_RAMDISK=0
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_BUILD_RAMDISK=False"
|
||||
|
||||
export DEVSTACK_PROJECT_FROM_GIT=""
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_COUNT=1"
|
||||
|
||||
# Ensure the ironic-vars-EARLY file exists
|
||||
touch ironic-vars-early
|
||||
# Pull in the EARLY variables injected by the optional builders
|
||||
source ironic-vars-early
|
||||
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ironic git://git.openstack.org/openstack/ironic"
|
||||
|
||||
# Ensure the ironic-EXTRA-vars file exists
|
||||
touch ironic-extra-vars
|
||||
# Pull in the EXTRA variables injected by the optional builders
|
||||
source ironic-extra-vars
|
||||
|
||||
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
||||
./safe-devstack-vm-gate-wrap.sh
|
||||
executable: /bin/bash
|
||||
chdir: '{{ ansible_user_dir }}/workspace'
|
||||
environment: '{{ zuul | zuul_legacy_vars }}'
|
24
zuul.d/legacy-sushy-tools-jobs.yaml
Normal file
24
zuul.d/legacy-sushy-tools-jobs.yaml
Normal file
@ -0,0 +1,24 @@
|
||||
- job:
|
||||
name: sushy-tools-tempest-dsvm-ironic-ipa-partition-redfish-src
|
||||
parent: legacy-dsvm-base
|
||||
irrelevant-files:
|
||||
- ^test-requirements.txt$
|
||||
- ^.*\.rst$
|
||||
- ^doc/.*$
|
||||
- ^releasenotes/.*$
|
||||
- ^setup.cfg$
|
||||
- ^sushy_tools/tests/.*$
|
||||
- ^tox.ini$
|
||||
required-projects:
|
||||
- openstack-infra/devstack-gate
|
||||
- openstack/ironic
|
||||
- openstack/ironic-lib
|
||||
- openstack/ironic-python-agent
|
||||
- openstack/ironic-tempest-plugin
|
||||
- openstack/pyghmi
|
||||
- openstack/python-ironicclient
|
||||
- openstack/tempest
|
||||
- openstack/virtualbmc
|
||||
run: playbooks/legacy/sushy-tools-tempest-dsvm-ironic-ipa-partition-redfish-src/run.yaml
|
||||
post-run: playbooks/legacy/sushy-tools-tempest-dsvm-ironic-ipa-partition-redfish-src/post.yaml
|
||||
timeout: 5400
|
10
zuul.d/project.yaml
Normal file
10
zuul.d/project.yaml
Normal file
@ -0,0 +1,10 @@
|
||||
- project:
|
||||
name: openstack/sushy-tools
|
||||
check:
|
||||
jobs:
|
||||
- sushy-tools-tempest-dsvm-ironic-ipa-partition-redfish-src
|
||||
- build-openstack-sphinx-docs
|
||||
gate:
|
||||
jobs:
|
||||
- sushy-tools-tempest-dsvm-ironic-ipa-partition-redfish-src
|
||||
- build-openstack-sphinx-docs
|
Loading…
x
Reference in New Issue
Block a user