mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-06 15:28:28 +01:00
* experiments: add initial local tmpdir executor * fix detached head pull * experiments: include unchanged (unrepro'd) stages in experiment hash * experiments: repro single experiment using tmpdir executor by default * stage experiments as stash commits before running * include repro args/kwargs in stashed experiments * support running arbitrary experiment commits (including stash commits) * experiments: use ProcessPoolExecutor * experiments: add `dvc exp` alias for `dvc experiments` * experiments: add `dvc repro --experiment --queue` * `--queue` can be used to stage an experiment for future execution * experiments: show queued (unexecuted) experiments in `dvc exp show` * revert ProcessPoolExecutor change * experiments: add `dvc repro --run-all [--jobs]` * `--run-all` can be used to run all queued experiments in parallel * cleanup output * experiments: use ProcessPoolExecutor * fix returning unpicklable objects error * update tests * fix windows cleanup issue * on windows tempdir cannot be removed if we are chdir'd into that directory
38 lines
1019 B
Python
38 lines
1019 B
Python
from dvc.cli import parse_args
|
|
from dvc.command.repro import CmdRepro
|
|
from dvc.dvcfile import PIPELINE_FILE
|
|
|
|
default_arguments = {
|
|
"all_pipelines": False,
|
|
"downstream": False,
|
|
"dry": False,
|
|
"force": False,
|
|
"run_cache": True,
|
|
"interactive": False,
|
|
"no_commit": False,
|
|
"pipeline": False,
|
|
"single_item": False,
|
|
"recursive": False,
|
|
"force_downstream": False,
|
|
"experiment": False,
|
|
"queue": False,
|
|
"run_all": False,
|
|
"jobs": None,
|
|
}
|
|
|
|
|
|
def test_default_arguments(dvc, mocker):
|
|
cmd = CmdRepro(parse_args(["repro"]))
|
|
mocker.patch.object(cmd.repo, "reproduce")
|
|
cmd.run()
|
|
cmd.repo.reproduce.assert_called_with(PIPELINE_FILE, **default_arguments)
|
|
|
|
|
|
def test_downstream(dvc, mocker):
|
|
cmd = CmdRepro(parse_args(["repro", "--downstream"]))
|
|
mocker.patch.object(cmd.repo, "reproduce")
|
|
cmd.run()
|
|
arguments = default_arguments.copy()
|
|
arguments.update({"downstream": True})
|
|
cmd.repo.reproduce.assert_called_with(PIPELINE_FILE, **arguments)
|