From e4ea463c739a56d52dd908ede2efc9ffb62a4308 Mon Sep 17 00:00:00 2001 From: David de la Iglesia Castro Date: Mon, 14 Nov 2022 11:18:54 +0100 Subject: [PATCH] hydra: Raise error when `name` and `sweeps`. --- dvc/repo/experiments/run.py | 4 ++++ tests/func/experiments/test_set_params.py | 15 ++++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/dvc/repo/experiments/run.py b/dvc/repo/experiments/run.py index d03f2ea27..06ae7d333 100644 --- a/dvc/repo/experiments/run.py +++ b/dvc/repo/experiments/run.py @@ -61,6 +61,10 @@ def run( ) if hydra_sweep: + if kwargs.get("name"): + raise InvalidArgumentError( + "Sweep overrides can't be used alongside `--name`" + ) from dvc.utils.hydra import get_hydra_sweeps sweeps = get_hydra_sweeps(path_overrides) diff --git a/tests/func/experiments/test_set_params.py b/tests/func/experiments/test_set_params.py index f65270f60..5095c666d 100644 --- a/tests/func/experiments/test_set_params.py +++ b/tests/func/experiments/test_set_params.py @@ -144,5 +144,18 @@ def test_hydra_sweep( def test_hydra_sweep_requires_queue(params_repo, dvc): - with pytest.raises(InvalidArgumentError): + with pytest.raises( + InvalidArgumentError, + match="Sweep overrides can't be used without `--queue`", + ): dvc.experiments.run(params=["db=mysql,postgresql"]) + + +def test_hydra_sweep_cant_use_name(tmp_dir, params_repo, dvc): + with pytest.raises( + InvalidArgumentError, + match="Sweep overrides can't be used alongside `--name`", + ): + dvc.experiments.run( + params=["db=mysql,postgresql"], queue=True, name="foo" + )