diff --git a/.eslintignore b/.eslintignore index b5857f9..f2e355f 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,3 +1,4 @@ **/index.js **/dist/** packages/cms-infra/extensions/** +packages/cms-infra/extensions/** diff --git a/.husky/pre-push b/.husky/pre-push index f9c08bc..e791bcc 100755 --- a/.husky/pre-push +++ b/.husky/pre-push @@ -1,9 +1,32 @@ - # Check if we are pushing a tag while read local_ref local_sha remote_ref remote_sha do if [[ "$remote_ref" == refs/tags/v* ]]; then TAG=${remote_ref#refs/tags/} - echo "🏷️ Tag detected: $TAG. (Note: Version sync is handled by CI/CD)" + echo "🏷️ Tag detected: $TAG, ensuring versions are synced..." + + # Run sync script + pnpm sync-versions "$TAG" + + # Check for changes in relevant files + SYNC_FILES="package.json packages/*/package.json apps/*/package.json .env.example" + CHANGES=$(git status --porcelain $SYNC_FILES) + + if [[ -n "$CHANGES" ]]; then + echo "📝 Version sync made changes. Integrating into tag..." + + # Stage and commit + git add $SYNC_FILES + git commit -m "chore: sync versions to $TAG [skip ci]" --no-verify + + # Force update the local tag to point to the new commit + git tag -f "$TAG" > /dev/null + + echo "✅ Tag $TAG has been updated locally with synced versions." + echo "🚀 Please run your push command again." + exit 1 # Abort push to let user re-push the corrected tag + else + echo "✨ Versions already in sync for $TAG." + fi fi done