mirror of
https://github.com/grafana/grafana.git
synced 2025-01-27 16:57:14 -06:00
parent
0ea3458f69
commit
7a913f77d3
@ -8,39 +8,11 @@ import (
|
|||||||
"github.com/codegangsta/cli"
|
"github.com/codegangsta/cli"
|
||||||
"github.com/grafana/grafana/pkg/cmd/grafana-cli/commands"
|
"github.com/grafana/grafana/pkg/cmd/grafana-cli/commands"
|
||||||
"github.com/grafana/grafana/pkg/cmd/grafana-cli/logger"
|
"github.com/grafana/grafana/pkg/cmd/grafana-cli/logger"
|
||||||
|
"github.com/grafana/grafana/pkg/cmd/grafana-cli/utils"
|
||||||
)
|
)
|
||||||
|
|
||||||
var version = "master"
|
var version = "master"
|
||||||
|
|
||||||
func getGrafanaPluginDir() string {
|
|
||||||
currentOS := runtime.GOOS
|
|
||||||
defaultNix := "/var/lib/grafana/plugins"
|
|
||||||
|
|
||||||
if currentOS == "windows" {
|
|
||||||
return "../data/plugins"
|
|
||||||
}
|
|
||||||
|
|
||||||
pwd, err := os.Getwd()
|
|
||||||
|
|
||||||
if err != nil {
|
|
||||||
logger.Error("Could not get current path. using default")
|
|
||||||
return defaultNix
|
|
||||||
}
|
|
||||||
|
|
||||||
if isDevenvironment(pwd) {
|
|
||||||
return "../data/plugins"
|
|
||||||
}
|
|
||||||
|
|
||||||
return defaultNix
|
|
||||||
}
|
|
||||||
|
|
||||||
func isDevenvironment(pwd string) bool {
|
|
||||||
// if ../conf/defaults.ini exists, grafana is not installed as package
|
|
||||||
// that its in development environment.
|
|
||||||
_, err := os.Stat("../conf/defaults.ini")
|
|
||||||
return err == nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
setupLogging()
|
setupLogging()
|
||||||
|
|
||||||
@ -54,7 +26,7 @@ func main() {
|
|||||||
cli.StringFlag{
|
cli.StringFlag{
|
||||||
Name: "pluginsDir",
|
Name: "pluginsDir",
|
||||||
Usage: "path to the grafana plugin directory",
|
Usage: "path to the grafana plugin directory",
|
||||||
Value: getGrafanaPluginDir(),
|
Value: utils.GetGrafanaPluginDir(runtime.GOOS),
|
||||||
EnvVar: "GF_PLUGIN_DIR",
|
EnvVar: "GF_PLUGIN_DIR",
|
||||||
},
|
},
|
||||||
cli.StringFlag{
|
cli.StringFlag{
|
||||||
|
46
pkg/cmd/grafana-cli/utils/grafana_path.go
Normal file
46
pkg/cmd/grafana-cli/utils/grafana_path.go
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
package utils
|
||||||
|
|
||||||
|
import (
|
||||||
|
"os"
|
||||||
|
|
||||||
|
"github.com/grafana/grafana/pkg/cmd/grafana-cli/logger"
|
||||||
|
)
|
||||||
|
|
||||||
|
func GetGrafanaPluginDir(currentOS string) string {
|
||||||
|
//currentOS := runtime.GOOS
|
||||||
|
|
||||||
|
if currentOS == "windows" {
|
||||||
|
return returnOsDefault(currentOS)
|
||||||
|
}
|
||||||
|
|
||||||
|
pwd, err := os.Getwd()
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
logger.Error("Could not get current path. using default")
|
||||||
|
return returnOsDefault(currentOS)
|
||||||
|
}
|
||||||
|
|
||||||
|
if isDevenvironment(pwd) {
|
||||||
|
return "../data/plugins"
|
||||||
|
}
|
||||||
|
|
||||||
|
return returnOsDefault(currentOS)
|
||||||
|
}
|
||||||
|
|
||||||
|
func isDevenvironment(pwd string) bool {
|
||||||
|
// if ../conf/defaults.ini exists, grafana is not installed as package
|
||||||
|
// that its in development environment.
|
||||||
|
_, err := os.Stat("../conf/defaults.ini")
|
||||||
|
return err == nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func returnOsDefault(currentOs string) string {
|
||||||
|
switch currentOs {
|
||||||
|
case "windows":
|
||||||
|
return "../data/plugins"
|
||||||
|
case "darwin":
|
||||||
|
return "/usr/local/var/lib/grafana/plugins"
|
||||||
|
default: //"linux"
|
||||||
|
return "/var/lib/grafana/plugins"
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user