Skip to content

Commit 0293331

Browse files
committed
Update release script
1 parent 364f6b2 commit 0293331

1 file changed

Lines changed: 27 additions & 8 deletions

File tree

scripts/release.sh

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -324,16 +324,35 @@ NODE
324324
# Ensure we're in the project root (parent of scripts directory)
325325
cd "$(dirname "$0")/.."
326326

327-
# Check if working directory is clean (only enforced for real runs)
327+
# Files this script modifies and commits as part of the release
328+
RELEASE_MANAGED_FILES=(
329+
"CHANGELOG.md"
330+
"package.json"
331+
"package-lock.json"
332+
"README.md"
333+
"docs/SKILLS.md"
334+
"docs/GETTING_STARTED.md"
335+
"server.json"
336+
)
337+
338+
has_unmanaged_changes() {
339+
local exclude_args=()
340+
for f in "${RELEASE_MANAGED_FILES[@]}"; do
341+
exclude_args+=(":(exclude)$f")
342+
done
343+
! git diff-index --quiet HEAD -- . "${exclude_args[@]}"
344+
}
345+
346+
# Check if working directory is clean outside release-managed files
328347
if ! $DRY_RUN; then
329-
if ! git diff-index --quiet HEAD --; then
330-
echo "❌ Error: Working directory is not clean."
331-
echo "Please commit or stash your changes before creating a release."
348+
if has_unmanaged_changes; then
349+
echo "❌ Error: Working directory has uncommitted changes outside release-managed files."
350+
echo "Please commit or stash those changes before creating a release."
332351
exit 1
333352
fi
334353
else
335-
if ! git diff-index --quiet HEAD --; then
336-
echo "⚠️ Dry-run: working directory is not clean (continuing)."
354+
if has_unmanaged_changes; then
355+
echo "⚠️ Dry-run: working directory has unmanaged changes (continuing)."
337356
fi
338357
fi
339358

@@ -444,9 +463,9 @@ if [[ "$SKIP_VERSION_UPDATE" == "false" ]]; then
444463
echo ""
445464
echo "📦 Committing version changes..."
446465
if [[ -f server.json ]]; then
447-
run git add package.json package-lock.json README.md docs/SKILLS.md CHANGELOG.md server.json
466+
run git add package.json package-lock.json README.md docs/SKILLS.md docs/GETTING_STARTED.md CHANGELOG.md server.json
448467
else
449-
run git add package.json package-lock.json README.md docs/SKILLS.md CHANGELOG.md
468+
run git add package.json package-lock.json README.md docs/SKILLS.md docs/GETTING_STARTED.md CHANGELOG.md
450469
fi
451470
run git commit -m "Release v$VERSION"
452471
else

0 commit comments

Comments
 (0)