revamp pro trial invocation

This commit is contained in:
abhishek9686 2024-01-19 19:10:07 +05:30
parent c674929b90
commit 040e700099
3 changed files with 22 additions and 9 deletions

View file

@ -6,6 +6,5 @@ package main
import "github.com/gravitl/netmaker/pro"
func init() {
pro.InitTrial()
pro.InitPro()
}

View file

@ -7,6 +7,7 @@ import (
"time"
controller "github.com/gravitl/netmaker/controllers"
"github.com/gravitl/netmaker/logger"
"github.com/gravitl/netmaker/logic"
"github.com/gravitl/netmaker/models"
"github.com/gravitl/netmaker/mq"
@ -34,16 +35,28 @@ func InitPro() {
logic.EnterpriseCheckFuncs = append(logic.EnterpriseCheckFuncs, func() {
// == License Handling ==
enableLicenseHook := false
trialEndDate, err := getTrialEndDate()
if err != nil {
slog.Error("failed to get trial end date", "error", err)
licenseKeyValue := servercfg.GetLicenseKey()
netmakerTenantID := servercfg.GetNetmakerTenantID()
if licenseKeyValue != "" && netmakerTenantID != "" {
enableLicenseHook = true
}
// check if trial ended
if time.Now().After(trialEndDate) {
// trial ended already
enableLicenseHook = true
if !enableLicenseHook {
err := initTrial()
if err != nil {
logger.FatalLog0("failed to init trail", err.Error())
}
trialEndDate, err := getTrialEndDate()
if err != nil {
slog.Error("failed to get trial end date", "error", err)
enableLicenseHook = true
}
// check if trial ended
if time.Now().After(trialEndDate) {
// trial ended already
enableLicenseHook = true
}
}
if enableLicenseHook {
slog.Info("starting license checker")
ClearLicenseCache()

View file

@ -41,7 +41,7 @@ const trial_table_name = "trial"
const trial_data_key = "trialdata"
// store trial date
func InitTrial() error {
func initTrial() error {
telData, err := logic.FetchTelemetryData()
if err != nil {
return err
@ -52,6 +52,7 @@ func InitTrial() error {
err = database.CreateTable(trial_table_name)
if err != nil {
slog.Error("failed to create table", "table name", trial_table_name, "err", err.Error())
if errors.Is
return err
}
// setup encryption keys