//go:build ee // +build ee package loader import ( eeBilling "github.com/porter-dev/porter/ee/billing" "github.com/porter-dev/porter/ee/models" "github.com/porter-dev/porter/internal/billing" ) func init() { sharedInit() InstanceDB.AutoMigrate( &models.ProjectBilling{}, &models.UserBilling{}, ) var key [32]byte for i, b := range []byte(InstanceEnvConf.DBConf.EncryptionKey) { key[i] = b } if InstanceEnvConf.ServerConf.BillingPrivateServerURL != "" && InstanceEnvConf.ServerConf.BillingPrivateKey != "" && InstanceEnvConf.ServerConf.BillingPublicServerURL != "" { serverURL := InstanceEnvConf.ServerConf.BillingPrivateServerURL publicServerURL := InstanceEnvConf.ServerConf.BillingPublicServerURL apiKey := InstanceEnvConf.ServerConf.BillingPrivateKey var err error InstanceBillingManager, err = eeBilling.NewClient(serverURL, publicServerURL, apiKey) if err != nil { panic(err) } } else { InstanceBillingManager = &billing.NoopBillingManager{} } }