remove grafana specific config from package (#44866)

This commit is contained in:
Will Browne 2022-02-04 18:14:53 +01:00 committed by GitHub
parent 5c87044aa2
commit 126ed461b1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 17 additions and 12 deletions

View File

@ -2,6 +2,7 @@ package api
import (
"fmt"
"path"
"sort"
"strings"
@ -80,7 +81,7 @@ func (hs *HTTPServer) getAppLinks(c *models.ReqContext) ([]*dtos.NavLink, error)
appLink := &dtos.NavLink{
Text: plugin.Name,
Id: "plugin-page-" + plugin.ID,
Url: plugin.DefaultNavURL,
Url: path.Join(hs.Cfg.AppSubURL, plugin.DefaultNavURL),
Img: plugin.Info.Logos.Small,
SortWeight: dtos.WeightPlugin,
}

View File

@ -10,6 +10,7 @@ import (
"net/http"
"net/url"
"os"
"path"
"path/filepath"
"sort"
"strings"
@ -73,7 +74,7 @@ func (hs *HTTPServer) GetPluginList(c *models.ReqContext) response.Response {
Category: pluginDef.Category,
Info: pluginDef.Info,
Dependencies: pluginDef.Dependencies,
DefaultNavUrl: pluginDef.DefaultNavURL,
DefaultNavUrl: path.Join(hs.Cfg.AppSubURL, pluginDef.DefaultNavURL),
State: pluginDef.State,
Signature: pluginDef.Signature,
SignatureType: pluginDef.SignatureType,
@ -129,7 +130,7 @@ func (hs *HTTPServer) GetPluginSettingByID(c *models.ReqContext) response.Respon
Includes: plugin.Includes,
BaseUrl: plugin.BaseURL,
Module: plugin.Module,
DefaultNavUrl: plugin.DefaultNavURL,
DefaultNavUrl: path.Join(hs.Cfg.AppSubURL, plugin.DefaultNavURL),
State: plugin.State,
Signature: plugin.Signature,
SignatureType: plugin.SignatureType,

View File

@ -24,7 +24,6 @@ type Cfg struct {
CheckForUpdates bool
BuildVersion string // TODO Remove
AppSubURL string // TODO Remove
}
func NewCfg() *Cfg {
@ -51,7 +50,6 @@ func FromGrafanaCfg(grafanaCfg *setting.Cfg) *Cfg {
cfg.CheckForUpdates = grafanaCfg.CheckForUpdates
cfg.BuildVersion = grafanaCfg.BuildVersion
cfg.AppSubURL = grafanaCfg.AppSubURL
return cfg
}

View File

@ -161,7 +161,7 @@ func (l *Loader) loadPlugins(ctx context.Context, class plugins.Class, pluginJSO
}
if plugin.IsApp() {
setDefaultNavURL(plugin, l.cfg.AppSubURL)
setDefaultNavURL(plugin)
}
if plugin.Parent != nil && plugin.Parent.IsApp() {
@ -255,17 +255,22 @@ func setImages(p *plugins.Plugin) {
}
}
func setDefaultNavURL(p *plugins.Plugin, appSubURL string) {
func setDefaultNavURL(p *plugins.Plugin) {
// slugify pages
for _, include := range p.Includes {
if include.Slug == "" {
include.Slug = slug.Make(include.Name)
}
if include.Type == "page" && include.DefaultNav {
p.DefaultNavURL = appSubURL + "/plugins/" + p.ID + "/page/" + include.Slug
if !include.DefaultNav {
continue
}
if include.Type == "dashboard" && include.DefaultNav {
p.DefaultNavURL = appSubURL + "/dashboard/db/" + include.Slug
if include.Type == "page" {
p.DefaultNavURL = path.Join("/plugins/", p.ID, "/page/", include.Slug)
}
if include.Type == "dashboard" {
p.DefaultNavURL = path.Join("/dashboard/db/", include.Slug)
}
}
}

View File

@ -72,7 +72,7 @@ func (p PluginDTO) SupportsStreaming() bool {
}
func (p PluginDTO) IsApp() bool {
return p.Type == "app"
return p.Type == App
}
func (p PluginDTO) IsCorePlugin() bool {