aboutsummaryrefslogtreecommitdiff
path: root/docker/scripts
diff options
context:
space:
mode:
authorcirakg <cirakg@cirakg.xyz>2026-10-20 18:36:54 +0200
committercirakg <cirakg@cirakg.xyz>2026-10-20 18:36:54 +0200
commitf466977249d9ac10fe8b75180c30cb90dbcc22ca (patch)
treef346500d39d077aaaeb350e0e99647a4d6e6367c /docker/scripts
parent479d7ba2e843d5ea93979f2eed68f4d38d146c25 (diff)
build(lint): validate resource XML against the SDK schema and cross-check the settings form
tools/check_resources.py checks every resource file against the SDK's resources.xsd and that settings, properties and strings agree. Adds the pure-Python, MIT-licensed xmlschema to the dev image. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'docker/scripts')
-rwxr-xr-xdocker/scripts/lint.sh6
1 files changed, 6 insertions, 0 deletions
diff --git a/docker/scripts/lint.sh b/docker/scripts/lint.sh
index 998b2b9..4cca4d8 100755
--- a/docker/scripts/lint.sh
+++ b/docker/scripts/lint.sh
@@ -7,6 +7,8 @@
# 1. tools/lint_project.py: project rules (headers, no logging, no network, ...)
# 2. ruff (lint + formatting) and mypy --strict on the Python tools
# 3. tools/gen_products.py --check: the manifest's products meet the targets
+# tools/check_resources.py: resource XML valid against the SDK's
+# resources.xsd; settings, properties and strings agree
# 4. Debug and release builds with strict type checking (-l 3) on each device;
# build-app.sh fails on any compiler warning.
set -euo pipefail
@@ -26,6 +28,10 @@ ruff format --check /work/tools /work/spike
log "product list"
python3 /work/tools/gen_products.py --check
+log "resource XML against the SDK schema, settings cross-check"
+ciq_require_sdk
+python3 /work/tools/check_resources.py /work
+
for device in "$@"; do
build-app.sh debug "${device}"
build-app.sh release "${device}"