mirror of
https://github.com/Stone-Red-Code/dvc.git
synced 2026-11-02 07:18:25 +01:00
cli: config: add support for --show-origin (#5126)
* cli: config: add support for --show-origin Support the --show-origin option for config, which, similar to git, prefixes each config option with the source file it originated from. Fixes #5119 * Reformat with black. * Simplify logic for local config files. * Add test for --show-config output. * Update tests/func/test_config.py Co-authored-by: Ruslan Kuprieiev <[email protected]>
This commit is contained in:
co-authored by
Ruslan Kuprieiev
parent
23811e028c
commit
34ed545d64
@@ -48,9 +48,15 @@ class TestConfigCLI(TestDvc):
|
||||
self.assertEqual(ret, 0)
|
||||
self.assertTrue(self._contains(section, field, value, local))
|
||||
|
||||
ret = main(base + [section_field, value, "--show-origin"])
|
||||
self.assertEqual(ret, 1)
|
||||
|
||||
ret = main(base + [section_field])
|
||||
self.assertEqual(ret, 0)
|
||||
|
||||
ret = main(base + ["--show-origin", section_field])
|
||||
self.assertEqual(ret, 0)
|
||||
|
||||
ret = main(base + [section_field, newvalue])
|
||||
self.assertEqual(ret, 0)
|
||||
self.assertTrue(self._contains(section, field, newvalue, local))
|
||||
@@ -60,9 +66,15 @@ class TestConfigCLI(TestDvc):
|
||||
self.assertEqual(ret, 0)
|
||||
self.assertFalse(self._contains(section, field, value, local))
|
||||
|
||||
ret = main(base + [section_field, "--unset", "--show-origin"])
|
||||
self.assertEqual(ret, 1)
|
||||
|
||||
ret = main(base + ["--list"])
|
||||
self.assertEqual(ret, 0)
|
||||
|
||||
ret = main(base + ["--list", "--show-origin"])
|
||||
self.assertEqual(ret, 0)
|
||||
|
||||
def test(self):
|
||||
self._do_test(False)
|
||||
|
||||
@@ -174,3 +186,28 @@ def test_config_remote(tmp_dir, dvc, caplog):
|
||||
caplog.clear()
|
||||
assert main(["config", "remote.myremote.region"]) == 0
|
||||
assert "myregion" in caplog.text
|
||||
|
||||
|
||||
def test_config_show_origin(tmp_dir, dvc, caplog):
|
||||
(tmp_dir / ".dvc" / "config").write_text(
|
||||
"['remote \"myremote\"']\n"
|
||||
" url = s3://bucket/path\n"
|
||||
" region = myregion\n"
|
||||
)
|
||||
|
||||
caplog.clear()
|
||||
assert main(["config", "--show-origin", "remote.myremote.url"]) == 0
|
||||
assert (
|
||||
"{}\t{}\n".format(os.path.join(".dvc", "config"), "s3://bucket/path")
|
||||
in caplog.text
|
||||
)
|
||||
|
||||
caplog.clear()
|
||||
assert main(["config", "--list", "--show-origin"]) == 0
|
||||
assert (
|
||||
"{}\t{}\n".format(
|
||||
os.path.join(".dvc", "config"),
|
||||
"remote.myremote.url=s3://bucket/path",
|
||||
)
|
||||
in caplog.text
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user