On Fri, Jul 25, 2025 at 11:15 AM Luca Vizzarro wrote: > Add a new artifact module which provides DTS with remote and local file > management capabilities. A new Artifact class is provided which acts as > an abstract representation of a file that is present in any node in the > testbed model. The same provides several helper file management > functions, including open, which returns an ArtifactFile class which > behaves like a standard Python file object for easy interoperability. > > Moreover, add a novel directory tree structure for both the remote > temporary and local output directories. This structure would represent > the test suites and test cases in structured folders as appropriate, > where each artifact will be stored. The location of the artifact is > determined by the time when it was first defined. If an artifact was > defined during a test case stage, this will be placed in the test case's > own folder. > > Signed-off-by: Luca Vizzarro > Reviewed-by: Paul Szczepanek > --- > > + def touch(self, mode: int = 0o644) -> None: > + """Touch the artifact file, creating it if it does not exist. > + > Oh yeah - is there a reason why we don't call touch in the init function? running touch should be idempotent so we aren't worried about it being called too many times. I was reminded when I saw in the softnic testsuite that it is being called in the testsuite setup. Maybe this is extra work on the testsuite side for no reason.