github.com/esnet/gdg@v0.6.1-0.20240412190737-6b6eba9c14d8/cli/support/init_cfg.go (about)

     1  package support
     2  
     3  import (
     4  	"github.com/esnet/gdg/internal/config"
     5  	appconfig "github.com/esnet/gdg/internal/log"
     6  	"github.com/spf13/cobra"
     7  	"os"
     8  )
     9  
    10  // InitConfiguration Loads configuration, and setups fail over case
    11  func InitConfiguration(cmd *cobra.Command) {
    12  	configOverride, _ := cmd.Flags().GetString("config")
    13  	if DefaultConfig == "" {
    14  		raw, err := os.ReadFile("config/importer-example.yml")
    15  		if err == nil {
    16  			DefaultConfig = string(raw)
    17  		} else {
    18  			DefaultConfig = ""
    19  		}
    20  	}
    21  
    22  	//Registers sub CommandsList
    23  	config.InitGdgConfig(configOverride, DefaultConfig)
    24  	appconfig.InitializeAppLogger(os.Stdout, os.Stderr, config.Config().IsDebug())
    25  
    26  	//Validate current configuration
    27  	config.Config().GetDefaultGrafanaConfig().Validate()
    28  
    29  }