#!/usr/bin/env zsh # releases.atom.zsh -- releases.atom generator # Copyright (C) 2022 Sergey Matveev set -e [[ -n "$ATOM_ID" ]] [[ -n "$NAME" ]] [[ -n "$BASE_URL" ]] [[ -n "$AUTHOR_EMAIL" ]] export TZ=UTC zmodload -F zsh/datetime b:strftime UPDATED=$(strftime %FT%T) ATOM=releases.atom tmp=`mktemp` trap "rm -f $tmp" HUP PIPE INT QUIT TERM EXIT cat > $tmp < $NAME releases urn:uuid:$ATOM_ID $UPDATED $AUTHOR_EMAIL EOF zmodload -F zsh/stat b:zstat for meta (*.meta4(om)) { fn=$meta:r title=${meta%.tar.*} updated=$(zstat -F %FT%T +mtime $meta) cat >> $tmp < $title $BASE_URL/$fn $updated EOF } echo "" >> $tmp size_our=$(zstat +size $tmp) [[ -e $ATOM ]] && size_their=$(zstat +size $ATOM) || size_their=0 [[ $size_our = $size_their ]] || mv $tmp $ATOM