chore: fix assets install - use hash

This commit is contained in:
Jesús Pérez 2026-03-13 23:28:41 +00:00
parent ac8f7f91ec
commit 4df5e4bc9f
Signed by: jesus
GPG Key ID: 9F243E355E0BC939

View File

@ -112,10 +112,35 @@ def main [] {
}
mkdir $data_dir
cp -r $templates_src $"($data_dir)/templates"
cp -r $public_src $"($data_dir)/public"
print $"✓ assets ($data_dir)/"
let asset_dirs = [$templates_src $public_src]
mut updated = 0
mut skipped = 0
for asset_dir in $asset_dirs {
let dir_name = ($asset_dir | path basename)
let dest_base = $"($data_dir)/($dir_name)"
mkdir $dest_base
for src_file in (glob $"($asset_dir)/**/*" | where { |f| ($f | path type) == "file" }) {
let rel = ($src_file | str replace $"($asset_dir)/" "")
let dest_file = $"($dest_base)/($rel)"
let dest_parent = ($dest_file | path dirname)
mkdir $dest_parent
let needs_update = if ($dest_file | path exists) {
(open --raw $src_file | hash sha256) != (open --raw $dest_file | hash sha256)
} else {
true
}
if $needs_update {
cp $src_file $dest_file
$updated = $updated + 1
} else {
$skipped = $skipped + 1
}
}
}
print $"✓ assets ($data_dir)/ updated=($updated) unchanged=($skipped)"
# ── 5. Config skeleton + global NATS topology ─────────────────────────────
let streams_default = $"($repo_root)/install/resources/streams.json"