ironic/zuul.d/ironic-jobs.yaml
Sam Betts bd82ead580 Direct deploy serve HTTP images from conductor
Currently direct deploy only works if temp urls are enabled or if a
HTTP image URL is given. This patch enables Ironic to serve images
directly from the conductor's HTTP server to the agent so that we can
enable agent deploy with out temp urls.

This also has the added benefit for standalone that the conductors will
cache the HTTP URL images and serve them into the provisioning network
meaning the provisioning network has no need for connectivity to the
outside world.

Story: #1598852
Task: #24639
Co-Authored-By: Kaifeng Wang <kaifeng.w@gmail.com>
Change-Id: Iae6798616f29d876b274d9e0b44a1eb0f24e1747
2018-09-07 17:06:35 +08:00

269 lines
7.7 KiB
YAML

- job:
name: ironic-base
description: Base job for devstack/tempest based ironic jobs.
parent: devstack-tempest
timeout: 10800
required-projects:
- openstack/ironic
- openstack/ironic-python-agent
- openstack/ironic-tempest-plugin
- openstack/pyghmi
- openstack/virtualbmc
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^driver-requirements.txt$
- ^install-guide/.*$
- ^ironic/locale/.*$
- ^ironic/tests/.*$
- ^releasenotes/.*$
- ^setup.cfg$
- ^tools/.*$
- ^tox.ini$
vars:
tox_envlist: all
tempest_test_regex: ironic_tempest_plugin.tests.scenario
tempest_concurrency: 1
devstack_localrc:
DEFAULT_INSTANCE_TYPE: baremetal
FORCE_CONFIG_DRIVE: True
INSTALL_TEMPEST: False # Don't install a tempest package globaly
OVERRIDE_PUBLIC_BRIDGE_MTU: 1400
TEMPEST_PLUGINS: "'{{ ansible_user_dir }}/src/git.openstack.org/openstack/ironic-tempest-plugin'"
VIRT_DRIVER: ironic
BUILD_TIMEOUT: 600
IRONIC_BAREMETAL_BASIC_OPS: True
IRONIC_BUILD_DEPLOY_RAMDISK: False
IRONIC_CALLBACK_TIMEOUT: 600
IRONIC_DEPLOY_DRIVER: ipmi
IRONIC_INSPECTOR_BUILD_RAMDISK: False
IRONIC_RAMDISK_TYPE: tinyipa
IRONIC_TEMPEST_BUILD_TIMEOUT: 600
IRONIC_TEMPEST_WHOLE_DISK_IMAGE: False
IRONIC_VM_COUNT: 1
IRONIC_VM_EPHEMERAL_DISK: 1
IRONIC_VM_LOG_DIR: '{{ devstack_base_dir }}/ironic-bm-logs'
IRONIC_VM_SPECS_RAM: 384
IRONIC_DEFAULT_DEPLOY_INTERFACE: iscsi
IRONIC_DEFAULT_RESCUE_INTERFACE: agent
Q_AGENT: openvswitch
Q_ML2_TENANT_NETWORK_TYPE: vxlan
SWIFT_ENABLE_TEMPURLS: True
SWIFT_TEMPURL_KEY: secretkey
devstack_plugins:
ironic: git://git.openstack.org/openstack/ironic
zuul_copy_output:
'{{ devstack_base_dir }}/ironic-bm-logs': 'logs'
devstack_services:
c-api: False
c-bak: False
c-sch: False
c-vol: False
cinder: False
s-account: False
s-container: False
s-object: False
s-proxy: False
dstat: True
g-api: True
g-reg: True
key: True
mysql: True
n-api: True
n-api-meta: True
n-cauth: True
n-cond: True
n-cpu: True
n-novnc: True
n-obj: True
n-sch: True
placement-api: True
q-agt: False
q-dhcp: False
q-l3: False
q-meta: False
q-metering: False
q-svc: False
neutron-api: True
neutron-agent: True
neutron-dhcp: True
neutron-l3: True
neutron-metadata-agent: True
neutron-metering: True
rabbit: True
- job:
name: ironic-dsvm-standalone
description: Test ironic standalone
parent: ironic-base
irrelevant-files:
- ^.*\.rst$
- ^api-ref/.*$
- ^doc/.*$
- ^install-guide/.*$
- ^ironic/locale/.*$
- ^ironic/tests/.*$
- ^releasenotes/.*$
- ^setup.cfg$
- ^test-requirements.txt$
- ^tools/.*$
- ^tox.ini$
vars:
tempest_test_regex: ironic_standalone
tempest_concurrency: 4
devstack_localrc:
FORCE_CONFIG_DRIVE: False
IRONIC_AUTOMATED_CLEAN_ENABLED: False
IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
IRONIC_ENABLED_DEPLOY_INTERFACES: "iscsi,direct,ansible"
IRONIC_VM_COUNT: 6
devstack_services:
n-api: False
n-api-meta: False
n-cauth: False
n-cond: False
n-cpu: False
n-novnc: False
n-obj: False
n-sch: False
nova: False
placement-api: False
s-account: True
s-container: True
s-object: True
s-proxy: True
- job:
name: ironic-tempest-dsvm-ipa-partition-redfish-tinyipa
description: ironic-tempest-dsvm-ipa-partition-redfish-tinyipa
parent: ironic-base
timeout: 5400
vars:
devstack_localrc:
IRONIC_DEPLOY_DRIVER: redfish
IRONIC_ENABLED_HARDWARE_TYPES: redfish
- job:
name: ironic-tempest-dsvm-pxe_ipmitool-postgres
description: ironic-tempest-dsvm-pxe_ipmitool-postgres
parent: ironic-base
vars:
devstack_localrc:
IRONIC_IPXE_ENABLED: False
devstack_services:
mysql: False
postgresql: True
- job:
name: ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa
description: ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa
parent: ironic-base
timeout: 5400
vars:
devstack_localrc:
IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
IRONIC_VM_EPHEMERAL_DISK: 0
devstack_services:
s-account: True
s-container: True
s-object: True
s-proxy: True
- job:
name: ironic-tempest-dsvm-ipa-wholedisk-bios-pxe_snmp-tinyipa
description: ironic-tempest-dsvm-ipa-wholedisk-bios-pxe_snmp-tinyipa
parent: ironic-base
timeout: 5400
vars:
devstack_localrc:
IRONIC_ENABLED_HARDWARE_TYPES: snmp
IRONIC_DEPLOY_DRIVER: snmp
IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
IRONIC_VM_EPHEMERAL_DISK: 0
- job:
name: ironic-tempest-dsvm-ipa-partition-uefi-pxe_ipmitool-tinyipa
description: ironic-tempest-dsvm-ipa-partition-uefi-pxe_ipmitool-tinyipa
parent: ironic-base
timeout: 5400
vars:
devstack_localrc:
IRONIC_BOOT_MODE: uefi
- job:
name: ironic-tempest-dsvm-ipa-partition-pxe_ipmitool-tinyipa-python3
description: ironic-tempest-dsvm-ipa-partition-pxe_ipmitool-tinyipa-python3
parent: ironic-base
timeout: 5400
vars:
devstack_localrc:
USE_PYTHON3: True
- job:
name: ironic-tempest-dsvm-bfv
description: ironic-tempest-dsvm-bfv
parent: ironic-base
timeout: 9600
vars:
tempest_test_regex: baremetal_boot_from_volume
devstack_localrc:
IRONIC_ENABLED_STORAGE_INTERFACES: cinder,noop
IRONIC_STORAGE_INTERFACE: cinder
IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
IRONIC_VM_EPHEMERAL_DISK: 0
IRONIC_VM_COUNT: 3
devstack_services:
c-api: True
c-bak: True
c-sch: True
c-vol: True
cinder: True
- job:
name: ironic-tempest-dsvm-ironic-inspector
description: ironic-tempest-dsvm-ironic-inspector
parent: ironic-base
required-projects:
- openstack/ironic-inspector
vars:
tempest_test_regex: InspectorBasicTest
devstack_localrc:
IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
IRONIC_INSPECTOR_MANAGE_FIREWALL: True
IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
IRONIC_VM_EPHEMERAL_DISK: 0
devstack_plugins:
ironic-inspector: git://git.openstack.org/openstack/ironic-inspector
devstack_services:
s-account: True
s-container: True
s-object: True
s-proxy: True
- job:
name: ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa-indirect
description: ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa-indirect
parent: ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa
timeout: 5400
vars:
devstack_localrc:
IRONIC_AGENT_IMAGE_DOWNLOAD_SOURCE: http
- job:
name: ironic-tempest-dsvm-ipa-partition-bios-agent_ipmitool-tinyipa-indirect
description: ironic-tempest-dsvm-ipa-partition-bios-agent_ipmitool-tinyipa-indirect
parent: ironic-tempest-dsvm-ipa-wholedisk-bios-agent_ipmitool-tinyipa
timeout: 5400
vars:
devstack_localrc:
IRONIC_AGENT_IMAGE_DOWNLOAD_SOURCE: http
IRONIC_TEMPEST_WHOLE_DISK_IMAGE: False