Use pathlib for compute.utils.translate_settings_paths for all flavors of container_platform. Additionally break path translation steps into separate functions for more unit tests.
This addresses a bug where a user has the following setup, where the output directory starts with the same string as the input directory (though output and input are separate folders). This is a valid configuration and should be handled.
A volume_map using string comparison produces the following incorrect translation. Note volume_map tuples are applied in reverse order to each configuration option until a match is found.
Use pathlib for
compute.utils.translate_settings_paths
for all flavors ofcontainer_platform
. Additionally break path translation steps into separate functions for more unit tests.This addresses a bug where a user has the following setup, where the output directory starts with the same string as the input directory (though output and input are separate folders). This is a valid configuration and should be handled.
/path/to/data
/path/to/data_output
Consider the following configuration:
And the following volume_map:
A volume_map using string comparison produces the following incorrect translation. Note volume_map tuples are applied in reverse order to each configuration option until a match is found.
Using pathlib comparison, volume mappings match to directories/files only & produce the expected translation: