main.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. package main
  2. /*
  3. 1. 算法清理可以用仿真云平台的调度系统
  4. */
  5. import (
  6. "cicv-data-closedloop/amd64/dispatch_server/package/entity"
  7. "cicv-data-closedloop/amd64/dispatch_server/package/handler"
  8. "cicv-data-closedloop/common/config/c_log"
  9. "cicv-data-closedloop/common/config/c_oss"
  10. commonHandler "cicv-data-closedloop/common/gin/handler"
  11. "cicv-data-closedloop/common/util"
  12. _ "embed"
  13. "github.com/gin-gonic/gin"
  14. "os"
  15. )
  16. type ApplicationYamlStruct struct {
  17. ApplicationName string `yaml:"application"`
  18. Web WebStruct `yaml:"web"`
  19. GpuNodeList []GpuNode `yaml:"gpu_node_list"`
  20. }
  21. type WebStruct struct {
  22. Port string `yaml:"port"`
  23. RoutePrefix string `yaml:"route-prefix"`
  24. Token string `yaml:"token"`
  25. WhiteList []string `yaml:"white-list"`
  26. }
  27. type GpuNode struct {
  28. Hostname string `yaml:"hostname"`
  29. Ip string `yaml:"ip"`
  30. Parallelism string `yaml:"parallelism"`
  31. }
  32. type RedisStruct struct {
  33. }
  34. var (
  35. //go:embed application.yaml
  36. applicationYamlBytes []byte
  37. ApplicationYaml ApplicationYamlStruct
  38. KubernetesSchedulerConfig = new(entity.KubernetesSchedulerConfigStruct)
  39. )
  40. func init() {
  41. c_log.InitLog("./log/", KubernetesSchedulerConfig.Service.Name)
  42. c_oss.InitOss(false)
  43. }
  44. func main() {
  45. router := gin.Default()
  46. router.Use(commonHandler.ValidateHeaders())
  47. api := router.Group(KubernetesSchedulerConfig.Service.RouterPrefix)
  48. api.POST("/start-project", handler.StartProject)
  49. err := router.Run(":12345")
  50. if err != nil {
  51. c_log.GlobalLogger.Error("程序崩溃,监听端口 " + util.ToString(KubernetesSchedulerConfig.Service.Port) + " 失败。")
  52. os.Exit(-1)
  53. }
  54. }