Currently scripts/in_container/run_provider_yaml_files_check.py walks through all provider "source" files and does some checks (like whether classes mentioned in provider.yaml files as hooks are actually hooks.
It is run inside breeze image as result of this pre-comit hook
- id: check-provider-yaml-valid
name: Validate provider.yaml files
entry: ../scripts/ci/prek/check_provider_yaml_files.py
language: python
files: ^.*/provider\.yaml$
exclude: ^.*/.venv/.*$
require_serial: true
We should make sure that when the script is run inside breeze CI docker files we run uv sync --no-dev.
Ideally we should do it separately for each provider before re-importing each provider, but that might take a long time and require spawning new interpreters for each provider.
If we do it "per provider" - this would also allow to automatically detect cases, where one provider has an optional cross-provider dependency where it's optionality is not handled properly.
Currently
scripts/in_container/run_provider_yaml_files_check.pywalks through all provider "source" files and does some checks (like whether classes mentioned in provider.yaml files as hooks are actually hooks.It is run inside breeze image as result of this pre-comit hook
We should make sure that when the script is run inside breeze CI docker files we run
uv sync --no-dev.Ideally we should do it separately for each provider before re-importing each provider, but that might take a long time and require spawning new interpreters for each provider.
If we do it "per provider" - this would also allow to automatically detect cases, where one provider has an optional cross-provider dependency where it's optionality is not handled properly.