Skip to content

Commit ada0249

Browse files
committed
feat: add validator
1 parent 8ad589d commit ada0249

1 file changed

Lines changed: 45 additions & 0 deletions

File tree

scripts/validate-module.sh

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
#!/usr/bin/env bash
2+
set -euo pipefail
3+
4+
error_exit() {
5+
echo "ERROR: $1"
6+
exit 1
7+
}
8+
9+
need_file() {
10+
local file="$1"
11+
[ -f "$file" ] || error_exit "Missing file: $file"
12+
}
13+
14+
need_dir() {
15+
local dir="$1"
16+
[ -d "$dir" ] || error_exit "Missing folder: $dir"
17+
}
18+
19+
echo "Validating module files"
20+
21+
need_file "module.prop"
22+
need_file "customize.sh"
23+
need_file "post-fs-data.sh"
24+
need_file "service.sh"
25+
need_file "uninstall.sh"
26+
need_file "scripts/package.sh"
27+
need_file "scripts/check-theme-size.sh"
28+
need_file "themes/default/theme.json"
29+
need_file "themes/default/design-tokens.json"
30+
need_file "customer-options/options.json"
31+
32+
need_dir "system_ext/media/themeInner"
33+
need_dir "themes/default/wallpapers"
34+
need_dir "themes/default/icons"
35+
need_dir "themes/default/lockscreen"
36+
need_dir "themes/default/homescreen"
37+
need_dir "themes/default/sounds"
38+
need_dir "themes/default/previews"
39+
need_dir "docs"
40+
41+
grep -q "id=coloros_themes_rock" module.prop || error_exit "Wrong module id"
42+
grep -q "ColorOS Themes Rock" module.prop || error_exit "Module name missing"
43+
grep -q "Default Rock Premium" themes/default/theme.json || error_exit "Default theme missing"
44+
45+
echo "Module validation passed"

0 commit comments

Comments
 (0)