819eea3824
Ironic had done some work for their Xenial transition. This finishes it up and cleans things up. Use -{node} more aggressively in jobs so that we can reduce the number of regex rules we have in the zuul jobs list. But also this makes all the jobs consistent making it easier to tell where things have transitions and where they may not have. Additionally remove unnecessary branch restrictions because projects only have a master branch. Change-Id: I5c327f5307aafa0c5504e9d3a072cb0b17e07580
1192 lines
40 KiB
YAML
1192 lines
40 KiB
YAML
- builder:
|
|
name: ironic-extra-vars
|
|
builders:
|
|
- shell: |
|
|
cat << 'EOF' >> ironic-extra-vars
|
|
{script}
|
|
EOF
|
|
|
|
- builder:
|
|
name: ironic-vars-early
|
|
builders:
|
|
- shell: |
|
|
cat << 'EOF' >> ironic-vars-early
|
|
{script}
|
|
EOF
|
|
|
|
- builder:
|
|
name: ironic-grenade
|
|
builders:
|
|
- ironic-vars-early:
|
|
script: |
|
|
# NOTE(jlvillal): export not needed for this as used within devstack-virtual-ironic
|
|
# We disable the devstack plugin because the grenade code in Ironic
|
|
# enables it and enabling it twice causes errors.
|
|
IRONIC_DISABLE_DEVSTACK_PLUGIN=1
|
|
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export PROJECTS="openstack-dev/grenade $PROJECTS"
|
|
export DEVSTACK_GATE_GRENADE=pullup
|
|
export DEVSTACK_GATE_OS_TEST_TIMEOUT=2400
|
|
export DEVSTACK_GATE_TEMPEST_BAREMETAL_BUILD_TIMEOUT=1200
|
|
export GRENADE_PLUGINRC="enable_grenade_plugin ironic https://git.openstack.org/openstack/ironic"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_BUILD_DEPLOY_RAMDISK=False"
|
|
|
|
- builder:
|
|
name: ironic-client-from-source
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_PROJECT_FROM_GIT="python-ironicclient,$DEVSTACK_PROJECT_FROM_GIT"
|
|
|
|
- builder:
|
|
name: ironic-lib-from-source
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_PROJECT_FROM_GIT="ironic-lib,$DEVSTACK_PROJECT_FROM_GIT"
|
|
|
|
- builder:
|
|
name: ironic-pygmi-from-source
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_PROJECT_FROM_GIT="pyghmi,$DEVSTACK_PROJECT_FROM_GIT"
|
|
|
|
- builder:
|
|
name: ironic-virtualbmc-from-source
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_PROJECT_FROM_GIT="virtualbmc,$DEVSTACK_PROJECT_FROM_GIT"
|
|
|
|
- builder:
|
|
name: ironic-deploy-with-IPA
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_DEPLOY_DRIVER_ISCSI_WITH_IPA=True"
|
|
# Support for non-CoreOS IPA ramdisks was added in Mitaka
|
|
if [ "$ZUUL_BRANCH" != "stable/liberty" ] ; then
|
|
# Standardize VM size for each supported ramdisk
|
|
case "{ramdisk-type}" 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
|
|
else
|
|
# For kilo and liberty, we still need 1280mb of ram as
|
|
# we only have the CoreOS ramdisk.
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_SPECS_RAM=1280"
|
|
fi
|
|
|
|
- builder:
|
|
name: ironic-ipxe-disabled
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_IPXE_ENABLED=False"
|
|
|
|
- builder:
|
|
name: ironic-tempest-full
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_GATE_TEMPEST_FULL=1
|
|
|
|
- builder:
|
|
name: ironic-tempest-regex
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_GATE_TEMPEST_REGEX="{tempest-regex}"
|
|
|
|
- builder:
|
|
name: ironic-multitenant
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_GATE_OS_TEST_TIMEOUT=2400
|
|
# networking-generic-switch requires sudo to execute ovs-vsctl commands
|
|
export DEVSTACK_GATE_REMOVE_STACK_SUDO=0
|
|
export PROJECTS="openstack/networking-generic-switch $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin networking-generic-switch git://git.openstack.org/openstack/networking-generic-switch"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"Q_PLUGIN_EXTRA_CONF_PATH=/etc/neutron/plugins/ml2"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"Q_PLUGIN_EXTRA_CONF_FILES['networking-generic-switch']=ml2_conf_genericswitch.ini"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_USE_LINK_LOCAL=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"OVS_PHYSICAL_BRIDGE=brbm"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"PHYSICAL_NETWORK=mynetwork"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_PROVISION_NETWORK_NAME=ironic-provision"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_PROVISION_SUBNET_PREFIX=10.0.5.0/24"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_PROVISION_SUBNET_GATEWAY=10.0.5.1"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"Q_PLUGIN=ml2"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"Q_USE_PROVIDERNET_FOR_PUBLIC=False"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"ENABLE_TENANT_VLANS=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"Q_ML2_TENANT_NETWORK_TYPE=vlan"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"TENANT_VLAN_RANGE=100:150"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_ENABLED_NETWORK_INTERFACES=flat,neutron"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_NETWORK_INTERFACE=neutron"
|
|
export DEVSTACK_GATE_TEMPEST_REGEX=baremetal_multitenancy
|
|
|
|
- builder:
|
|
name: ironic-multinode
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_GATE_TOPOLOGY="multinode"
|
|
|
|
- builder:
|
|
name: ironic-inspector-enabled
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export PROJECTS="openstack/ironic-inspector $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ironic-inspector git://git.openstack.org/openstack/ironic-inspector"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"TEMPEST_PLUGINS+=' /opt/stack/new/ironic-inspector'"
|
|
|
|
export IRONIC_INSPECTOR_AUTO_DISCOVERY={inspector-auto-discovery}
|
|
if [ "$IRONIC_INSPECTOR_AUTO_DISCOVERY" == "1" ]; then
|
|
# discovery test requires sudo for iptables and virsh
|
|
export DEVSTACK_GATE_REMOVE_STACK_SUDO=0
|
|
# enable enroll hook
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_NODE_NOT_FOUND_HOOK=enroll"
|
|
# we are deleting node from ironic for simulate node discovery,
|
|
# so inspector has to sync cache asap
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_CLEAN_UP_PERIOD=5"
|
|
fi
|
|
|
|
- builder:
|
|
name: ironic-inspector-client-from-source
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export PROJECTS="openstack/python-ironic-inspector-client $PROJECTS"
|
|
export DEVSTACK_PROJECT_FROM_GIT="python-ironic-inspector-client,$DEVSTACK_PROJECT_FROM_GIT"
|
|
|
|
- builder:
|
|
name: ironic-postgres-enabled
|
|
builders:
|
|
- ironic-extra-vars:
|
|
script: |
|
|
export DEVSTACK_GATE_POSTGRES=1
|
|
|
|
- builder:
|
|
# NOTE(adam_g): This is a temporary macro until we can define the Ironic d-s-g job in a
|
|
# standard, minimal fashion.
|
|
name: devstack-virtual-ironic
|
|
builders:
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PROJECTS="openstack/ironic $PROJECTS"
|
|
export PROJECTS="openstack/ironic-lib $PROJECTS"
|
|
export PROJECTS="openstack/ironic-python-agent $PROJECTS"
|
|
export PROJECTS="openstack/python-ironicclient $PROJECTS"
|
|
export PROJECTS="openstack/pyghmi $PROJECTS"
|
|
export PROJECTS="openstack/virtualbmc $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={deploy_driver}
|
|
export TEMPEST_CONCURRENCY=1
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
|
|
if [ "{image-type}" == "wholedisk" ] ; then
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_TEMPEST_WHOLE_DISK_IMAGE=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_EPHEMERAL_DISK=0"
|
|
else
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_TEMPEST_WHOLE_DISK_IMAGE=False"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_EPHEMERAL_DISK=1"
|
|
fi
|
|
|
|
if [ -n "{build-ramdisk}" ] ; then
|
|
export DEVSTACK_GATE_IRONIC_BUILD_RAMDISK=1
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_BUILD_RAMDISK=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"USE_SUBNETPOOL=False"
|
|
else
|
|
export DEVSTACK_GATE_IRONIC_BUILD_RAMDISK=0
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_BUILD_RAMDISK=False"
|
|
fi
|
|
|
|
export DEVSTACK_PROJECT_FROM_GIT=""
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_COUNT={bm-vm-count}"
|
|
|
|
# use tempest plugin
|
|
if [[ "$ZUUL_BRANCH" != "master" ]] ; then
|
|
# NOTE(jroll) if this isn't a patch against master, then
|
|
# fetch master to install the plugin
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"TEMPEST_PLUGINS=git+git://git.openstack.org/openstack/ironic"
|
|
else
|
|
# on master, use the local change, so we can pick up any changes to the plugin
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"TEMPEST_PLUGINS=/opt/stack/new/ironic"
|
|
fi
|
|
|
|
# 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
|
|
|
|
# devstack plugin didn't exist until mitaka
|
|
if [[ -z "$IRONIC_DISABLE_DEVSTACK_PLUGIN" && "$ZUUL_BRANCH" != "stable/liberty" ]] ; then
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ironic git://git.openstack.org/openstack/ironic"
|
|
fi
|
|
|
|
# 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
|
|
|
|
- job-template:
|
|
name: '{pipeline}-ironic-dsvm-functional-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 80
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
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 TEMPEST_CONCURRENCY=2
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
# tempest-lib support was added in Mitaka. Fall back to tempest for other stable branches.
|
|
if [ "$ZUUL_BRANCH" == "stable/liberty" ] ; then
|
|
export DEVSTACK_GATE_TEMPEST_REGEX='baremetal'
|
|
else
|
|
export DEVSTACK_GATE_TEMPEST_ALL_PLUGINS=1
|
|
export DEVSTACK_GATE_TEMPEST_REGEX='ironic'
|
|
fi
|
|
export PROJECTS="openstack/ironic $PROJECTS"
|
|
export PROJECTS="openstack/ironic-python-agent $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic"
|
|
|
|
# No post_test_hook is needed while tests live in tempest
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-ironicclient-dsvm-functional-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 80
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=0
|
|
export DEVSTACK_PROJECT_FROM_GIT=python-ironicclient
|
|
export OVERRIDE_ENABLED_SERVICES=key,mysql,rabbit,ir-api,ir-cond
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
export PROJECTS="openstack/ironic openstack/python-ironicclient $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic"
|
|
|
|
function post_test_hook {{
|
|
# Configure and run functional tests
|
|
$BASE/new/python-ironicclient/ironicclient/tests/functional/hooks/post_test_hook.sh
|
|
}}
|
|
|
|
export -f post_test_hook
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-ironic-inspector-dsvm-{ramdisk}-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 80
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=0
|
|
export DEVSTACK_GATE_IRONIC=1
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_VIRT_DRIVER=ironic
|
|
export DEVSTACK_GATE_CONFIGDRIVE=1
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
|
|
export PROJECTS="openstack/ironic openstack/ironic-inspector $PROJECTS"
|
|
# devstack plugin didn't exist until mitaka
|
|
if [[ "$ZUUL_BRANCH" != "stable/liberty" ]] ; then
|
|
export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic"
|
|
else
|
|
export DEVSTACK_LOCAL_CONFIG=""
|
|
fi
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ironic-inspector https://git.openstack.org/openstack/ironic-inspector"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_AUTOMATED_CLEAN_ENABLED=False"
|
|
|
|
if [ "{ramdisk}" != "dib" ] ; then
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_DEPLOY_DRIVER_ISCSI_WITH_IPA=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_RAMDISK_ELEMENT=ironic-agent"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_BUILD_DEPLOY_RAMDISK=False"
|
|
# IPA requires at least 1 GiB of RAM
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_SPECS_RAM=1024"$'\n'"IRONIC_VM_COUNT=1"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_IPXE_ENABLED=True"
|
|
if [ "{ramdisk}" == "ipa-src" ] ; then
|
|
export PROJECTS="openstack/ironic-python-agent $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_BUILD_RAMDISK=True"
|
|
fi
|
|
fi
|
|
|
|
function post_test_hook {{
|
|
source $BASE/new/devstack/openrc admin admin
|
|
cd /opt/stack/new/ironic-inspector
|
|
sudo -E -u stack ./devstack/exercise.sh
|
|
}}
|
|
export -f post_test_hook
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-ironic-inspector-dsvm-discovery-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 80
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=0
|
|
export DEVSTACK_GATE_IRONIC=1
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_VIRT_DRIVER=ironic
|
|
export DEVSTACK_GATE_CONFIGDRIVE=1
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
|
|
export PROJECTS="openstack/ironic openstack/ironic-inspector $PROJECTS"
|
|
export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ironic-inspector https://git.openstack.org/openstack/ironic-inspector"
|
|
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_AUTOMATED_CLEAN_ENABLED=False"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_DEPLOY_DRIVER_ISCSI_WITH_IPA=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_RAMDISK_ELEMENT=ironic-agent"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_BUILD_DEPLOY_RAMDISK=False"
|
|
# IPA requires at least 1 GiB of RAM
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_SPECS_RAM=1024"$'\n'"IRONIC_VM_COUNT=1"
|
|
# enable enroll hook
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_NODE_NOT_FOUND_HOOK=enroll"
|
|
# discovery_exercise.sh requires iptables and virsh direct access
|
|
export DEVSTACK_GATE_REMOVE_STACK_SUDO=0
|
|
|
|
function post_test_hook {{
|
|
source $BASE/new/devstack/openrc admin admin
|
|
cd /opt/stack/new/ironic-inspector
|
|
sudo -E -u stack ./devstack/discovery_exercise.sh
|
|
}}
|
|
export -f post_test_hook
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-python-ironic-inspector-client-dsvm-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 80
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=0
|
|
export DEVSTACK_GATE_IRONIC=1
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_VIRT_DRIVER=ironic
|
|
export DEVSTACK_GATE_CONFIGDRIVE=1
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
export DEVSTACK_PROJECT_FROM_GIT="python-ironic-inspector-client"
|
|
|
|
export PROJECTS="openstack/ironic openstack/python-ironic-inspector-client openstack/ironic-inspector $PROJECTS"
|
|
# devstack plugin didn't exist until mitaka
|
|
if [[ "$ZUUL_BRANCH" != "stable/liberty" ]] ; then
|
|
export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic"
|
|
else
|
|
export DEVSTACK_LOCAL_CONFIG=""
|
|
fi
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ironic-inspector https://git.openstack.org/openstack/ironic-inspector"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_AUTOMATED_CLEAN_ENABLED=False"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_DEPLOY_DRIVER_ISCSI_WITH_IPA=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_RAMDISK_ELEMENT=ironic-agent"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_BUILD_DEPLOY_RAMDISK=False"
|
|
# IPA requires at least 1 GiB of RAM
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_VM_SPECS_RAM=1024"$'\n'"IRONIC_VM_COUNT=1"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_IPXE_ENABLED=True"
|
|
|
|
function post_test_hook {{
|
|
source $BASE/new/devstack/openrc admin admin
|
|
cd /opt/stack/new/ironic-inspector
|
|
sudo -E -u stack ./devstack/exercise.sh
|
|
}}
|
|
export -f post_test_hook
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-ironic-staging-drivers-dsvm-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 80
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_IRONIC=1
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_VIRT_DRIVER=ironic
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
export PROJECTS="openstack/ironic $PROJECTS"
|
|
export PROJECTS="openstack/ironic-staging-drivers $PROJECTS"
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ironic-staging-drivers git://git.openstack.org/openstack/ironic-staging-drivers"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_BUILD_DEPLOY_RAMDISK=False"
|
|
|
|
# No post_test_hook is needed while tests live in tempest
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-pxe_ssh-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-ipxe-disabled
|
|
- ironic-tempest-regex:
|
|
tempest-regex: ironic
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: 'yes'
|
|
deploy_driver: pxe_ssh
|
|
image-type: partition
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-ipa-{image-type}-{driver}-{ramdisk-type}{src}-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 75
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: '{ramdisk-type}'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: ironic
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: '{src}'
|
|
deploy_driver: '{driver}'
|
|
image-type: '{image-type}'
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-lib-{image-type}-{driver}-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 75
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: ironic
|
|
- ironic-lib-from-source
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: '{driver}'
|
|
image-type: '{image-type}'
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-ipa-{image-type}-{driver}-{ramdisk-type}{src}-multinode-{node-release}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: '{ramdisk-type}'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: ironic
|
|
- ironic-multinode
|
|
- ironic-multitenant
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: '{src}'
|
|
deploy_driver: '{driver}'
|
|
image-type: '{image-type}'
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 3
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-pxe_ipa-full-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 160
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- ironic-tempest-full
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: pxe_ssh
|
|
image-type: partition
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 7
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-{driver}-postgres-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: ironic
|
|
- ironic-postgres-enabled
|
|
- ironic-ipxe-disabled
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: '{driver}'
|
|
image-type: partition
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-parallel-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PROJECTS="openstack/ironic $PROJECTS"
|
|
export PROJECTS="openstack/ironic-lib $PROJECTS"
|
|
export PROJECTS="openstack/ironic-python-agent $PROJECTS"
|
|
export PROJECTS="openstack/python-ironicclient $PROJECTS"
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
# NOTE(deva): tempest-lib support was added in Mitaka
|
|
# but this job doesn't run on stable branches, so we can keep it simple here
|
|
export DEVSTACK_GATE_TEMPEST_ALL_PLUGINS=1
|
|
export DEVSTACK_GATE_IRONIC=1
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_VIRT_DRIVER=ironic
|
|
export DEVSTACK_GATE_CONFIGDRIVE=1
|
|
export TEMPEST_CONCURRENCY=2
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
# Run only baremetal tests
|
|
export DEVSTACK_GATE_TEMPEST_REGEX='ironic'
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-pxe_ipmitool-pyghmi-src-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'coreos'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: ironic
|
|
- ironic-pygmi-from-source
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: pxe_ipmitool
|
|
image-type: partition
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-pxe_ipmitool-virtualbmc-src-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: ironic
|
|
- ironic-virtualbmc-from-source
|
|
- ironic-pygmi-from-source
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: pxe_ipmitool
|
|
image-type: partition
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-python-ironicclient-src-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: ironic
|
|
- ironic-client-from-source
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: pxe_ssh
|
|
image-type: partition
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-multitenant-network-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: ironic
|
|
- ironic-multitenant
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: agent_ssh
|
|
image-type: wholedisk
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 3
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-inspector{src}-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: InspectorBasicTest
|
|
- ironic-inspector-enabled:
|
|
inspector-auto-discovery: 0
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: '{src}'
|
|
deploy_driver: agent_ssh
|
|
image-type: wholedisk
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-python-ironic-inspector-client-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: InspectorSmokeTest
|
|
- ironic-inspector-enabled:
|
|
inspector-auto-discovery: 0
|
|
- ironic-inspector-client-from-source
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: agent_ssh
|
|
image-type: wholedisk
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-tempest-dsvm-ironic-inspector-discovery-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- ironic-tempest-regex:
|
|
tempest-regex: InspectorDiscoveryTest
|
|
- ironic-inspector-enabled:
|
|
inspector-auto-discovery: 1
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: agent_ssh
|
|
image-type: wholedisk
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 1
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-grenade-dsvm-ironic-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PROJECTS="openstack/ironic $PROJECTS"
|
|
export PROJECTS="openstack/ironic-lib $PROJECTS"
|
|
export PROJECTS="openstack/ironic-python-agent $PROJECTS"
|
|
export PROJECTS="openstack/python-ironicclient $PROJECTS"
|
|
export PROJECTS="openstack-dev/grenade $PROJECTS"
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_GRENADE=pullup
|
|
export DEVSTACK_GATE_IRONIC=1
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_VIRT_DRIVER=ironic
|
|
export DEVSTACK_GATE_CONFIGDRIVE=1
|
|
export TEMPEST_CONCURRENCY=1
|
|
export DEVSTACK_GATE_OS_TEST_TIMEOUT=2400
|
|
export DEVSTACK_GATE_TEMPEST_BAREMETAL_BUILD_TIMEOUT=1200
|
|
export DEVSTACK_GATE_IRONIC_BUILD_RAMDISK=0
|
|
export DEVSTACK_LOCAL_CONFIG="IRONIC_VM_SPECS_RAM=384"$'\n'"IRONIC_VM_COUNT=7"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_DEPLOY_DRIVER_ISCSI_WITH_IPA=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_RAMDISK_TYPE=tinyipa"
|
|
# Make IPXE configuration consistent between Mitaka and Master
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_IPXE_ENABLED=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_BUILD_DEPLOY_RAMDISK=False"
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
export GRENADE_PLUGINRC="enable_grenade_plugin ironic https://git.openstack.org/openstack/ironic"
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-grenade-dsvm-ironic-multitenant-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- ironic-grenade
|
|
- ironic-multitenant
|
|
- ironic-deploy-with-IPA:
|
|
ramdisk-type: 'tinyipa'
|
|
- devstack-virtual-ironic:
|
|
build-ramdisk: ''
|
|
deploy_driver: pxe_ssh
|
|
image-type: partition
|
|
branch-override: '{branch-override}'
|
|
bm-vm-count: 7
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-grenade-dsvm-ironic-inspector-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- print-template-name:
|
|
template-name: "{template-name}"
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PROJECTS="openstack/ironic $PROJECTS"
|
|
export PROJECTS="openstack/ironic-lib $PROJECTS"
|
|
export PROJECTS="openstack/ironic-python-agent $PROJECTS"
|
|
export PROJECTS="openstack/python-ironicclient $PROJECTS"
|
|
export PROJECTS="openstack/ironic-inspector $PROJECTS"
|
|
export PROJECTS="openstack/python-ironic-inspector-client $PROJECTS"
|
|
export PROJECTS="openstack-dev/grenade $PROJECTS"
|
|
export PYTHONUNBUFFERED=true
|
|
export DEVSTACK_GATE_TEMPEST=1
|
|
export DEVSTACK_GATE_GRENADE=pullup
|
|
export DEVSTACK_GATE_IRONIC=1
|
|
export DEVSTACK_GATE_NEUTRON=1
|
|
export DEVSTACK_GATE_VIRT_DRIVER=ironic
|
|
export DEVSTACK_GATE_CONFIGDRIVE=1
|
|
export TEMPEST_CONCURRENCY=1
|
|
export DEVSTACK_GATE_OS_TEST_TIMEOUT=2400
|
|
export DEVSTACK_GATE_TEMPEST_BAREMETAL_BUILD_TIMEOUT=1200
|
|
export DEVSTACK_LOCAL_CONFIG="IRONIC_VM_SPECS_RAM=384"$'\n'"IRONIC_VM_COUNT=7"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_DEPLOY_DRIVER_ISCSI_WITH_IPA=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_RAMDISK_TYPE=tinyipa"
|
|
# Make IPXE configuration consistent between Mitaka and Master
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_IPXE_ENABLED=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_RAMDISK_ELEMENT=ironic-agent"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_MANAGE_FIREWALL=True"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_BUILD_DEPLOY_RAMDISK=False"
|
|
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_INSPECTOR_BUILD_RAMDISK=False"
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
export GRENADE_PLUGINRC+=$'\n'"enable_grenade_plugin ironic https://git.openstack.org/openstack/ironic"
|
|
export GRENADE_PLUGINRC+=$'\n'"enable_grenade_plugin ironic-inspector https://git.openstack.org/openstack/ironic-inspector"
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|
|
|
|
- job-template:
|
|
name: '{pipeline}-ironic-dsvm-multitest-{node}{job-suffix}'
|
|
node: '{node}'
|
|
|
|
wrappers:
|
|
- build-timeout:
|
|
timeout: 180
|
|
- timestamps
|
|
|
|
builders:
|
|
- link-logs
|
|
- net-info
|
|
- devstack-checkout
|
|
- shell: |
|
|
#!/bin/bash -xe
|
|
export PROJECTS="openstack/ironic $PROJECTS"
|
|
export PROJECTS="openstack/ironic-lib $PROJECTS"
|
|
export PROJECTS="openstack/ironic-python-agent $PROJECTS"
|
|
export PROJECTS="openstack/python-ironicclient $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_BUILD_RAMDISK=0
|
|
export DEVSTACK_GATE_IRONIC_DRIVER=agent_ssh
|
|
# The tests will be launched by devstack/exercise.sh
|
|
export DEVSTACK_GATE_TEMPEST_NOTESTS=1
|
|
export DEVSTACK_GATE_REMOVE_STACK_SUDO=0
|
|
export BRANCH_OVERRIDE={branch-override}
|
|
if [ "$BRANCH_OVERRIDE" != "default" ] ; then
|
|
export OVERRIDE_ZUUL_BRANCH=$BRANCH_OVERRIDE
|
|
fi
|
|
|
|
export DEVSTACK_LOCAL_CONFIG="enable_plugin ironic git://git.openstack.org/openstack/ironic"
|
|
|
|
function post_test_hook {{
|
|
source $BASE/new/devstack/openrc admin admin
|
|
cd /opt/stack/new/ironic
|
|
sudo -E -u stack ./devstack/exercise.sh
|
|
}}
|
|
export -f post_test_hook
|
|
|
|
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
|
./safe-devstack-vm-gate-wrap.sh
|
|
|
|
publishers:
|
|
- devstack-logs
|
|
- console-log
|