release.sh 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. set -e
  2. if [[ -z $1 ]]; then
  3. echo "Enter new version: "
  4. read VERSION
  5. else
  6. VERSION=$1
  7. fi
  8. read -p "Releasing $VERSION - are you sure? (y/n) " -n 1 -r
  9. echo
  10. if [[ $REPLY =~ ^[Yy]$ ]]; then
  11. echo "Releasing $VERSION ..."
  12. if [[ -z $SKIP_TESTS ]]; then
  13. npm run lint
  14. npm run flow
  15. npm run test:cover
  16. npm run test:e2e
  17. npm run test:ssr
  18. fi
  19. # Sauce Labs tests has a decent change of failing
  20. # so we usually manually run them before running the release script.
  21. # if [[ -z $SKIP_SAUCE ]]; then
  22. # export SAUCE_BUILD_ID=$VERSION:`date +"%s"`
  23. # npm run test:sauce
  24. # fi
  25. # build
  26. VERSION=$VERSION npm run build
  27. # update packages
  28. cd packages/vue-template-compiler
  29. npm version $VERSION
  30. if [[ -z $RELEASE_TAG ]]; then
  31. npm publish
  32. else
  33. npm publish --tag $RELEASE_TAG
  34. fi
  35. cd -
  36. cd packages/vue-server-renderer
  37. npm version $VERSION
  38. if [[ -z $RELEASE_TAG ]]; then
  39. npm publish
  40. else
  41. npm publish --tag $RELEASE_TAG
  42. fi
  43. cd -
  44. # commit
  45. git add -A
  46. git add -f \
  47. dist/*.js \
  48. packages/vue-server-renderer/basic.js \
  49. packages/vue-server-renderer/build.js \
  50. packages/vue-server-renderer/server-plugin.js \
  51. packages/vue-server-renderer/client-plugin.js \
  52. packages/vue-template-compiler/build.js
  53. git commit -m "build: build $VERSION"
  54. npm version $VERSION --message "build: release $VERSION"
  55. # publish
  56. git push origin refs/tags/v$VERSION
  57. git push
  58. if [[ -z $RELEASE_TAG ]]; then
  59. npm publish
  60. else
  61. npm publish --tag $RELEASE_TAG
  62. fi
  63. fi