Licensing service (#19903)

* Licensing: supplies a service to handle licensing information

* Licensing: uses the license service further

Uses the license service instead of settings.isEnterprise:
- external team members
- saml
- usage stats

* Licensing: fixes broken tests due to new Licensing service dependency

* Licensing: fixes linting errors

* Licensing: exposes license expiry information to the frontend
This commit is contained in:
Leonard Gram
2019-11-01 14:56:12 +01:00
committed by GitHub
parent 0ecc9a57f1
commit 992b4b8adf
12 changed files with 61 additions and 19 deletions
+2
View File
@@ -6,6 +6,7 @@ import (
"github.com/grafana/grafana/pkg/bus"
"github.com/grafana/grafana/pkg/login/social"
"github.com/grafana/grafana/pkg/models"
"github.com/grafana/grafana/pkg/services/sqlstore"
"github.com/grafana/grafana/pkg/infra/log"
@@ -23,6 +24,7 @@ type UsageStatsService struct {
Cfg *setting.Cfg `inject:""`
Bus bus.Bus `inject:""`
SQLStore *sqlstore.SqlStore `inject:""`
License models.Licensing `inject:""`
oauthProviders map[string]bool
}
+3 -3
View File
@@ -32,7 +32,7 @@ func (uss *UsageStatsService) sendUsageStats(oauthProviders map[string]bool) {
"metrics": metrics,
"os": runtime.GOOS,
"arch": runtime.GOARCH,
"edition": getEdition(),
"edition": getEdition(uss.License.HasValidLicense()),
"packaging": setting.Packaging,
}
@@ -182,8 +182,8 @@ func (uss *UsageStatsService) updateTotalStats() {
metrics.StatsTotalActiveAdmins.Set(float64(statsQuery.Result.ActiveAdmins))
}
func getEdition() string {
if setting.IsEnterprise {
func getEdition(validLicense bool) string {
if validLicense {
return "enterprise"
}
return "oss"
+1
View File
@@ -25,6 +25,7 @@ func TestMetrics(t *testing.T) {
uss := &UsageStatsService{
Bus: bus.New(),
SQLStore: sqlstore.InitTestDB(t),
License: models.OSSLicensingService{},
}
var getSystemStatsQuery *models.GetSystemStatsQuery