Skip to content

Commit 38a4a0a

Browse files
committed
allow configuration for pre-commit.ci
1 parent 2d54ea1 commit 38a4a0a

File tree

2 files changed

+18
-0
lines changed

2 files changed

+18
-0
lines changed

pre_commit/clientlib.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -297,9 +297,13 @@ def warn_unknown_keys_repo(
297297
'exclude',
298298
'fail_fast',
299299
'minimum_pre_commit_version',
300+
'ci',
300301
),
301302
warn_unknown_keys_root,
302303
),
304+
305+
# do not warn about configuration for pre-commit.ci
306+
cfgv.OptionalNoDefault('ci', cfgv.check_type(dict)),
303307
)
304308

305309

tests/clientlib_test.py

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,20 @@ def test_validate_warn_on_unknown_keys_at_top_level(tmpdir, caplog):
166166
]
167167

168168

169+
def test_ci_map_key_allowed_at_top_level(caplog):
170+
cfg = {
171+
'ci': {'skip': ['foo']},
172+
'repos': [{'repo': 'meta', 'hooks': [{'id': 'identity'}]}],
173+
}
174+
cfgv.validate(cfg, CONFIG_SCHEMA)
175+
assert not caplog.record_tuples
176+
177+
178+
def test_ci_key_must_be_map():
179+
with pytest.raises(cfgv.ValidationError):
180+
cfgv.validate({'ci': 'invalid', 'repos': []}, CONFIG_SCHEMA)
181+
182+
169183
def test_validate_optional_sensible_regex(caplog):
170184
config_obj = {
171185
'id': 'flake8',

0 commit comments

Comments
 (0)