c16597aa2d
Adds the kayobe-seed-vm-centos8 CI job to configure the Zuul VM as a seed hypervisor, and use nested virt to provision a seed VM. This ensures that the seed hypervisor code paths are tested. The job uses a Cirros image for the seed VM rather than the usual CentOS cloud image. This is to reduce bandwidth required to download the image. It does mean that the resulting seed VM cannot be used as a seed, but nested virt would make this slow and unreliable anyway. Cirros does not load cdrom drivers by default, so we add the configdrive as a disk rather than a cdrom device. Depends-On: https://review.opendev.org/617161 Change-Id: I2268a1ddf9a2870c713f32a40689e1686365aabd Story: 2001655 Task: 6683
185 lines
5.4 KiB
YAML
185 lines
5.4 KiB
YAML
---
|
|
- job:
|
|
name: kayobe-tox-ansible-syntax
|
|
description: |
|
|
Tox job that checks Ansible playbook syntax.
|
|
parent: openstack-tox
|
|
vars:
|
|
tox_envlist: ansible-syntax
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^doc/.*
|
|
- ^releasenotes/.*
|
|
- ^setup.cfg$
|
|
|
|
- job:
|
|
name: kayobe-tox-ansible
|
|
description: |
|
|
Tox job that runs native Ansible role tests.
|
|
parent: openstack-tox-with-sudo
|
|
vars:
|
|
tox_envlist: ansible
|
|
required-projects:
|
|
- name: openstack/requirements
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^doc/.*
|
|
- ^releasenotes/.*
|
|
- ^setup.cfg$
|
|
|
|
- job:
|
|
name: kayobe-tox-molecule
|
|
description: |
|
|
Tox job that runs molecule-based Ansible role tests.
|
|
parent: openstack-tox-with-sudo
|
|
pre-run: playbooks/kayobe-tox-molecule/pre.yml
|
|
timeout: 3600
|
|
required-projects:
|
|
- openstack/requirements
|
|
vars:
|
|
tox_envlist: molecule
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^doc/.*
|
|
- ^releasenotes/.*
|
|
- ^setup.cfg$
|
|
|
|
- job:
|
|
name: kayobe-base
|
|
description: |
|
|
Base job for all deployment jobs.
|
|
pre-run: playbooks/kayobe-base/pre.yml
|
|
post-run: playbooks/kayobe-base/post.yml
|
|
attempts: 5
|
|
required-projects:
|
|
# Include kayobe to ensure other projects can use this job.
|
|
- name: openstack/kayobe
|
|
- name: openstack/kayobe-config-dev
|
|
- name: openstack/kolla
|
|
- name: openstack/kolla-ansible
|
|
- name: openstack/requirements
|
|
- name: openstack/tenks
|
|
irrelevant-files:
|
|
- ^.*\.rst$
|
|
- ^doc/.*
|
|
- ^releasenotes/.*
|
|
- ^setup.cfg$
|
|
- ^tools/.*$
|
|
- ^tox.ini$
|
|
vars:
|
|
# Name of the release to upgrade from for upgrade jobs.
|
|
previous_release: ussuri
|
|
logs_dir: "/tmp/logs"
|
|
kayobe_src_dir: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['opendev.org/openstack/kayobe'].src_dir }}"
|
|
kayobe_config_src_dir: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['opendev.org/openstack/kayobe-config-dev'].src_dir }}"
|
|
previous_kayobe_src_dir: "{{ ansible_env.PWD ~ '/previous/kayobe' }}"
|
|
previous_kayobe_config_src_dir: "{{ ansible_env.PWD ~ '/previous/kayobe-config' }}"
|
|
requirements_src_dir: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['opendev.org/openstack/requirements'].src_dir }}"
|
|
tenks_src_dir: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['opendev.org/openstack/tenks'].src_dir }}"
|
|
is_upgrade: "{{ 'upgrade' in zuul.job }}"
|
|
|
|
- job:
|
|
name: kayobe-overcloud-base
|
|
parent: kayobe-base
|
|
description: |
|
|
Base job for testing overcloud deployment.
|
|
|
|
Configures the primary VM as an overcloud controller.
|
|
pre-run: playbooks/kayobe-overcloud-base/pre.yml
|
|
run: playbooks/kayobe-overcloud-base/run.yml
|
|
timeout: 7200
|
|
|
|
- job:
|
|
name: kayobe-overcloud-centos8
|
|
parent: kayobe-overcloud-base
|
|
nodeset: kayobe-centos8
|
|
|
|
- job:
|
|
name: kayobe-overcloud-upgrade-base
|
|
parent: kayobe-base
|
|
description: |
|
|
Base job for testing overcloud upgrades.
|
|
|
|
Configures the primary VM as an overcloud controller using the previous
|
|
OpenStack release, and upgrades it to the current release.
|
|
pre-run: playbooks/kayobe-overcloud-upgrade-base/pre.yml
|
|
run: playbooks/kayobe-overcloud-upgrade-base/run.yml
|
|
timeout: 9000
|
|
# Use fewer attempts for upgrades, since pre.yml includes deployment of the
|
|
# previous release which takes a considerable amount of time.
|
|
attempts: 3
|
|
|
|
- job:
|
|
name: kayobe-overcloud-upgrade-centos8
|
|
parent: kayobe-overcloud-upgrade-base
|
|
nodeset: kayobe-centos8
|
|
|
|
- job:
|
|
name: kayobe-seed-base
|
|
parent: kayobe-base
|
|
description: |
|
|
Base job for testing seed deployment.
|
|
|
|
Configures the primary VM as a seed.
|
|
pre-run: playbooks/kayobe-seed-base/pre.yml
|
|
run: playbooks/kayobe-seed-base/run.yml
|
|
timeout: 5400
|
|
|
|
- job:
|
|
name: kayobe-seed-centos8
|
|
parent: kayobe-seed-base
|
|
nodeset: kayobe-centos8
|
|
|
|
- job:
|
|
name: kayobe-overcloud-host-configure-base
|
|
parent: kayobe-overcloud-base
|
|
description: |
|
|
Base job for testing overcloud host configure.
|
|
|
|
Configures the primary VM as an overcloud controller.
|
|
pre-run: playbooks/kayobe-overcloud-host-configure-base/pre.yml
|
|
run: playbooks/kayobe-overcloud-host-configure-base/run.yml
|
|
timeout: 7200
|
|
|
|
- job:
|
|
name: kayobe-overcloud-host-configure-centos8
|
|
parent: kayobe-overcloud-host-configure-base
|
|
nodeset: kayobe-centos8
|
|
|
|
- job:
|
|
name: kayobe-seed-upgrade-base
|
|
parent: kayobe-base
|
|
description: |
|
|
Base job for testing seed upgrades.
|
|
|
|
Configures the primary VM as a seed using the previous OpenStack release,
|
|
and upgrades it to the current release.
|
|
pre-run: playbooks/kayobe-seed-upgrade-base/pre.yml
|
|
run: playbooks/kayobe-seed-upgrade-base/run.yml
|
|
timeout: 5400
|
|
# Use fewer attempts for upgrades, since pre.yml includes deployment of the
|
|
# previous release which takes a considerable amount of time.
|
|
attempts: 3
|
|
|
|
- job:
|
|
name: kayobe-seed-upgrade-centos8
|
|
parent: kayobe-seed-upgrade-base
|
|
nodeset: kayobe-centos8
|
|
|
|
- job:
|
|
name: kayobe-seed-vm-base
|
|
parent: kayobe-base
|
|
description: |
|
|
Base job for testing seed VM provisioning.
|
|
|
|
Configures the primary VM as a libvirt hypervisor, and provisions a seed
|
|
as a VM.
|
|
pre-run: playbooks/kayobe-seed-vm-base/pre.yml
|
|
run: playbooks/kayobe-seed-vm-base/run.yml
|
|
timeout: 5400
|
|
|
|
- job:
|
|
name: kayobe-seed-vm-centos8
|
|
parent: kayobe-seed-vm-base
|
|
nodeset: kayobe-centos8
|