sfcs/main.go

39 lines
805 B
Go
Raw Normal View History

2025-01-29 23:20:44 +01:00
package main
import (
"fmt"
"os"
2025-02-03 21:17:49 +01:00
"gitea.ligthert.net/golang/sfcs/client"
2025-01-29 23:20:44 +01:00
"gitea.ligthert.net/golang/sfcs/flags"
"gitea.ligthert.net/golang/sfcs/server"
"gitea.ligthert.net/golang/sfcs/vars"
)
func main() {
// Create a new instance of the Controller struct
vars := vars.Vars{}
// Create a new instance of the Flags struct
flags := flags.Flags{Vars: &vars}
err := flags.ParseFlags()
if err != nil {
fmt.Println(err)
os.Exit(1)
}
// Switch on the role
switch vars.Role {
case "scheduler":
server := server.Server{ListenAddress: vars.Address, ListenPort: vars.Port, Agents: make(map[string]*server.Agent)}
2025-01-29 23:20:44 +01:00
vars.Operator = &server
case "agent":
2025-02-03 21:17:49 +01:00
client := client.Client{ServerAddress: vars.Address, ServerPort: vars.Port}
vars.Operator = &client
2025-01-29 23:20:44 +01:00
}
vars.Operator.Start()
}