This repository has been archived by the owner on Jun 15, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 4
/
run-yarn.sh
executable file
·64 lines (51 loc) · 1.79 KB
/
run-yarn.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
#!/bin/bash
verifica_git() {
if [[ ! -d ".git" ]]; then
echo -e "\033[31mERRO\033[0m Diretório atual não é um repositório git!"
exit 1
fi
}
verifica_diretorio() {
DIR=$(pwd | rev | cut -d'/' -f1 | rev)
if [[ "$DIR" != "$1" ]]; then
echo -e "\033[31mERRO\033[0m Diretório atual não é o \033[1m$1\033[0m!"
exit 1
fi
verifica_git
}
retorna_branch() {
# shellcheck disable=SC2155
local branch=$(git branch | grep '^*' | cut -d ' ' -f2)
if [[ -z "$branch" ]]; then
echo -e "\033[31mERRO\033[0m Não foi possivel configurar a variável \033[1m$1\033[0m!"
exit 1
else
echo "$branch"
fi
}
if [[ ! (( "$1" == "build" ) || ( "$1" == "serve" )) ]]; then
echo -e "\033[31mERRO\033[0m Parâmetro inválido!"
echo -e " Coloque \033[1mbuild\033[0m ou \033[1mserve\033[0m."
exit 1
fi
verifica_diretorio "sapl-frontend"
BRANCH_FRONTEND="$(retorna_branch "BRANCH_FRONTEND")"
# shellcheck disable=SC2164
cd ../sapl > /dev/null 2>&1
if [[ ! $? -eq 0 ]]; then
echo "\033[31mERRO\033[0m Os diretórios \033[1msapl\033[0m e \033[1msapl-frontend\033[0m devem ter o mesmo diretório raiz."
exit 1
fi
verifica_diretorio "sapl"
BRANCH_BACKEND="$(retorna_branch "BRANCH_BACKEND")"
cd ../sapl-frontend > /dev/null 2>&1
if [[ "$BRANCH_FRONTEND" == "$BRANCH_BACKEND" ]]; then
echo -e "\033[33mEXECUTANDO\033[0m \033[1myarn run $1\033[1m."
yarn run "$1"
echo -e "\033[32mSUCESSO\033[0m $1 realizado com sucesso."
else
echo -e "\033[31mERRO\033[0m $1 não realizada porque as branchs dos dois repositórios são diferentes."
echo -e " Branch do Frontend: \033[1m$BRANCH_FRONTEND\033[0m"
echo -e " Branch do Backend: \033[1m$BRANCH_BACKEND\033[0m"
echo -e " Para que a operação seja feita, coloque os dois repositórios na mesma branch."
fi