|
1 | 1 | #!/bin/bash
|
2 | 2 |
|
3 |
| -echo "Select a version to release (input number):" |
| 3 | +echo "Select a option to release (input a serial number):" |
4 | 4 | echo
|
5 | 5 |
|
6 | 6 | select VERSION in patch minor major "Specific Version"
|
7 | 7 | do
|
8 | 8 | echo
|
9 |
| - if [[ $REPLY == 4 ]]; then |
10 |
| - read -p "Enter a specific version: " -r VERSION |
11 |
| - echo |
12 |
| - if [[ -z $REPLY ]]; then |
13 |
| - VERSION=$REPLY |
| 9 | + if [[ $REPLY =~ ^[1-4]$ ]]; then |
| 10 | + if [[ $REPLY == 4 ]]; then |
| 11 | + read -p "Enter a specific version: " -r VERSION |
| 12 | + echo |
| 13 | + if [[ -z $REPLY ]]; then |
| 14 | + VERSION=$REPLY |
| 15 | + fi |
14 | 16 | fi
|
15 |
| - fi |
16 | 17 |
|
17 |
| - read -p "Releasing @$VERSION version - are you sure? (y/n) " -n 1 -r |
18 |
| - echo |
| 18 | + read -p "Release $VERSION - are you sure? (y/n) " -n 1 -r |
| 19 | + echo |
19 | 20 |
|
20 |
| - if [[ $REPLY =~ ^[Yy]$ ]]; then |
21 |
| - # pre release task |
22 |
| - npm run lint |
23 |
| - npm run test |
24 |
| - |
25 |
| - # bump version |
26 |
| - npm version $VERSION |
27 |
| - NEW_VERSION=$(node -p "require('./package.json').version") |
28 |
| - echo Releasing ${NEW_VERSION} ... |
29 |
| - |
30 |
| - # npm release |
31 |
| - npm publish |
32 |
| - echo "✅ released to npm" |
33 |
| - |
34 |
| - # github release |
35 |
| - git add CHANGELOG.md |
36 |
| - git commit -m "chore: changelog" |
37 |
| - git push |
38 |
| - git push origin refs/tags/v${NEW_VERSION} |
39 |
| - echo "✅ released to Github" |
| 21 | + if [[ $REPLY =~ ^[Yy]$ ]]; then |
| 22 | + # pre release task |
| 23 | + npm run lint |
| 24 | + npm run test |
| 25 | + |
| 26 | + # bump version |
| 27 | + npm version $VERSION |
| 28 | + NEW_VERSION=$(node -p "require('./package.json').version") |
| 29 | + echo Releasing ${NEW_VERSION} ... |
| 30 | + |
| 31 | + # npm release |
| 32 | + npm publish |
| 33 | + echo "✅ Released to npm." |
| 34 | + |
| 35 | + # github release |
| 36 | + git add CHANGELOG.md |
| 37 | + git commit -m "chore: changelog" |
| 38 | + git push |
| 39 | + git push origin refs/tags/v${NEW_VERSION} |
| 40 | + echo "✅ Released to Github." |
| 41 | + else |
| 42 | + echo Cancelled |
| 43 | + fi |
| 44 | + break |
40 | 45 | else
|
41 |
| - echo Cancelled |
| 46 | + echo Invalid \"${REPLY}\" |
| 47 | + echo "To continue, please input a serial number(1-4) of an option." |
| 48 | + echo |
42 | 49 | fi
|
43 |
| - break |
44 | 50 | done
|
45 | 51 |
|
0 commit comments