Add experimental job for ironic's ansible-deploy
Ansible-deploy driver in ironic-staging-drivers is an alternative implementation of baremetal deploy logic and does not depend on any specific hardware, thus it can be tested in DevStack on gates. This patch adds an experimental on-demand job for ironic-staging-drivers project to test pxe_ipmitool_ansible ironic driver. During devstack run the job will: - setup devstack with ironic and agent_ipmitool driver for nodes and whole disk image as target user image in tepmest configuration - rebuild a prebuilt tinyipa-based ironic deploy ramdisk from tarballs.o.o to be compatible with ansible-deploy driver and upload it to glance - ssh keys for new deploy ramdisk are created on the fly - the original image is not re-downloaded but fetched from glance as it is already present there - minimal interactions with Tiny Core Linux repos, only 2 packages are downloaded - switch all ironic nodes' driver to pxe_ipmitool_ansible - set other driver info fields as required - run standard ironic tempest tests including actual node deployment Change-Id: If2bcecb6c4bc9271c8ccff1f5c2bbf6938a98f0c Depends-On: Ief19ccb2711aed03ad0c4f4feee73edaa5c554c9 Related-Bug: #1526308
This commit is contained in:
parent
968af06db6
commit
9128dc669f
|
@ -309,6 +309,21 @@
|
|||
cp devstack-gate/devstack-vm-gate-wrap.sh ./safe-devstack-vm-gate-wrap.sh
|
||||
./safe-devstack-vm-gate-wrap.sh
|
||||
|
||||
- builder:
|
||||
name: ironic-staging-drivers-enabled
|
||||
builders:
|
||||
- ironic-extra-vars:
|
||||
script: |
|
||||
export PROJECTS="openstack/ironic-staging-drivers $PROJECTS"
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"enable_plugin ironic-staging-drivers git://git.openstack.org/openstack/ironic-staging-drivers"
|
||||
|
||||
- builder:
|
||||
name: ironic-staging-test-driver
|
||||
builders:
|
||||
- ironic-extra-vars:
|
||||
script: |
|
||||
export DEVSTACK_LOCAL_CONFIG+=$'\n'"IRONIC_STAGING_DRIVER={staging-driver}"
|
||||
|
||||
- job-template:
|
||||
name: '{pipeline}-ironic-dsvm-functional-{node}{suffix}'
|
||||
node: '{node}'
|
||||
|
@ -1311,3 +1326,46 @@
|
|||
publishers:
|
||||
- devstack-logs
|
||||
- console-log
|
||||
|
||||
# NOTE(pas-ha) explanation for variables choices:
|
||||
# - devstack plugin of ironic-staging-drivers will be able to
|
||||
# switch over nodes to ansible-deploy-enabled driver only
|
||||
# from agent_ipmitool to pxe_ipmitool_ansible driver.
|
||||
# - Ansible-deploy driver does not support netboot,
|
||||
# so testing wholedisk images only
|
||||
# - Partition images with localboot are supported but deploy does not
|
||||
# work with default cirros image as those do not have grub(2) installed
|
||||
# - Only tinyipa-based ramdisks are supported to be rebuilt for compatibility
|
||||
# with ansible-deploy driver
|
||||
- job-template:
|
||||
name: '{pipeline}-tempest-dsvm-ironic-staging-drivers-ansible-wholedisk-{node}{suffix}'
|
||||
node: '{node}'
|
||||
|
||||
wrappers:
|
||||
- build-timeout:
|
||||
timeout: 80
|
||||
- timestamps
|
||||
|
||||
builders:
|
||||
- link-logs
|
||||
- net-info
|
||||
- devstack-checkout
|
||||
- ironic-deploy-with-IPA:
|
||||
ramdisk-type: tinyipa
|
||||
- ironic-staging-drivers-enabled
|
||||
- ironic-staging-test-driver:
|
||||
staging-driver: pxe_ipmitool_ansible
|
||||
- ironic-tempest-regex:
|
||||
tempest-regex: ironic
|
||||
- ironic-tempest-plugin
|
||||
- devstack-virtual-ironic:
|
||||
build-ramdisk: ''
|
||||
deploy_driver: agent_ipmitool
|
||||
image-type: wholedisk
|
||||
boot-mode: bios
|
||||
branch-override: '{branch-override}'
|
||||
bm-vm-count: 1
|
||||
|
||||
publishers:
|
||||
- devstack-logs
|
||||
- console-log
|
||||
|
|
|
@ -5785,6 +5785,11 @@
|
|||
node: ubuntu-xenial
|
||||
suffix: ''
|
||||
branch-override: default
|
||||
- '{pipeline}-tempest-dsvm-ironic-staging-drivers-ansible-wholedisk-{node}{suffix}':
|
||||
pipeline: gate
|
||||
node: ubuntu-xenial
|
||||
suffix: '-nv'
|
||||
branch-override: default
|
||||
|
||||
- project:
|
||||
name: ironic-tempest-plugin
|
||||
|
|
|
@ -10852,6 +10852,8 @@ projects:
|
|||
- gate-ironic-staging-drivers-dsvm-ubuntu-xenial
|
||||
gate:
|
||||
- gate-ironic-staging-drivers-dsvm-ubuntu-xenial
|
||||
experimental:
|
||||
- gate-tempest-dsvm-ironic-staging-drivers-ansible-wholedisk-ubuntu-xenial-nv
|
||||
|
||||
- name: openstack/ironic-tempest-plugin
|
||||
template:
|
||||
|
|
Loading…
Reference in New Issue