From 70f2fc45af8a0ea98e0e6f7b4254928dc7bfe317 Mon Sep 17 00:00:00 2001 From: St33v Date: Fri, 30 Jan 2026 18:16:03 +1100 Subject: systemd paths (build works, publish might) --- forge/script/publish-sotd.sh | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100755 forge/script/publish-sotd.sh (limited to 'forge/script/publish-sotd.sh') diff --git a/forge/script/publish-sotd.sh b/forge/script/publish-sotd.sh new file mode 100755 index 0000000..09248b4 --- /dev/null +++ b/forge/script/publish-sotd.sh @@ -0,0 +1,42 @@ +#!/usr/bin/env bash +set -euo pipefail + +ROOT="$HOME/dox/st33v.com" +OUT="$ROOT/forge/out" +SOTD="$ROOT/sotd" + +log() { printf '[sotd-publish] %s\n' "$*" >&2; } +die() { log "$*"; exit 1; } + +publish_marker="$OUT/PUBLISH" +[[ -f "$publish_marker" ]] || die "No publish marker: $publish_marker" + +# mkdir -p "$SOTD" + +# Find candidate release directories in OUT (ignore marker files) +release_dirs=() +for d in "$OUT"/*; do + [[ -d "$d" ]] || continue + release_dirs+=( "$d" ) +done + +[[ ${#release_dirs[@]} -eq 1 ]] || die "Expected exactly 1 release dir in $OUT, found ${#release_dirs[@]}" + +rel="${release_dirs[0]}" + +[[ -f "$rel/release.eno" ]] || die "Missing release.eno in $(basename "$rel")" + +shopt -s nullglob +wav_files=( "$rel"/*.wav ) +shopt -u nullglob +(( ${#wav_files[@]} > 0 )) || die "Missing .wav in $(basename "$rel")" + +dest="$SOTD/$(basename "$rel")" +[[ ! -e "$dest" ]] || die "Destination already exists: $dest" + +mv "$rel" "$dest" +log "Published: $dest" + +# Cleanup markers after successful publish +rm -f "$OUT/PUBLISH" "$OUT/BUILT" + -- cgit v1.3