mirror of
https://github.com/Warky-Devs/artemis-kit.git
synced 2026-11-10 06:18:47 +00:00
RELEASING: Releasing 1 package(s)
Releases: @warkypublic/artemis-kit@1.1.1 [skip ci]
This commit is contained in:
1 parent
b137801a22
commit
e01f38ab39
5 files changed
+86
-1
No files matched your search
Executable
+54
@@ -0,0 +1,54 @@
|
||||
#!/usr/bin/env bash
|
||||
# Creates a changeset from commits since the last one, versions the
|
||||
# package, tags the result, and pushes the tag to the git remote.
|
||||
set -euo pipefail
|
||||
|
||||
BUMP="${BUMP:-patch}"
|
||||
case "$BUMP" in
|
||||
patch|minor|major) ;;
|
||||
*) echo "BUMP must be patch, minor, or major (got: $BUMP)" >&2; exit 1 ;;
|
||||
esac
|
||||
|
||||
PACKAGE_NAME=$(node -p "require('./package.json').name")
|
||||
|
||||
LAST_CHANGESET_COMMIT=$(git log -1 --format=%H -- '.changeset/*.md' || true)
|
||||
if [ -n "$LAST_CHANGESET_COMMIT" ]; then
|
||||
RANGE="${LAST_CHANGESET_COMMIT}..HEAD"
|
||||
else
|
||||
RANGE="HEAD"
|
||||
fi
|
||||
|
||||
COMMITS=$(git log --format='- %s' "$RANGE" -- . ':!.changeset')
|
||||
if [ -z "$COMMITS" ]; then
|
||||
echo "No commits found since the last changeset ($RANGE); nothing to release." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
CHANGESET_FILE=".changeset/release-$(date +%Y%m%d%H%M%S).md"
|
||||
{
|
||||
echo "---"
|
||||
echo "\"$PACKAGE_NAME\": $BUMP"
|
||||
echo "---"
|
||||
echo
|
||||
echo "$COMMITS"
|
||||
} > "$CHANGESET_FILE"
|
||||
|
||||
echo "Created $CHANGESET_FILE:"
|
||||
cat "$CHANGESET_FILE"
|
||||
|
||||
pnpm changeset version
|
||||
|
||||
NEW_VERSION=$(node -p "require('./package.json').version")
|
||||
TAG="v${NEW_VERSION}"
|
||||
|
||||
if git rev-parse "$TAG" >/dev/null 2>&1; then
|
||||
echo "Tag $TAG already exists" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
git add -A
|
||||
git commit -m "RELEASING: Releasing 1 package(s)"
|
||||
git tag "$TAG"
|
||||
git push origin HEAD "$TAG"
|
||||
|
||||
echo "Released and pushed $TAG"
|
||||
Reference in new issue
Block a user