buildtesters / buildtest

HPC System and Software Testing Framework
https://buildtest.rtfd.io
MIT License
68 stars 20 forks source link

[FEATURE]: control max-depth for directory traversal #1810

Open shahzebsiddiqui opened 3 months ago

shahzebsiddiqui commented 3 months ago

Please describe your feature

Similar to #1809 we should have a configurable option on command line such as --max-depth and configuration value max-depth that can control the level of directories to traverse when using the walk_tree method, by default max_depth=None is set which will traverse entire directory tree

https://github.com/buildtesters/buildtest/blob/0804a13b31491f3657a0444b64e8c19b89ab3525/buildtest/utils/file.py#L170-L177

I think this feature would be useful when one wants to traverse level 1 which is only files within a directory and not all sub-directories.

This feature would be useful let's say one wants to build all buildspecs in tutorials/*.yml and user just does buildtest --max-depth=1 bd -b tutorials/

Suggest potential solution

The configuration value would be defined as follows

system:
  generic:
     max-depth: 1

Note that if its defined in configuration this will be the default behavior and one would either update or remove the value if they want the default behavior or set it on the command line.

The max-depth must be an integer and >=0

Additional Information

No response

Post question in Slack

Is there an existing issue