This is another step towards testing from the Volume layer. It's a sprinking of changes here and there. The most interesting part is probalby in crutest where we create a Volume instaead of creating a Guest. Most of the rest of the changes are pretty minor.
Made crutest always use a Volume instead of a Guest. If we are just provided targets (the current method) then we make a Volume with a single sub-volume.
Added support to crutest to read a VCR file as input. This allows us to build a multi level sub-volume.
Moved the config_path() function to crucible-common so others can make use of it. This function takes a region directory path and appends the name of the expected region description file to the end of it.
Moved RegionExtentInfo to crucible-common so others can make use of it.
Updated dsc to record and report region information about the regions (downstairs) it is running. Updated dsc to report back port numbers for clients. These changes should allow crutest to not need to know targets/ports for the downstairs and can instead just ask dsc.
Made dsc's type for block_size the same as everyone else.
Fixed a typo in tools/test_up.sh and the long broken tools/test_dsc.sh
Still to do:
Update the Volume layer to return a better format for the crutest internal RegionInfo structure. Right now it is assumed we only have a single sub-volume and all the tests make assumptions based on that. We need to update the Volume layer to return more information so the tests can make better decisions.
Update all the tests to just ask DSC for region info instead of having to pass that information on the command line.
There are 245 places where we use "guest" that I want to change to "block_io", but I'll do that in a follow up PR which will be just that name change.
Part of the Guest to Volume work
This is another step towards testing from the
Volume
layer. It's a sprinking of changes here and there. The most interesting part is probalby in crutest where we create a Volume instaead of creating a Guest. Most of the rest of the changes are pretty minor.Made crutest always use a
Volume
instead of aGuest
. If we are just provided targets (the current method) then we make aVolume
with a single sub-volume.Added support to crutest to read a VCR file as input. This allows us to build a multi level sub-volume.
Moved the
config_path()
function to crucible-common so others can make use of it. This function takes a region directory path and appends the name of the expected region description file to the end of it.Moved
RegionExtentInfo
to crucible-common so others can make use of it.Updated dsc to record and report region information about the regions (downstairs) it is running. Updated dsc to report back port numbers for clients. These changes should allow crutest to not need to know targets/ports for the downstairs and can instead just ask dsc.
Made dsc's type for block_size the same as everyone else.
Fixed a typo in tools/test_up.sh and the long broken tools/test_dsc.sh
Still to do:
Update the Volume layer to return a better format for the crutest internal
RegionInfo
structure. Right now it is assumed we only have a single sub-volume and all the tests make assumptions based on that. We need to update the Volume layer to return more information so the tests can make better decisions.Update all the tests to just ask DSC for region info instead of having to pass that information on the command line.
There are 245 places where we use "guest" that I want to change to "block_io", but I'll do that in a follow up PR which will be just that name change.