Initial commit
This commit is contained in:
commit
d4d2ac5d8f
8 changed files with 293 additions and 0 deletions
26
scripts/generate-diff.sh
Normal file
26
scripts/generate-diff.sh
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
#!/usr/bin/env bash
|
||||
# Required env vars: (none)
|
||||
# Optional env vars: PREV_SHA (if set, generates an incremental diff from that commit)
|
||||
set -euo pipefail
|
||||
|
||||
git fetch origin main --depth=100
|
||||
|
||||
if [ -n "${PREV_SHA:-}" ] && git cat-file -e "${PREV_SHA}^{commit}" 2>/dev/null; then
|
||||
echo "Generating incremental diff from ${PREV_SHA} to HEAD"
|
||||
git diff "${PREV_SHA}...HEAD" > pr.diff
|
||||
echo "incremental=true" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "Generating full diff from origin/main to HEAD"
|
||||
git diff origin/main...HEAD > pr.diff
|
||||
echo "incremental=false" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
|
||||
DIFF_SIZE=$(wc -c < pr.diff)
|
||||
echo "Diff size: ${DIFF_SIZE} bytes"
|
||||
|
||||
if [ "$DIFF_SIZE" -gt 12288 ]; then
|
||||
head -c 12288 pr.diff > pr_truncated.diff
|
||||
printf '\n\n[... diff truncated due to size ...]' >> pr_truncated.diff
|
||||
mv pr_truncated.diff pr.diff
|
||||
echo "truncated=true" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
Loading…
Add table
Add a link
Reference in a new issue