36 lines
993 B
Go
36 lines
993 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
socketio "github.com/googollee/go-socket.io"
|
|
)
|
|
|
|
func registerUpdateChannel(server *socketio.Server) {
|
|
|
|
server.OnEvent("/", "subscribe:update", func(s socketio.Conn) {
|
|
s.Join("update")
|
|
s.Emit("updateLogs", "👋 Subscribed to update channel")
|
|
fmt.Println("📺", s.ID(), "joined update room")
|
|
})
|
|
|
|
// copy files based on the target passed over
|
|
server.OnEvent("/", "update", func(s socketio.Conn, target string) {
|
|
server.BroadcastToRoom("/", "update", "updateLogs",
|
|
fmt.Sprintf("🚀 Copying latest build to %v", target))
|
|
copyBuild(server, target)
|
|
})
|
|
|
|
// update the server
|
|
// server.OnEvent("/", "update", func(s socketio.Conn, target string) {
|
|
// msg := fmt.Sprintf("🔧 Running updateServer on: %s", target)
|
|
// server.BroadcastToRoom("/update", "update", "updateLogs", msg)
|
|
|
|
// })
|
|
|
|
server.OnEvent("/", "unsubscribe:update", func(s socketio.Conn) {
|
|
s.Leave("update")
|
|
s.Emit("updateLogs", "👋 Unsubscribed from update logs")
|
|
})
|
|
}
|