mirror of
https://github.com/denoland/deno.git
synced 2025-07-24 05:35:33 +00:00
fix(task): resolve deno configuration file first from specified --cwd
arg (#15257)
This commit is contained in:
parent
cee3246edb
commit
73504d76b2
2 changed files with 21 additions and 0 deletions
|
@ -2,6 +2,8 @@
|
|||
|
||||
use crate::args::ConfigFlag;
|
||||
use crate::args::Flags;
|
||||
use crate::args::TaskFlags;
|
||||
use crate::fs_util;
|
||||
use crate::fs_util::canonicalize_path;
|
||||
use crate::fs_util::specifier_parent;
|
||||
use crate::fs_util::specifier_to_file_path;
|
||||
|
@ -449,6 +451,18 @@ impl ConfigFile {
|
|||
return Ok(Some(cf));
|
||||
}
|
||||
}
|
||||
// attempt to resolve the config file from the task subcommand's
|
||||
// `--cwd` when specified
|
||||
if let crate::args::DenoSubcommand::Task(TaskFlags {
|
||||
cwd: Some(path),
|
||||
..
|
||||
}) = &flags.subcommand
|
||||
{
|
||||
let task_cwd = fs_util::canonicalize_path(&PathBuf::from(path))?;
|
||||
if let Some(path) = Self::discover_from(&task_cwd, &mut checked)? {
|
||||
return Ok(Some(path));
|
||||
}
|
||||
};
|
||||
// From CWD walk up to root looking for deno.json or deno.jsonc
|
||||
let cwd = std::env::current_dir()?;
|
||||
Self::discover_from(&cwd, &mut checked)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue