8e4e45047d
This container's network is configured based on parameters in the config file. If configured correctly, this will allow the pipeline script to speak to the cursorius server over the pipeline api.
44 lines
1.1 KiB
Go
44 lines
1.1 KiB
Go
package main
|
|
|
|
import (
|
|
"os"
|
|
|
|
"git.ohea.xyz/cursorius/server/config"
|
|
"git.ohea.xyz/cursorius/server/jobscheduler"
|
|
"git.ohea.xyz/cursorius/server/listen"
|
|
"git.ohea.xyz/cursorius/server/poll"
|
|
"github.com/op/go-logging"
|
|
)
|
|
|
|
var log = logging.MustGetLogger("cursorius-server")
|
|
|
|
func main() {
|
|
var format = logging.MustStringFormatter(
|
|
`%{color}%{time:15:04:05.000} %{level:.4s}:%{color:reset} %{message}`,
|
|
)
|
|
|
|
backend := logging.NewLogBackend(os.Stderr, "", 0)
|
|
backendFormatter := logging.NewBackendFormatter(backend, format)
|
|
backendLeveled := logging.AddModuleLevel(backendFormatter)
|
|
backendLeveled.SetLevel(logging.DEBUG, "")
|
|
|
|
logging.SetBackend(backendLeveled)
|
|
|
|
log.Info("Starting cursorius-server")
|
|
|
|
configData, err := config.GetConfig()
|
|
if err != nil {
|
|
log.Errorf("Could not get configuration: %v", err)
|
|
}
|
|
|
|
runCh, registerCh, err := jobscheduler.StartJobScheduler(configData.Config.Jobs, configData.Config.Runners)
|
|
if err != nil {
|
|
log.Errorf("Could not start runner: %v", err)
|
|
}
|
|
|
|
poll.StartPolling(configData.Config, runCh)
|
|
|
|
listen.Listen(configData.Config.Address, configData.Config.Port, runCh, registerCh, configData.Config)
|
|
|
|
}
|