nova/playbooks/legacy/nova-caching-scheduler/run.yaml
Matt Riedemann 0c9225bece Add a nova-caching-scheduler job to the experimental queue
This adds an experimental queue job to run non-slow tempest
API and scenario tests using the CachingScheduler as the
scheduler driver.

A blacklist is added since there are a few tests that rely on
filters which don't work well with the CachingScheduler.

The CachingScheduler is deprecated, but this is useful to have
when we're making changes to the scheduler or flows within the
code that involve the scheduler, such as the alternate hosts
work.

Change-Id: I8630ea11c3067ed934de2ef27a63432418e98c33
2018-02-16 16:37:09 +00:00

60 lines
1.9 KiB
YAML

- hosts: all
name: nova-caching-scheduler
tasks:
- name: Ensure 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:
# The scheduler.periodic_task_interval must be less than the
# service_down_time (defaults to 60) otherwise the ComputeFilter
# will be using potentially stale compute service information and
# think that the compute service is down when it's really not.
cmd: |
set -e
set -x
cat << 'EOF' >>"/tmp/dg-local.conf"
[[local|localrc]]
SCHEDULER=caching_scheduler
[[post-config|$NOVA_CONF]]
[scheduler]
periodic_task_interval=30
EOF
executable: /bin/bash
chdir: '{{ ansible_user_dir }}/workspace'
environment: '{{ zuul | zuul_legacy_vars }}'
- shell:
cmd: |
set -e
set -x
export PYTHONUNBUFFERED=true
# Yes we want to run Tempest.
export DEVSTACK_GATE_TEMPEST=1
# Run with our blacklist.
export DEVSTACK_GATE_SETTINGS=/opt/stack/new/nova/devstack/tempest-dsvm-caching-scheduler-rc
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 }}'