initialize.go 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. //go:build ee
  2. // +build ee
  3. package ee
  4. import (
  5. controller "github.com/netmakerio/netmaker/controllers"
  6. "github.com/netmakerio/netmaker/ee/ee_controllers"
  7. "github.com/netmakerio/netmaker/logger"
  8. "github.com/netmakerio/netmaker/logic"
  9. "github.com/netmakerio/netmaker/models"
  10. "github.com/netmakerio/netmaker/servercfg"
  11. )
  12. // InitEE - Initialize EE Logic
  13. func InitEE() {
  14. setIsEnterprise()
  15. models.SetLogo(retrieveEELogo())
  16. controller.HttpHandlers = append(controller.HttpHandlers, ee_controllers.MetricHandlers)
  17. logic.EnterpriseCheckFuncs = append(logic.EnterpriseCheckFuncs, func() {
  18. // == License Handling ==
  19. ValidateLicense()
  20. if Limits.FreeTier {
  21. logger.Log(0, "proceeding with Free Tier license")
  22. } else {
  23. logger.Log(0, "proceeding with Paid Tier license")
  24. }
  25. // == End License Handling ==
  26. AddLicenseHooks()
  27. })
  28. }
  29. func setControllerLimits() {
  30. logic.Node_Limit = Limits.Nodes
  31. logic.Users_Limit = Limits.Users
  32. logic.Clients_Limit = Limits.Clients
  33. logic.Free_Tier = Limits.FreeTier
  34. servercfg.Is_EE = true
  35. }
  36. func retrieveEELogo() string {
  37. return `
  38. __ __ ______ ______ __ __ ______ __ __ ______ ______
  39. /\ "-.\ \ /\ ___\ /\__ _\ /\ "-./ \ /\ __ \ /\ \/ / /\ ___\ /\ == \
  40. \ \ \-. \ \ \ __\ \/_/\ \/ \ \ \-./\ \ \ \ __ \ \ \ _"-. \ \ __\ \ \ __<
  41. \ \_\\"\_\ \ \_____\ \ \_\ \ \_\ \ \_\ \ \_\ \_\ \ \_\ \_\ \ \_____\ \ \_\ \_\
  42. \/_/ \/_/ \/_____/ \/_/ \/_/ \/_/ \/_/\/_/ \/_/\/_/ \/_____/ \/_/ /_/
  43. ___ ___ ____
  44. ____ ____ ____ / _ \ / _ \ / __ \ ____ ____ ____
  45. /___/ /___/ /___/ / ___/ / , _// /_/ / /___/ /___/ /___/
  46. /___/ /___/ /___/ /_/ /_/|_| \____/ /___/ /___/ /___/
  47. `
  48. }