From: nikandfor Date: Thu, 23 Mar 2023 13:18:39 +0000 (+0400) Subject: only parse *.conf files in dropin dirs X-Git-Tag: v15~279^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=25334772c28a652acccb6f812e42e3859fe84b21;p=thirdparty%2Fmkosi.git only parse *.conf files in dropin dirs --- diff --git a/mkosi/__init__.py b/mkosi/__init__.py index 171626d2c..b138b2567 100644 --- a/mkosi/__init__.py +++ b/mkosi/__init__.py @@ -2105,7 +2105,7 @@ def parse_args_file_group( for dropin_dir in dirs: if dropin_dir.is_dir(): for entry in sorted(dropin_dir.iterdir()): - if entry.is_file(): + if entry.is_file() and entry.match("*.conf"): config_files += [f"@{entry}"] # Parse all parameters handled by mkosi. diff --git a/tests/test_parse_load_args.py b/tests/test_parse_load_args.py index 220762b9d..297a8ecc9 100644 --- a/tests/test_parse_load_args.py +++ b/tests/test_parse_load_args.py @@ -59,6 +59,15 @@ def test_os_distribution() -> None: config.write_text(f"[Distribution]\nDistribution={dist}") assert parse([]).distribution == dist +def test_parse_config_files_filter() -> None: + with cd_temp_dir(): + confd = Path("mkosi.conf.d") + confd.mkdir(0o755) + + (confd / "10-file.conf").write_text("[Content]\nPackages=yes") + (confd / "20-file.noconf").write_text("[Content]\nPackages=nope") + + assert parse([]).packages == ["yes"] def test_hostname() -> None: assert parse(["--hostname", "name"]).hostname == "name"