placement/gate/perfload-nested-loader.sh
Chris Dent 07d7749cff Implement a more complex nested-perfload topology
This changes gabbits/nested-perfload.yaml to create a tree of
providers based on one of the compute nodes in the NUMANetworkFixture
used in the functional tests. For the time being only one type of
compute node is created (of which there will be 1000 instances).
Room is left for future expansion as requirements expand.

The resulting hierarchy has 7 resource providers.

The allocation candidates query is:

GET /allocation_candidates?
    resources=DISK_GB:10&
    required=COMPUTE_VOLUME_MULTI_ATTACH&
    resources_COMPUTE=VCPU:1,MEMORY_MB:256&
    required_COMPUTE=CUSTOM_FOO&
    resources_FPGA=FPGA:1&
    group_policy=none&
    same_subtree=_COMPUTE,_FPGA

This is a step in the right direction but is not yet a complete
exercising of all the nested functionality. It is, however, more
complex than prior, notably testing 'same_subtree'. We should
continue to iterate to get it doing more.

Change-Id: I67d8091b464cd7b875b37766f52818a5a2faa780
Story: 2005443
Task: 35669
2019-08-06 09:18:39 +01:00

25 lines
723 B
Bash
Executable File

#!/bin/bash
set -a
HOST=$1
GABBIT=$2
# By default the placement server is set up with noauth2 authentication
# handling. If that is changed to keystone, a $TOKEN can be generated in
# the calling environment and used instead of the default 'admin'.
TOKEN=${TOKEN:-admin}
# These are the dynamic/unique values for individual resource providers
# that need to be set for each run a gabbi file. Values that are the same
# for all the resource providers (for example, traits and inventory) should
# be set in $GABBIT.
CN1_UUID=$(uuidgen)
N0_UUID=$(uuidgen)
N1_UUID=$(uuidgen)
FPGA0_0_UUID=$(uuidgen)
FPGA1_0_UUID=$(uuidgen)
FPGA1_1_UUID=$(uuidgen)
PGPU0_0_UUID=$(uuidgen)
# Run gabbi silently.
gabbi-run -q $HOST -- $GABBIT