feat: pass gcom sso_api_token to repo created from install command (#98973)
* feat: pass gcom sso_api_token to repo created from install command * fix * fix: extract gcom section to a func * Update pkg/cmd/grafana-cli/utils/command_line.go Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com> * fix: only set gcom token when the request is to GCOM --------- Co-authored-by: Giuseppe Guerra <giuseppe.guerra@grafana.com>
This commit is contained in:
@@ -26,6 +26,7 @@ type CommandLine interface {
|
||||
PluginDirectory() string
|
||||
PluginRepoURL() string
|
||||
PluginURL() string
|
||||
GcomToken() string
|
||||
}
|
||||
|
||||
type ApiClient interface {
|
||||
@@ -75,12 +76,7 @@ func (c *ContextCommandLine) PluginRepoURL() string {
|
||||
|
||||
// if --config flag is set, try to get the GrafanaComAPIURL setting
|
||||
if c.ConfigFile() != "" {
|
||||
configOptions := strings.Split(c.String("configOverrides"), " ")
|
||||
cfg, err := setting.NewCfgFromArgs(setting.CommandLineArgs{
|
||||
Config: c.ConfigFile(),
|
||||
HomePath: c.HomePath(),
|
||||
Args: append(configOptions, c.Args().Slice()...),
|
||||
})
|
||||
cfg, err := c.Config()
|
||||
|
||||
if err != nil {
|
||||
logger.Debug("Could not parse config file", err)
|
||||
@@ -92,6 +88,25 @@ func (c *ContextCommandLine) PluginRepoURL() string {
|
||||
return c.String("repo")
|
||||
}
|
||||
|
||||
func (c *ContextCommandLine) Config() (*setting.Cfg, error) {
|
||||
configOptions := strings.Split(c.String("configOverrides"), " ")
|
||||
return setting.NewCfgFromArgs(setting.CommandLineArgs{
|
||||
Config: c.ConfigFile(),
|
||||
HomePath: c.HomePath(),
|
||||
Args: append(configOptions, c.Args().Slice()...),
|
||||
})
|
||||
}
|
||||
|
||||
func (c *ContextCommandLine) GcomToken() string {
|
||||
cfg, err := c.Config()
|
||||
|
||||
if err != nil {
|
||||
logger.Debug("Could not parse config file", err)
|
||||
return ""
|
||||
}
|
||||
return cfg.GrafanaComSSOAPIToken
|
||||
}
|
||||
|
||||
func (c *ContextCommandLine) PluginURL() string {
|
||||
return c.String("pluginUrl")
|
||||
}
|
||||
|
||||
@@ -146,6 +146,19 @@ func (_m *MockCommandLine) PluginURL() string {
|
||||
return r0
|
||||
}
|
||||
|
||||
func (_m *MockCommandLine) GcomToken() string {
|
||||
ret := _m.Called()
|
||||
|
||||
var r0 string
|
||||
if rf, ok := ret.Get(0).(func() string); ok {
|
||||
r0 = rf()
|
||||
} else {
|
||||
r0 = ret.Get(0).(string)
|
||||
}
|
||||
|
||||
return r0
|
||||
}
|
||||
|
||||
// ShowHelp provides a mock function with given fields:
|
||||
func (_m *MockCommandLine) ShowHelp() error {
|
||||
ret := _m.Called()
|
||||
|
||||
Reference in New Issue
Block a user