]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - scripts/release.sh
Use json for schema.org instead of tags
[github/Chocobozzz/PeerTube.git] / scripts / release.sh
1 #!/bin/bash
2
3 shutdown() {
4 # Get our process group id
5 PGID=$(ps -o pgid= $$ | grep -o [0-9]*)
6
7 # Kill it in a new new process group
8 setsid kill -- -$PGID
9 exit 0
10 }
11
12 trap "shutdown" SIGINT SIGTERM
13
14 if [ -z "$1" ]; then
15 echo "Need version as argument"
16 exit -1
17 fi
18
19 if [ -z $GITHUB_TOKEN ]; then
20 echo "Need GITHUB_TOKEN env set."
21 exit -1
22 fi
23
24 branch=$(git symbolic-ref --short -q HEAD)
25 if [ "$branch" != "develop" ]; then
26 echo "Need to be on develop branch."
27 exit -1
28 fi
29
30 version="v$1"
31 directory_name="peertube-$version"
32 zip_name="peertube-$version.zip"
33
34 cd ./client || exit -1
35 npm version --no-git-tag-version --no-commit-hooks $1 || exit -1
36
37 cd ../ || exit -1
38 npm version -f --no-git-tag-version --no-commit-hooks $1 || exit -1
39
40 git commit package.json client/package.json -m "Bumped to version $version" || exit -1
41 git tag -s -a "$version" -m "$version"
42
43 npm run build || exit -1
44 rm "./client/dist/stats.json" || exit -1
45
46 cd ../ || exit -1
47
48 ln -s "PeerTube" "$directory_name" || exit -1
49 zip -r "PeerTube/$zip_name" "$directory_name/CREDITS.md" "$directory_name/FAQ.md" \
50 "$directory_name/LICENSE" "$directory_name/README.md" \
51 "$directory_name/client/dist/" "$directory_name/client/yarn.lock" \
52 "$directory_name/client/package.json" "$directory_name/config" \
53 "$directory_name/dist" "$directory_name/package.json" \
54 "$directory_name/scripts" "$directory_name/support" \
55 "$directory_name/tsconfig.json" "$directory_name/yarn.lock" \
56 "$directory_name/server/" "$directory_name/shared/" \
57 || exit -1
58 rm "$directory_name" || exit -1
59
60 cd "PeerTube" || exit -1
61
62 git push origin --tag
63
64 github-release release --user chocobozzz --repo peertube --tag "$version" --name "$version"
65 github-release upload --user chocobozzz --repo peertube --tag "$version" --name "$zip_name" --file "$zip_name"
66
67 git push origin develop
68
69 # Update master branch
70 git checkout master
71 git rebase develop
72 git push origin master
73 git checkout develop
74