Add env variable to make temp directory configurable (#153)

This commit is contained in:
ByteDream 2023-04-09 14:22:43 +02:00
parent 481f35d232
commit a2820c0399

View file

@ -24,10 +24,12 @@ pub fn has_ffmpeg() -> bool {
/// e.g. remove them in a case of ctrl-c. Having one function also good to prevent mistakes like
/// setting the wrong prefix if done manually.
pub fn tempfile<S: AsRef<str>>(suffix: S) -> io::Result<NamedTempFile> {
let tmp_dir = env::var("CRUNCHY_CLI_TEMP_DIR").map_or(env::temp_dir(), |d| PathBuf::from(d));
let tempfile = Builder::default()
.prefix(".crunchy-cli_")
.suffix(suffix.as_ref())
.tempfile_in(&env::temp_dir())?;
.tempfile_in(tmp_dir)?;
debug!(
"Created temporary file: {}",
tempfile.path().to_string_lossy()