@@ -47,28 +47,6 @@ func makeStatusScreen(_ fyne.Window, g *Gui) fyne.CanvasObject {
47
47
})
48
48
deployButton .Disable ()
49
49
50
- startButton := widget .NewButton ("Start" , func () {
51
- g .WaitDialog .ShowWaitDialog ()
52
- var payloadStruct = types.RequestDeployPayload {
53
- Command : "start" ,
54
- }
55
- payload , err := json .Marshal (payloadStruct )
56
- if err != nil {
57
- log .Println ("ERROR when executing payload:" , err .Error ())
58
- g .showErrorDialog (err , binding .NewDataListener (func () {}))
59
- return
60
- }
61
- out , err := httph .ExecHttpRequestBySSHTunnel (g .sshClient , types .SEKIN_EXECUTE_ENDPOINT , "POST" , payload )
62
- if err != nil {
63
- log .Println ("ERROR when executing payload:" , err .Error ())
64
- g .showErrorDialog (err , binding .NewDataListener (func () {}))
65
- return
66
- }
67
- log .Println ("START out:" , string (out ))
68
- g .WaitDialog .HideWaitDialog ()
69
- })
70
- startButton .Disable ()
71
-
72
50
checkInterxStatus := func () {
73
51
_ , err := httph .GetInterxStatus (g .Host .IP , strconv .Itoa (types .DEFAULT_INTERX_PORT ))
74
52
if err != nil {
@@ -114,6 +92,7 @@ func makeStatusScreen(_ fyne.Window, g *Gui) fyne.CanvasObject {
114
92
sekaiStatusCheck .Set (true )
115
93
}
116
94
}
95
+ startButton := widget .NewButton ("Start" , func () {})
117
96
refresh := func () {
118
97
g .WaitDialog .ShowWaitDialog ()
119
98
checkInterxStatus ()
@@ -132,15 +111,19 @@ func makeStatusScreen(_ fyne.Window, g *Gui) fyne.CanvasObject {
132
111
// TODO: first maybe we should try to restart first if shidai is not running
133
112
var deployButtonCheck bool
134
113
135
- if ! shidaiCheck && ! sekaiCheck {
114
+ if ! shidaiCheck {
136
115
deployButtonCheck = true
137
116
log .Println ("1st deploy check set" , deployButtonCheck )
138
-
117
+ } else {
118
+ deployButtonCheck = false
139
119
}
140
120
if ! deployButtonCheck {
141
- if shidaiInfra && ( ! sekaiInfra && ! interxInfra ) {
121
+ if shidaiInfra && sekaiInfra && interxInfra && ( shidaiCheck && ! sekaiCheck && ! interxCheck ) {
142
122
startButton .Enable ()
143
- log .Println ("2st deploy check set" , deployButtonCheck )
123
+ log .Println ("start button enabled" )
124
+ } else {
125
+ startButton .Disable ()
126
+ log .Println ("start button disabled" )
144
127
}
145
128
}
146
129
@@ -151,7 +134,28 @@ func makeStatusScreen(_ fyne.Window, g *Gui) fyne.CanvasObject {
151
134
152
135
defer g .WaitDialog .HideWaitDialog ()
153
136
}
154
-
137
+ startButton .OnTapped = func () {
138
+ g .WaitDialog .ShowWaitDialog ()
139
+ var payloadStruct = types.RequestDeployPayload {
140
+ Command : "start" ,
141
+ }
142
+ payload , err := json .Marshal (payloadStruct )
143
+ if err != nil {
144
+ log .Println ("ERROR when executing payload:" , err .Error ())
145
+ g .showErrorDialog (err , binding .NewDataListener (func () {}))
146
+ return
147
+ }
148
+ out , err := httph .ExecHttpRequestBySSHTunnel (g .sshClient , types .SEKIN_EXECUTE_ENDPOINT , "POST" , payload )
149
+ if err != nil {
150
+ log .Println ("ERROR when executing payload:" , err .Error ())
151
+ g .showErrorDialog (err , binding .NewDataListener (func () {}))
152
+ return
153
+ }
154
+ log .Println ("START out:" , string (out ))
155
+ g .WaitDialog .HideWaitDialog ()
156
+ refresh ()
157
+ }
158
+ startButton .Disable ()
155
159
refreshButton := widget .NewButton ("Refresh" , func () {
156
160
refresh ()
157
161
})
0 commit comments