-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdeploy
executable file
·104 lines (90 loc) · 2.21 KB
/
deploy
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
#! /bin/bash
statusMessage()
{
normal=$(tput sgr0)
success=$(tput setaf 2)
warning=$(tput setaf 3)
failure=$(tput setaf 1)
spaces=$( expr $(tput cols) - ${#2} + 8 )
echo -n $2
case $1 in
0 ) printf "%*s\n" $spaces "${failure}[Failed]${normal}";;
1 ) printf "%*s\n" $spaces "${success}[Success]${normal}";;
2 ) printf "%*s\n" $spaces "${warning}[Warning]${normal}";;
esac
}
declare -a repos;
repos=("")
read -p "Which kind of enviroment are you about to deploy? dev/prod? " deploymentType
while true
do
case $deploymentType in
dev ) deploymentType=dev
break;;
prod ) deploymentType=prod
break;;
* ) read -p "Please enter either dev or prod " deploymentType;;
esac
done
# Create temporary folder.
if mkdir .deployment-ftd; then
cd .deployment-ftd
statusMessage 1 "Created tempory folder"
else
statusMessage 0 "Failed to create temporary folder"
exit 0
fi
# Clone all repos.
for i in ${repos[@]}
do
if git clone $i; then
statusMessage 1 "Cloned repo ${i}"
else
statusMessage 0 "Failed to clone repo ${i}"
exit 0
fi
done
# Install Node dependencies.
cd the-game/server
if npm install; then
statusMessage 1 "Node Dependencies installed"
cd ../..
else
statusMessage 0 "Failed to install Node dependencies"
cd ../..
exit 0
fi
# Install Symfony dependencies.
cd backend
if php composer.phar install; then
statusMessage 1 "Symfony dependencies"
cd ..
else
statusMessage 0 "Failed to install Symfony dependency"
cd ..
exit 0
fi
# Create symbolic links.
if ln -s web/ingame the-game/client; then
statusMessage 1 "Created symbolic link to game"
else
statusMessage 0 "Failed to create symbolic link to game"
exit 0
fi
if ln -s web/rest backend/web; then
statusMessage 1 "Created symbolic link to game"
else
statusMessage 0 "Failed to create symbolic link to game"
exit 0
fi
# Move build into place.
cd ..
if mv .deployment-ftd fantasytd; then
statusMessage 1 "Moved build into place"
else
statusMessage 0 "Failed to move build into place"
exit 0
fi
# Congratz on build.
statusMessage 1 "Succesfully deployed FantasyTD"
exit 1