-
Notifications
You must be signed in to change notification settings - Fork 0
/
deploy.sh
executable file
·91 lines (79 loc) · 1.73 KB
/
deploy.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
#! /bin/bash
appid=dev-figgo
alert() {
cat << EOF
Olá, você está preste a realizar um novo deploy do figgo.
Este script irá auxiliá-lo nesta tarefa!
[Enter para continuar]
EOF
read
if [ ${appid} == "figgo-octa" ]
then
cat << EOF
Você está prestes a fazer um deploy no ambiente de produção.
Para cancelar pressione CTRL+C, para continuar Enter.
EOF
read
fi
return 0
}
update_version() {
if [ ${appid} == "dev-figgo" ]
then
version=$(date +%Y%m%d-%H%M)
else
actual=$(cat version)
echo "Versão atual $actual"
read -p "Digite a nova versão (ou enter para mesma versao): " version
fi
if [ ${version} ]
then
echo ${version} > version
fi
return $?
}
build_project() {
/bin/bash ctpx clean && \
mvn clean test war:exploded && \
return $?
}
adjust_config() {
sed -i "/^ APPLICATION/d" target/deploy/WEB-INF/application.config && \
sed -i "s/^ #APPLICATION/ APPLICATION/g" target/deploy/WEB-INF/application.config
if [ $? -eq 0 ] && [ ${appid} == "dev-figgo" ]
then
sed -i "s/figgo.com.br/oggif.com.br/g" target/deploy/WEB-INF/application.config
fi
return $?
}
deploy_app() {
version=$(cat version)
${GAE_SDK_HOME}/bin/appcfg.sh -A ${appid} -V ${version} update target/deploy
return $?
}
change_default() {
read -p "Deseja alterar a versão default do Figgo para a nova versão? [s/n] " resp
if [ $resp = "s" ]; then
version=$(cat version)
${GAE_SDK_HOME}/bin/appcfg.sh -A ${appid} -V ${version} set_default_version target/deploy
return $?
else
return 0
fi
}
if [ $# -eq 2 ] && [ $1 == "--app" ]
then
appid=$2
fi
alert && \
build_project && \
update_version && \
adjust_config && \
deploy_app && \
change_default
res=$?
if [ ${appid} == "dev-figgo" ]
then
git checkout -- version
fi
exit ${res}