placement/playbooks/nested-perfload.yaml
Chris Dent 8723bd7772 Nested provider performance testing
This change duplicates the ideas started in with the placement-perfload
job and builds on it to create a set of nested trees that can be
exercised.

In placement-perfload, placeload is used to create the providers. This
proves to be cumbersome for nested topologies so this change starts
a new model: Using parallel [1] plus instrumented gabbi to create
nested topologies in a declarative fashion.

gate/perfload-server.sh sets up placement db and starts a uwsgi server.

gate/perfload-nested-loader.sh is called in the playbook to cause gabbi
to create the nested topology described in
gate/gabbits/nested-perfload.yaml. That topology is intentionally very
naive right now but should be made more realisitc as we continue to
develop nested features.

There's some duplication between perfload.yaml and
nested-perfload.yaml that will be cleared up in a followup.

[1] https://www.gnu.org/software/parallel/ (although the version on
ubuntu is a non-GPL clone)

Story: 2005443
Task: 30487
Change-Id: I617161fde5b844d7f52dc766f85c1b9f1b139e4a
2019-06-20 12:37:28 +01:00

21 lines
663 B
YAML

- hosts: all
tasks:
- name: Ensure {{ ansible_user_dir }}/logs exists
become: true
file:
path: "{{ ansible_user_dir }}/logs"
state: directory
owner: "{{ ansible_user }}"
- name: start placement
args:
chdir: "{{ ansible_user_dir }}/src/opendev.org/openstack/placement"
shell:
executable: /bin/bash
cmd: gate/perfload-server.sh {{ ansible_user_dir }}
- name: placement performance
args:
chdir: "{{ ansible_user_dir }}/src/opendev.org/openstack/placement"
shell:
executable: /bin/bash
cmd: gate/perfload-nested-runner.sh {{ ansible_user_dir }}