short-url/public/vendor/seiyria-bootstrap-slider/scripts/release.sh

53 lines
1.3 KiB
Bash
Raw Permalink Normal View History

2020-07-01 08:57:45 +00:00
#!/bin/bash
# Check if required CLI tools are available
if ! [ -x "$(command -v grunt)" ]; then
echo "Error: grunt-cli is not installed. Please type 'npm install grunt-cli -g' to install" >&2
exit 1
fi
# Validate arguments
versionBumpType=${1:-patch};
if [ "$versionBumpType" != "major" ] && [ "$versionBumpType" != "minor" ] && [ "$versionBumpType" != "patch" ]; then
echo "Invalid version bump argument: ${versionBumpType}. Option must be one of the following: major, minor, patch" >&2
exit 1
else
echo "Publishing and bumping with ${versionBumpType} version bump"
fi
echo "Running version bump + publish script..."
echo "."
echo "."
echo "Generating /dist and push changes + tags to Github remote 'origin'"
# Checkout master branch
git checkout master
# Version bump
grunt bump-only:"$versionBumpType"
# Generate new dist
grunt prod
# Generate new index.html page
grunt template
# Force add dist contents
git add dist/* --force
# Commit new release tag
grunt bump-commit
# Push commits/tags to master branch on remote 'origin'
git push origin master:master && git push --tags
## Update Github.io page
sh ./scripts/update-gh-pages.sh
## Publish to NPM
echo "."
echo "."
echo "Publishing to NPM"
echo "."
echo "."
npm publish
# Notify script is complete
echo "."
echo "."
echo "Script complete"
echo ""