compress_folder
Wrap tar
compression command.
This module is used both locally (in the environment where fractal-server
is running) and remotely (as a standalon Python module, executed over SSH).
This is a twin-module of extract_archive.py
.
The reason for using the tar
command via subprocess
rather than Python
built-in tarfile
library has to do with performance issues we observed
when handling files which were just created within a SLURM job, and in the
context of a CephFS filesystem.
compress_folder(subfolder_path, remote_to_local=False)
¶
Compress e.g. /path/archive
into /path/archive.tar.gz
Note that /path/archive.tar.gz
may already exist. In this case, it will
be overwritten.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
subfolder_path |
Path
|
Absolute path to the folder to compress. |
required |
remote_to_local |
bool
|
If |
False
|
Returns:
Type | Description |
---|---|
str
|
Absolute path to the tar.gz archive. |
Source code in fractal_server/app/runner/compress_folder.py
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
|