a4e128d890
README with instructions for regression test Test plan: All information necessary is documented All information necessary described accurately All information is formatted correctly (.rst syntax) Story: 2010816 Task: 48345 Change-Id: Ibc543debb235a2865242a07c2c0e08b49a36b2fb Signed-off-by: Bailey Henry <Henry.Bailey@windriver.com> |
||
---|---|---|
.. | ||
README.rst |
Overview
This regression test ensures that a change does not impact the generation of XML for default and 'madcloud' configuration examples.
Before starting make sure you have cloned the
starlingx/virtual-deployment git and installed any required packages as
presented in libvirt/install_packages.sh
.
The regression method sets attributes for a lab, runs the deployment
method's scripts and dumps XML using the virsh command. These attributes
are the overridable environment variables including:
CONTROLLER, WORKER, BRIDGE_INTERFACE, EXTERNAL_NETWORK, EXTERNAL_IP
Step 1 export attributes:
The ATTRIBUTE variable is used to name the xml file, and should be defined for ease of use.
Start with a new bash shell to reset the environment to use default attributes.
Default values:
export ATTRIBUTE=default
export CONTROLLER=${CONTROLLER:-controller}
export WORKER=${WORKER:-worker}
export BRIDGE_INTERFACE=${BRIDGE_INTERFACE:-stxbr}
export EXTERNAL_NETWORK=${EXTERNAL_NETWORK:-10.10.10.0/24}
export EXTERNAL_IP=${EXTERNAL_IP:-10.10.10.1/24}
Madcloud values:
export ATTRIBUTE=madcloud
export CONTROLLER=madcloud
export WORKER=madnode
export BRIDGE_INTERFACE=madbr
export EXTERNAL_NETWORK=172.30.20.0/24
export EXTERNAL_IP=172.30.20.1/24
Step 2 choose configuration:
export CONFIGURATION=(simplex, duplex, etc.)
Options are: simplex, duplex, controllerstorage or dedicatedstorage Along with the attributes this forms a 2x4 matrix:
default, simplex
default, duplex
default, controllerstorage
default, dedicatedstorage
And:
Madcloud, simplex
Madcloud, duplex
Madcloud, controllerstorage
Madcloud, dedicatedstorage
Step 3 start VM:
./setup_network.sh
./setup_configuration.sh -c $CONFIGURATION -i $iso
Remember to use a path to a valid iso - it doesn't matter if it actually boots or etc
Step 4 create dump xml:
mkdir -p regression
Each configuration has 1 or more domains. For each DOMAIN in virsh list:
DOMAIN="simplex-controller-0"
outf="regression/${ATTRIBUTE}_${CONFIGURATION}_${DOMAIN}.xml"
virsh dumpxml $DOMAIN > "${outf}_${x}"
It is recommended to use either numbers or tags to signify what iteration you are setting, in this case x represents that
Step 5 reset parameters and workspace:
Teardown configuration and network settings
./destroy_configuration.sh -c $CONFIGURATION
./destroy_network.sh
Step 6 compare files:
diff -usU9999 "${outf}_${x}.xml" "${outf}_${y}.xml"
In this case x and y represent different iterations. Details to
ignore are changes to:
UUID, domain ID, mac_addresses, mounted cdrom, serial/dev/pts
.
If there are no changes ignoring those above, the test is considered a
pass.