1+ #! /bin/bash
2+
3+ set -ex
4+
5+ VERSION=" $1 "
6+
7+ if [[ -z " $VERSION " ]]; then
8+ echo " Usage: ./release_version.sh <version>"
9+ exit 1
10+ fi
11+
12+ echo " Version: $VERSION "
13+
14+ IMAGE=sinusbot/docker
15+
16+ read -p " Pull from git? [Y/n] " -n 1 -r
17+ echo
18+ if [[ $REPLY =~ ^([Yy]| ) ]] || [[ -z $REPLY ]]; then
19+ git pull
20+ fi
21+
22+ echo " Replacing version in files..."
23+ sed -i " s|^SINUSBOT_VERSION=.*|SINUSBOT_VERSION=\" $VERSION \" |g" discord/install.sh
24+ sed -i " s|^LABEL version.*|LABEL version=\" $VERSION \" |g" discord/Dockerfile
25+ sed -i " s|^FROM sinusbot.*|FROM sinusbot/docker:$VERSION -discord|g" Dockerfile
26+ sed -i " s|^LABEL version.*|LABEL version=\" $VERSION \" |g" Dockerfile
27+
28+ read -p " Show diff? [y/N] " -n 1 -r
29+ echo
30+ if [[ $REPLY =~ ^([Yy]) ]]; then
31+ git diff
32+ fi
33+
34+ read -p " Commit changes? [Y/n] " -n 1 -r
35+ echo
36+ if [[ $REPLY =~ ^([Yy]| ) ]] || [[ -z $REPLY ]]; then
37+ git add -A
38+ git commit -m " v$VERSION "
39+ git tag -a " v$VERSION " -m " v$VERSION "
40+ fi
41+
42+ read -p " Push to git? [Y/n] " -n 1 -r
43+ echo
44+ if [[ $REPLY =~ ^([Yy]| ) ]] || [[ -z $REPLY ]]; then
45+ git push
46+ git push --tags
47+ fi
48+
49+ read -p " Build images? [Y/n] " -n 1 -r
50+ echo
51+ if [[ $REPLY =~ ^([Yy]| ) ]] || [[ -z $REPLY ]]; then
52+ docker build -t " $IMAGE " :" $VERSION " -discord discord
53+ docker build -t " $IMAGE " :" $VERSION " .
54+
55+ read -p " Push the builds to docker? (requires docker login) [Y/n] " -n 1 -r
56+ echo
57+ if [[ $REPLY =~ ^([Yy]| ) ]] || [[ -z $REPLY ]]; then
58+ docker push " $IMAGE " :" $VERSION " -discord
59+ docker push " $IMAGE " :" $VERSION "
60+ fi
61+ fi
0 commit comments