-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathserver_deploy.go
52 lines (41 loc) · 1.06 KB
/
server_deploy.go
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
package sync
func (server *Server) Deploy() {
defer func() {
recover := recover()
ShellErrorHandler(recover)
}()
server.Init()
if server.runConfiguration.Exec {
server.RunExec("startup")
}
if server.runConfiguration.Filesystem {
server.DeployFilesystem()
}
if server.runConfiguration.Database {
server.DeployDatabases()
}
if server.runConfiguration.Exec {
server.RunExec("finish")
}
waitGroup.Wait()
}
func (server *Server) DeployFilesystem() {
// check for generate-stubs option (not allowed)
for _, filesystem := range server.Filesystem {
if filesystem.Options.GenerateStubs {
Logger.FatalExit(2, "Generate Stubs is not allowed for deployment")
}
}
for _, filesystem := range server.Filesystem {
filesystem.ApplyDefaults(server)
Logger.Main("Starting deploy of %s", filesystem.String( "deploy"))
filesystem.Deploy()
}
}
func (server *Server) DeployDatabases() {
for _, database := range server.Database {
database.ApplyDefaults(server)
Logger.Main("Starting deploy of %s", database.String("deploy"))
database.Deploy()
}
}